2017-12-21 3 views
1

DynamoDB에서 이미 생성 된 행이 20 억 개에 가까운 테이블이 있습니다.오랜 시간이 걸리는 GSI 생성

쿼리 요구 사항으로 인해 글로벌 보조 인덱스 (GSI)를 만들어야했습니다. GSI 생성 프로세스는 36 시간 전에 시작되었지만 아직 완성되지 않았습니다. 포털에서는 항목 수를 약 1 억 개로 표시합니다. 그렇게 먼길.

질문 : 충분한 WCU 및 RCU는 (사실 30K) alotted 을 때

  1. 이 왜 그런 시간이 오래 걸릴 않습니다.
  2. GSI 파티션 키 사용 된 값은 반복적 인 값입니다. GSI 생성에 시간이 더 걸리는 이유가 될 수 있습니다. (이상적인 시나리오는 여러 항목에 걸쳐 반복되는 항목에 대해 반복하지 않는 파티션 키를 선택하는 것입니다. 파티션).
  3. 프로세스가 실행되는 동안 GSI 생성을 중단하는 방법이 있습니까? 그것은 AWS 콘솔을 통해 허용하지 않습니다.

감사합니다.

+0

CloudWatch 메트릭을 사용하여 GSI 생성을 모니터링하십시오 : OnlineIndexPercentageProgress. 더 많은 정보는 여기에 있습니다 : https://www.abhayachauhan.com/2017/12/dynamodb-global-secondary-indexes –

답변

0

GSI에는 자체 WCU와 RCU가 있으며 기본 색인과 구별됩니다. GSI에 충분한 WCU가 없기 때문에 이것이 가능합니까?

은 글로벌 보조 인덱스는 생성하는 데 시간이 너무 오래 걸리는 경우 (공통 기존의 대형 테이블에 인덱스를 추가 할 때) 할 수 있습니다 다음 단계에 따라 제공 추가 쓰기 용량 :

엽니 다 DynamoDB의 콘솔을 .

탐색 창에서 테이블, 을 선택한 다음 목록에서 테이블을 선택하십시오.

색인 탭을 선택하십시오.

색인의 쓰기 용량을 늘린 다음 저장을 선택하십시오.

는 분에 대한 후, 글로벌 보조 인덱스 의 생성이 만족스럽게 진행되고 있는지 메트릭 탭에서 OnlineIndexPercentageProgress 메트릭을 선택합니다.

편집 : 위의 AWS Knowledge Center

'OnlineIndexPercentageProgress'지침에서 : 글로벌 보조 인덱스의

창조가 시작됩니다. 메트릭 탭에서 진행률을 으로 모니터 할 수 있습니다.

메트릭 탭을 선택하십시오.

모든 CloudWatch 측정 항목보기를 선택하십시오.

CloudWatch 콘솔에서 DynamoDB를 선택하십시오. 검색 메트릭 상자에 OnlineIndexPercentageProgress를 입력합니다. 참고 : 검색 결과 빈 목록이 반환되면 메트릭이 채워지는데 약 1 분 정도 기다리십시오.

진행률을 보려면 색인의 이름을 선택하십시오.

+0

나는 테이블 전체에 GSI와 WCU와 RCU를 알렸다. –

+0

GSI에는 몇 개의 WCU가 있습니까? – Stu

+0

GSI (30,000 WCU 및 RCU)의 경우. 테이블 (20,000 WCU 및 RCU)의 경우 –

관련 문제