그래서 주 파티션 키 열 foo_id
및 기본 정렬 키가있는 dynamodb 테이블이 있습니다. 나는 foo_id
값 목록을 가지고 있으며,이 ID 목록과 관련된 관찰을 원합니다.기본 파티션 키 값의 목록이 주어진 경우 많은 항목을 한 번에 batch_get_item하는 방법
이 작업을 수행하는 가장 좋은 방법은 (?) batch_get_item()
을 사용하는 것으로 생각했지만 효과가 없습니다.
# python code
import boto3
client = boto3.client('dynamodb')
# ppk_values = list of `foo_id` values (strings) (< 100 in this example)
x = client.batch_get_item(
RequestItems={
'my_table_name':
{'Keys': [{'foo_id': {'SS': [id for id in ppk_values]}}]}
})
내가 (foo_id
값 목록) 문자열 목록을 전달 해요 때문에 나는 SS
을 사용하고 있습니다,하지만 난 받고 있어요 :
ClientError: An error occurred (ValidationException) when calling the
BatchGetItem operation: The provided key element does not match the
schema
그래서 나는 그것을
foo_id
에 포함 된 생각을 의미 가정 문자열 값 대신 값을 나열합니다. 이는 잘못되었습니다.
-> 그 해석이 맞습니까? 여러 주 파티션 키 값을 일괄 적으로 쿼리하는 가장 좋은 방법은 무엇입니까?
위의 대답은 방법 batch_get_item은 클라이언트에없는 자원에 존재하는 우리가, dynamodb.meta.client.batch_get_item하는 dynamodb.batch_get_item을 변경 한 후에 만 작동합니다. –