DynamoDB 테이블에 적합한 기본 키를 선택하려면 어떻게 해야 합니까?

최종 업데이트 날짜: 2020년 5월 22일

Amazon DynamoDB 테이블에 기본 키를 선택할 때 고려해야 할 사항은 무엇입니까?

간략한 설명

DynamoDB에는 다음 두 가지 유형의 기본 키가 있습니다.

  • 파티션 키: 테이블의 각 항목에 고유한 단순 기본 키입니다.
  • 복합 기본 키: 테이블의 각 항목에 고유한 파티션 키와 정렬 키의 조합입니다. 예를 들어, 두 항목은 동일한 파티션 키를 가질 수 있지만 항상 다른 정렬 키를 갖습니다.

어떤 유형의 기본 키를 선택하든 상관없이, 기본 키는 항상 테이블의 각 항목에 고유해야 합니다. 적절한 기본 키를 선택하지 않으면 데이터 배포 및 핫 키가 고르지 않을 수 있으며, 이로 인해 조절(ProvisionedThroughputExceededException)이 발생할 수 있습니다.

​해결 방법

기본 키를 선택할 때 다음 전략 중 하나 이상을 사용합니다.

  • 카디널리티가 높은 속성 사용: 파티션 키는 사용자 ID, 이메일 또는 전화번호와 같은 각 항목에 고유한 값을 갖는 속성이어야 합니다.
  • 복합 속성 사용: 여러 속성을 결합하여 기본 키를 형성합니다. 예를 들어, 파티션 키에 대해 고객 ID, 제품 ID 및 국가 코드를 결합한 “주문” 테이블을 갖고 난 다음, 정렬 키로서 주문 날짜를 사용합니다. 이렇게 하면 각 항목에 고유한 기본 키가 있을 가능성이 높아집니다.
  • 파티션 키에 난수 추가: 쓰기가 매우 많은 사용 사례의 경우, 미리 결정된 범위의 난수를 파티션 키에 추가하는 것을 고려합니다. 이렇게 하면 파티션 키의 임의성이 증가합니다. 자세한 내용은 쓰기 샤딩을 사용하여 워크로드를 균등하게 배포를 참조하십시오.

이러한 각 전략에 대한 자세한 내용은 적합한 DynamoDB 파티션 키 선택을 참조하십시오.


이 문서가 도움이 되었습니까?

AWS에서 개선해야 할 부분이 있습니까?


도움이 필요하십니까?