2017-03-16 6 views
0

CloudWatchアラームを設定しました。私はこのイベントをキャプチャし、報告目的でデータベースに記録する必要があります。 Dynamoは、読み書きの量が少ないために選択されます。私はキャプチャする必要がどのようなCloudWatchアラームをDynamoDBに保存するためのHash + Rangeキーの使用

  • AWSアカウントID(12345678912345)
  • イベントの日時
  • イベントID

私は、複数のAWSアカウントを持っている、と私はしたいですそれらをすべて1つのテーブルに格納します(別のテーブルに格納することもできますが、そのボリュームが小さければ本当に便利です)。

ハッシュ+レンジを使うべきですか?

Hash: <account_id> 
Range: <datetime> 

このように、DynamoDBは範囲に基づいてグループ化/注文します。

私のクエリが唯一のようになります。すべてはすべては

を占めるため

  • は/ ACCOUNT_ID用×時間以降のイベントのすべてを取得するアカウントの

    • は/ ACCOUNT_IDのためにすべてのイベントを取得しますこれは良いデザインですか?別のインデックスが必要ですか?

  • 答えて

    1

    クエリパターンごとに、正しい外観になります。

    • account_idのデータを1つだけ表示する場合は、Queryを入力します。範囲キーにKeyConditionExpressionを指定して、timestampの後に発生したイベントのみを取得することもできます。
    • account_idのリストのデータが必要な場合は、Scanを実行します。 はとなります(ハッシュキーと範囲キーの両方が必要なため)はできません。
    +0

    ありがとうございます。使用するAPIを知ることは有益です。 – CppLearner

    関連する問題