アマゾンウェブサービスは初めてです。ハッシュキーに特定の単語が含まれているdynamoDBテーブルのすべてのエントリを取得したいと思います。これは、OracleDBでlike演算子を使用するのと似ています。どうすればいいですか?それが不可能な場合、ハッシュキーに制約を与えずにテーブル内のすべてのエントリを取得して、後で単語に一致するようにすべてのエントリを反復処理できるようにするにはどうすればよいですか?
質問する
6895 次
1 に答える
16
一般的な DynamoDB の考え:
DynamoDB を MySQL のように考えないでください。DynamoDB は、いくつかの優れた機能を備えたキーと値のストアにすぎません。
key:value ストアの基本は次のとおりです。
キーを知っていて、値を取得します。
そうしないと、テーブル全体が取得されます。
DynamoDB 固有のケースでは、次のことができます。
- キー全体を知っているアイテムを取得する
GetItem
- 特定の の下にあるすべてのアイテムを取得し
hash_key
、場合によってはフィルターを適用します。Query
- おそらくフィルターを適用して、テーブル全体を取得します
Scan
これは言った、Scan
遅くて高価です。使用しないと、設計が間違っている可能性が高くなります。
あなたの質問に固有:
あなたの場合、キーを
hash_key
range_key
Query
次に、すべてのアイテムを共有するために使用できますhash_key
。を使用すると、範囲を絞り込むQuery
などのフィルターを適用できます。BEGINS_WITH
hash_key
すべての ( , range_key
) タプルは一意である必要があることに注意してください。
于 2012-10-05T13:45:17.167 に答える