3

ユーザー向けの時系列イベントを収集しており、時間範囲にわたってクエリを実行できる必要があります。行の例は次のとおりです。

{ user_id: 100, timestamp: 1352293487, location: "UK", rating:5 }

特定のユーザーのタイムスタンプに基づいて、時間範囲にわたってクエリを実行できる必要があります。2つのタイムスタンプ値の間で効率的にクエリを実行するために、DynamoDBのクエリ操作を利用してuser_idを主キーに設定し、タイムスタンプを範囲キーに設定できると考えるのは正しいでしょうか?

4

1 に答える 1

3

十分な数のユーザーがいる限り、あなたの提案は良いスキーマのように聞こえます。

ご存知のように、Amazonは信頼性とパフォーマンスのためにテーブルをパーティションに自動的に分散します。Query100%確信はありませんが、リクエストは一度に1つのパーティションでしか処理できないと思います。これは、プロビジョニングされたスループットがこれらのパーティションに均等に分割されるため重要です。つまり、同じアイテムに対する頻繁なクエリでは、プロビジョニングしたもののごく一部しか使用されません。

于 2012-11-07T14:44:27.183 に答える