쿠키 기본 설정 선택

당사는 사이트와 서비스를 제공하는 데 필요한 필수 쿠키 및 유사한 도구를 사용합니다. 고객이 사이트를 어떻게 사용하는지 파악하고 개선할 수 있도록 성능 쿠키를 사용해 익명의 통계를 수집합니다. 필수 쿠키는 비활성화할 수 없지만 '사용자 지정' 또는 ‘거부’를 클릭하여 성능 쿠키를 거부할 수 있습니다.

사용자가 동의하는 경우 AWS와 승인된 제3자도 쿠키를 사용하여 유용한 사이트 기능을 제공하고, 사용자의 기본 설정을 기억하고, 관련 광고를 비롯한 관련 콘텐츠를 표시합니다. 필수가 아닌 모든 쿠키를 수락하거나 거부하려면 ‘수락’ 또는 ‘거부’를 클릭하세요. 더 자세한 내용을 선택하려면 ‘사용자 정의’를 클릭하세요.

쓰기 샤딩을 사용해 DynamoDB 테이블에 워크로드를 고르게 배포

포커스 모드
쓰기 샤딩을 사용해 DynamoDB 테이블에 워크로드를 고르게 배포 - Amazon DynamoDB

Amazon DynamoDB의 파티션 키 공간에 더 효과적으로 쓰기 작업을 배포하는 방법 중 하나는 공간 확장입니다. 여러 방법을 사용할 수 있습니다. 파티션 키 값에 난수를 추가하여 여러 파티션으로 항목을 배포할 수 있습니다. 또는 쿼리하는 항목을 기반으로 계산된 숫자를 사용할 수 있습니다.

임의의 접미사를 사용하는 샤딩

여러 파티션 키 공간에 로드를 더 골고루 배포할 수 있는 전략 중 하나는 파티션 키 값 끝에 난수(임의의 수)를 추가하는 것입니다. 그러면 더 큰 공간으로 쓰기를 무작위화 할 수 있습니다.

예를 들어, 오늘 날짜를 나타내는 파티션 키의 경우, 1부터 200 사이의 난수를 선택하고, 날짜의 접미사로 연결시킬 수 있습니다. 이는 2014-07-09.1, 2014-07-09.2에서 2014-07-09.200까지의 파티션 키 값을 생성합니다. 파티션 키를 임의 지정했기 때문에, 각 날짜의 테이블에 대한 쓰기가 모든 파티션 키 값에 고르게 분산됩니다. 이는 병렬 처리를 개선하고 전반적인 처리량을 높입니다.

하지만 지정된 날짜의 모든 항목을 읽으려면, 모든 접미사의 항목을 쿼리해 결과를 병합해야 합니다. 예를 들어 먼저 파티션 키 값 2014-07-09.1에 대한 Query 요청을 생성합니다. 그런 다음 2014-07-09.2에서 2014-07-09.200까지에 대해 또 다른 Query 요청을 생성합니다. 마지막으로 애플리케이션은 모든 Query 요청 결과를 병합해야 합니다.

계산한 접미사를 사용하는 샤딩

임의 지정 전략으로 쓰기 처리량을 크게 향상시킬 수 있습니다. 그러나 특정 항목을 쓸 때 어떤 접미사 값이 사용되었는지 모르기 때문에 해당 항목을 읽기 어렵습니다. 개별 항목을 더 쉽게 읽을 수 있도록 만들려면 다른 전략을 사용합니다. 난수(임의의 수)를 사용해 여러 파티션으로 항목을 배포하는 대신, 쿼리하고 싶은 내용을 토대로 계산할 수 있는 수를 사용합니다.

테이블의 파티션 키에 오늘 날짜를 사용한 앞의 예를 가정하겠습니다. 이제 각 항목에 액세스가 가능한 OrderId 속성이 있고, 날짜에 더해 주문 ID로 항목을 찾아야 하는 경우가 많다고 가정하겠습니다. 애플리케이션이 테이블에 항목을 쓰기 전에 주문 ID를 기준으로 해시 접미사를 계산하고 파티션 키 날짜에 추가할 수 있습니다. 계산 결과 임의 지정 전략에서 생산되는 결과와 유사하게 골고루 배포된 1-200 사이의 숫자가 생성될 것입니다.

주문 ID의 문자에 대한 UTF-8 코드 포인트 값의 제품이나 모듈로 200 + 1과 같이 간단한 계산으로 충분합니다. 파티션 키 값은 계산 결과와 연결된 날짜가 됩니다.

이러한 전략을 통해 쓰기가 파티션-키 값 및 물리적 파티션에 고르게 분산됩니다. 특정 항목과 날짜에서 GetItem 작업을 손쉽게 수행할 수 있습니다. 특정 OrderId 값에 대한 파티션-키 값을 계산할 수 있기 때문입니다.

지정된 날의 모든 항목을 읽으려면 각 2014-07-09.N(여기서 N은 1~200) 키를 Query해야 하며, 애플리케이션은 모든 결과를 병합해야 합니다. 장점은 모든 워크로드를 취하는 하나의 '핫' 파티션 키 값이 발생하지 않도록 만든다는 것입니다.

참고

볼륨이 많은 시계열 데이터를 더 효율적으로 처리할 수 있는 전략에 대한 자세한 내용은 시계열 데이터 섹션을 참조하세요.

이 페이지에서

프라이버시사이트 이용 약관쿠키 기본 설정
© 2025, Amazon Web Services, Inc. 또는 계열사. All rights reserved.