고유 ID를 가진 많은 개체가 있습니다. 모든 개체는 다음과 같이, 그것에 관련된 여러 레이블을 가질 수 있습니다 내가 DynamoDB의 모든 개체, 라벨의이 세트를 저장하기 위해 계획하고 있지 않다dynamodb 문자열 집합 만들기
123: ['a', 'hello']
456: ['dsajdaskldjs']
789: (no labels associated yet)
. 그래서 그런 식으로 레이블을 추가하는 것이 할 것 :
- 이 (ID = needed_id)
- 가 하나이며, 그것은
label_set
라는 집합이 설정에 레이블을 추가있는 경우와 기록을 찾을 수
- 같은 ID를 가진 레코드 또는, 속성이
label_set
라는 이름이 기록과 속성을 만들고, 내가 사용하는 경우 라벨
로 구성된 세트 속성을 초기화하지 않는 기존 레코드가없는 경우 숫자 집합, 그냥사용할 수 있습니다. UPDATE
명령의3210 조작 이 명령은 내가 설명한 것과 똑같습니다. 그러나,이 문자열의 집합 작동하지 않습니다 : 어떤 항목은 지정된 기본 키와 일치하지
경우
추가 -는 속성 값에 대한 공급 기본 키 및 번호 (또는 숫자의 집합)에 항목을 작성합니다. 문자열 유형에는 유효하지 않습니다.
는 그래서 {"label_set":{"Exists":false}}
에 Expected
세트와 PUT
동작을 사용할 필요가, ADD
조작에 의해 (경우에 실패)를 하였다. 이것들은 두 가지 작업이며 다소 끔찍합니다 (작업 당 비용을 지불하기 때문에 비용이 2 배가됩니다).
이 제한 사항은 나에게 정말로 이상하게 보입니다. 숫자 집합과 함께 작동하는 무언가가 문자열 집합과 함께 작동하지 않는 이유는 무엇입니까? 어쩌면 내가 뭔가 잘못하고있는 것 같아. 대신 세트와 객체 당 하나 개의 기록 (123, 'a'), (123, 'hello')
같은
사용하여 많은 레코드가 아닌 솔루션입니다 : 내가 어떤 스캔하지 않고 한 번에 세트에서 get
모든 값을합니다.