3

DynamoDB スキャンに問題があります。putItemメソッドを使用してテーブルに新しい項目を追加しました。

[[AmazonClientManager ddb] putItem:request];

しかし、スキャンメソッドを使用してスキャンを使用して取得しようとすると、そのアイテムは結果に含まれません。

DynamoDBScanResponse *response = [[AmazonClientManager ddb] scan:request];

私は以下の応答を得ています、

{Items: ( ),Count: 0,ScannedCount: 608,LastEvaluatedKey: {HashKeyElement: {S: U2575220130319062347000,N: (null),SS: ( ),NS: ( ),},RangeKeyElement: (null),}, ConsumedCapacityUnits: 129,{requestId: 3GVT8PJGV4VB45IUPUA6KIN9URVV4KQNSO5AEMVJF66Q9ASUAAJG}}

しかし、AWS コンソールを使用して確認したところ、これらの項目はテーブルに表示されています。誰が私に何が問題なのか教えてもらえますか?

ありがとう。

4

3 に答える 3

9

Scan API は結果整合性です。結果整合性読み取りでは、最新の変更が返されない場合があります。わずかな遅延があります (数秒以内)。

クエリ API では、一貫したオプションが可能です。必要に応じてクエリを使用できます。

もう 1 つの可能性は、スキャンの結果の処理がまだ完了していない可能性があることです。LastEvaluatedKey が null になるまで、スキャンを繰り返す必要があります。

http://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_Scan.html

于 2013-05-28T16:39:20.260 に答える