더북(TheBook)

지금까지 내용을 중간 정리하면 다음과 같습니다.

• 클라이언트는 여러 서버 중 하나를 무작위로 골라서 로그온 요청을 합니다.

• 서버는 로그온 요청을 받으면 입력받은 ID를 해시 함수에 넣어서 샤드 인덱스를 구합니다.

• 서버는 해당하는 데이터베이스 샤드에 질의를 던져서 나머지를 실행합니다.

p412

▲ 그림 10-8 해시 함수를 이용하여 샤드 액세스

 

이렇게 하면 수평 확장이 완성됩니다. 이렇게 만든 서버를 운영하다 더 많은 서버가 필요할 때가 생길 것입니다. 이때는 인증 서버와 데이터베이스 샤드 개수를 늘립시다.

Note 샤드 키

사용자 ID 내용을 해시 함수에 넣은 후 샤드 인덱스를 얻었습니다. 어떤 키로 레코드를 찾는데, 그 레코드를 찾기 전에 그것이 어느 데이터베이스 샤드에 있는지 먼저 알아내려는 목적으로 사용되는 키를 샤드 키(shard key) 혹은 파티션 키(partition key)라고 합니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.