Amazon DynamoDB 테이블에 적합한 프라이머리 키를 선택하려면 어떻게 해야 합니까?

2분 분량
0

Amazon DynamoDB 테이블의 프라이머리 키를 선택할 때 고려해야 할 사항을 알고 싶습니다.

간략한 설명

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

  • 파티션 키: 간단한 기본 키입니다. 테이블에 파티션 키만 있는 경우 두 항목의 파티션 키 값은 동일할 수 없습니다.
  • 복합 기본 키: 파티션 키와 정렬 키의 조합입니다. 테이블에 복합 기본 키가 있는 경우 두 항목의 파티션 키 값은 동일할 수 있습니다. 그러나 이러한 항목의 정렬 키 값은 서로 달라야 합니다.

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

해결 방법

프라이머리 키를 선택할 때 다음 전략 중 하나 이상을 사용합니다.

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

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


관련 정보

효과적으로 파티션 키를 설계하고 사용하기 위한 모범 사례

Amazon DynamoDB 테이블이 제한되는 이유는 무엇입니까?

AWS 공식
AWS 공식업데이트됨 2년 전