DynamoDB unterstützt query, mit dem Sie Daten von einer und nur einer Partition (d. H. Einen Partitionsschlüssel) abrufen können, oder scan, die jedes Element in der Tabelle zurückgibt (d. H. Einen vollständigen Tabellenscan).
Wenn Sie die zu abfragenden Partitionsschlüssel kennen, können Sie mehrere Abfragen schneller ausführen und Ihre Ergebnismenge kombinieren. Wenn Ihnen die Leistung egal ist oder Sie mit der Geschwindigkeit zufrieden sind (wenn Sie bedenken, dass ein Scan schlecht skaliert wird, wenn Ihr Tisch wächst), können Sie einen Scan verwenden.
Beachten Sie, dass Sie oben einen Scan durchführen und daher Ihren Partitionsschlüssel nicht als Index verwenden.
würde eine Abfrage wie folgt sein:
DynamoDB
.table('bc_customer')
.where('email').eq('[email protected]')
.query(function(err, data) {
console.log(err,data)
})
Und einen Scan (ich glaube - die awspilot documents nicht ganz klar sind) so etwas wie sein sollte:
DynamoDB
.table('bc_customer')
.having('email').eq('[email protected]')
.having('someattribute').eq('something')
.scan(function(err, data) {
console.log(err, data)
})