2017-04-25 2 views
0

mongodb에서 dynamodb로 데이터베이스를 마이 그 레이션하고, 특히 2 차 로컬 인덱스와 정렬 키를 사용하여 베스트 프랙티스를 이해하려고합니다.DynamoDB에서 보조 색인 또는 별도의 ID 찾아보기 테이블을 사용해야합니까?

내 응용 프로그램은 웹에서 html 데이터를 가져 와서 데이터를 여러 테이블/컬렉션에로드합니다. 압축을 풀 때 각 항목에 extracted_id이라는 고유 한 정보를 제공합니다. 항목을로드하기 전에 각 항목에 주/파티션 키로 UUID를 제공합니다. 엔티티가 기존 entity_uuid이 있는지 확인하기 위해 I가 DB를 조회 동일한 extracted_id 상이한 UUID를 할당 피하기 위해 :

문제.

현재 해결책 : 현재 mongodb에는 두 세트의 테이블/모음이 있습니다. 하나는 모든 항목을 저장하기위한 것이고 다른 하나는 엔티티의 extracted_id(키) 저장 용입니다./entity_uuid(값) 조회 테이블.

더 나은 해결책? 나는 그것이 단지에 더 나은 중복 데이터를 저장하지 않는 등, 로컬 보조 인덱스로 extracted_id 하나의 데이터베이스를 생성 할 DynamoDB의 이동으로? 나는 문서가 use indexes sparingly.라고 말하면서 확신 할 수 없다. 특정 사이트에 uuid과 함께 아이템을 제공하는 것 이외에는 extracted_id을 사용하지 않는다.

AWS/DynamoDB를 처음 접해 보았 기 때문에 언급 한 내용에 대한 팁이나 더 나은 솔루션을 제공 할 수 있기를 바랍니다.

답변

0

extracted_id을 새 DynamoDB 테이블의 파티션 키로 만들고 조건 표현식 attribute_not_exists(extracted_id)을 사용하여 응용 프로그램이 중복 항목을 쓰는 것을 방지해야하는 이유는 무엇입니까?

관련 문제