9.13 데이터베이스의 분산
게임 서버가 분산 처리되어 있다고 하더라도 데이터베이스를 분산 처리하지 않으면 결국 서비스 가용성은 떨어집니다. 더 많은 사용자를 처리하고자 데이터베이스가 수평 확장을 할 때는 갖고 있는 레코드를 서로 다른 데이터베이스에 나누어 놓습니다. 이를 파티셔닝이라고 합니다.
▲ 그림 9-29 데이터베이스의 수평 파티셔닝
한편 여러 테이블 각각을 다른 데이터베이스 서버 기기에 분배하기도 합니다. 한 테이블을 수직으로 잘라서, 즉 레코드 일부 필드를 다른 테이블로 나누어 놓고 그것을 다른 데이터베이스 서버에 두기도 합니다. 이것을 수직 파티셔닝이라고 합니다.
▲ 그림 9-30 데이터베이스의 수직 파티셔닝
Tip
데이터베이스 분산 처리는 10장에서 자세히 설명합니다.