2012-06-07 5 views
2

저는 최근 Amazon에서 제공하는 새로운 NoSQL 서비스, 특히 DynamoDB를 검토하고 있습니다.DynamoDB : 해시 키는 어떻게 사용됩니까?

Amazon에서는 불균일하게 분산 된 키를 기본 키로 사용하지 말아야한다고합니다. 즉 기본 키가 더 고유해야합니다. 모든 항목에 고유 한 기본 키를 갖는 것이 가장 좋은 경우로 볼 수 있습니까? 중복 된 키가있는 항목이 있습니까?

기본 메커니즘이 어떻게 작동하는지 알고 싶습니다. 얼마나 나쁘다는 것을 알고 있습니다.

답변

4

테이블은 해시 키를 기반으로 여러 컴퓨터로 분할되므로 더 무작위가 좋습니다. 내 애플 리케이션에서 해시에 대한 company_id 다음 범위에 대한 고유 ID를 사용하여 내 테이블을 합리적으로 균등하게 배포 할 수 있습니다.

대다수의 데이터에 대해 동일한 해시 키를 사용하면 더 많은 데이터가 무작위로 반출되므로 Dynamo가 데이터를 신속하게 다시받을 수 있습니다.

+0

답장을 보내 주셔서 감사합니다. 그러나 완전히 무작위화된 값 대신에 단조롭게 증가하는 정수를 사용한다면 어떻게 될까요? –

+1

완벽하게 작동합니다. 나는 일반적으로 구현하기가 더 쉬운 사실만을 위해 무작위로 생성 된 UUID를 사용합니다. – greg

+0

해시는 논리적으로 그룹화하여 쿼리 속도를 높이는 데 사용할 수도 있습니다. –

관련 문제