10

プロジェクトの一部に DynamoDB を使用するかどうか、現在検討中です。特定のキーのデータベースに対してクエリを実行し、それが見つからないかどうかを知りたい (例: このユーザー ID が存在するかどうかを確認し、存在する場合はコンテンツを取得する) 読み取りおよび課金対象と見なされる結果を返さないこのクエリは?

結果を返さない一定量のクエリ (情報のポーリング) を実行し、これを考慮に入れる必要があると思います。

以下は AWS の Web サイトからのものです: http://aws.amazon.com/dynamodb/pricing/

「必要な読み取り容量の単位数は、API 呼び出しの数ではなく、1 秒あたりに読み取られる項目の数によって決定されることに注意してください。たとえば、テーブルから 1 秒あたり 500 項目を読み取る必要がある場合、項目が1KB 以下の場合、500 単位の読み取り容量が必要です。500 回の個別の GetItem 呼び出しを行うか、10 個のアイテムを返す 50 回の BatchGetItem 呼び出しを行うかは問題ではありません。」

4

2 に答える 2

14

DynamoDBを呼び出しConsumedCapacityUnitsて結果を確認するだけで、簡単に確認できます。

たとえば、存在するアイテムに対して単純なgetItem呼び出しを呼び出す場合、次のようになります。

Result: {Item: {fans={SS: [Billy Bob, James], }, name={S: Airplane, }, year={N: 1980, }, rating={S: *****, }}, 
  ConsumedCapacityUnits: 0.5, }

ただし、存在しないアイテムで呼び出すと、次のようになります。

Result: {ConsumedCapacityUnits: 0.5, }

したがって、ルックアップが実行されているため、アイテムがテーブルにない場合でも容量を消費しているように見えます。

于 2012-12-23T11:59:01.380 に答える