J'ai écrit du code python, je souhaite interroger les données dynamoDB par clé de tri. Je me souviens que je peux utiliser le code de suivi avec succès:
table.query(KeyConditionExpression=Key('event_status').eq(event_status))
Ma colonne de structure de table
primary key:event_id
sort key: event_status
Vous devez créer un index secondaire pour la clé de tri afin d'interroger sur elle seule.
L'API d'analyse doit être utilisée si vous souhaitez obtenir des données de DynamoDB sans utiliser la valeur d'attribut Hash Key.
Exemple: -
fe = Attr('event_status').eq("new");
response = table.scan(
FilterExpression=fe
)
for i in response['Items']:
print(json.dumps(i, cls=DecimalEncoder))
while 'LastEvaluatedKey' in response:
response = table.scan(
FilterExpression=fe,
ExclusiveStartKey=response['LastEvaluatedKey']
)
for i in response['Items']:
print(json.dumps(i, cls=DecimalEncoder))