ストレージ設定を構成する - AWS IoT SiteWise

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

ストレージ設定を構成する

サービスマネージドウォーム階層ストレージにオプトインしたり、コールド階層にデータをレプリケートしたりするようにストレージ設定を構成できます。ウォーム階層とホット階層の保持期間の詳細については、「」を参照してくださいデータ保持の影響。ストレージ設定を行うときは、次の操作を行います。

  • ホット階層の保持 — データが削除される前にホット階層に保存され、ストレージ設定に基づいてサービスマネージドウォーム階層ストレージまたはコールド階層ストレージに移動される期間に保持期間を設定します。 AWS IoT SiteWise は、保持期間が終了する前に存在していたホット階層内のデータをすべて削除します。保持期間を設定しない場合、データはホット階層に無期限に保存されます。

  • ウォーム階層の保持 — AWS IoT SiteWise ストレージから削除され、カスタマー管理のコールド階層ストレージに移動される前に、ウォーム階層にデータを保存する期間を設定します。 は、保持期間が終了する前に存在していたウォーム階層からすべてのデータ AWS IoT SiteWise を削除します。保持期間が設定されていない場合、データはウォーム階層に無期限に保存されます。

注記

クエリのパフォーマンスを向上させるには、ウォーム階層ストレージでホット階層の保持期間を設定します。

ホット階層ストレージとウォーム階層ストレージにおけるデータ保持の影響

  • ホット階層ストレージの保持期間を短くすると、データはホット階層からウォーム階層またはコールド階層に永続的に移動されます。ウォーム階層の保持期間を短くすると、データはコールド階層に移動され、ウォーム階層から完全に削除されます。

  • ホットまたはウォーム階層ストレージの保持期間を延長すると、その変更によって AWS IoT SiteWise から に送信されるデータに影響します。 AWS IoT SiteWise は、ホット階層に入力するためにウォームまたはコールドストレージからデータを取得しません。例えば、ホット階層ストレージの保持期間が最初に 30 日間設定され、その後に 60 日間に延長された場合、ホット階層ストレージに 60 日分のデータが含まれるまでに 30 日かかります。

ウォーム階層のストレージ設定を構成する (コンソール)

次の手順では、 AWS IoT SiteWise コンソールでウォーム階層にデータをレプリケートするようにストレージ設定を構成する方法を示します。

コンソールでストレージの設定を設定するには
  1. AWS IoT SiteWise コンソールに移動します。

  2. ナビゲーションペインで [設定][ストレージ] を選択します。

  3. 右上隅の[編集] を選択します。

  4. [ストレージを編集] ページで、次の作業を行います:

  5. ホット階層設定 では、次の操作を行います。

    • データがホット階層に保存されてから削除され、サービス管理のウォーム階層ストレージに移動されるまでの時間の保持期間を設定する場合は、保持期間を有効にする を選択します。

    • 保持期間を設定するには、整数を入力して単位を選択します。保持期間は、30 日以上にする必要があります。

    AWS IoT SiteWise は、保持期間より古いホット階層のデータをすべて削除します。保持期間を設定しなかった場合、データは無期限に保存されます。

  6. (推奨) ウォーム階層設定 では、次の操作を行います。

    • ウォーム階層ストレージにオプトインするには、ウォーム階層ストレージのオプトインを確認してウォーム階層ストレージをオプトインします。

    • (オプション) 保持期間を設定するには、整数を入力し、単位を選択します。保持期間は 365 日以上である必要があります。

    AWS IoT SiteWise は、保持期間より前に存在していたウォーム階層内のデータを削除します。保持期間を設定しなかった場合、データは無期限に保存されます。

    注記
    • ウォーム階層をオプトインすると、設定は 1 回のみ表示されます。

    • ホット階層の保持を設定するには、ウォーム階層ストレージまたはコールド階層ストレージが必要です。コスト効率と履歴データの取得のために、 AWS IoT SiteWise では長期データをウォーム階層に保存することをお勧めします。

    • ウォーム階層の保持を設定するには、コールド階層ストレージが必要です。

  7. 保存 を選択してストレージ設定を保存します。

AWS IoT SiteWise ストレージセクションでは、ウォーム階層ストレージは次のいずれかの状態になります。

  • 有効 – ホット階層の保持期間より前にデータが存在していた場合、 AWS IoT SiteWise はデータをウォーム階層に移動します。」

  • 無効 — ウォーム階層ストレージは無効になっています。

ウォーム階層のストレージ設定を構成する (AWS CLI)

AWS CLI および次のコマンドを使用して、データをウォーム階層に移動するようにストレージ設定を構成できます。

既存の設定が上書きされないようにするには、次のコマンドを実行して現在のストレージ設定情報を取得します。

aws iotsitewise describe-storage-configuration
例 既存のコールド階層設定がないレスポンス
{ "storageType": "SITEWISE_DEFAULT_STORAGE", "disassociatedDataStorage": "ENABLED", "configurationStatus": { "state": "ACTIVE" }, "lastUpdateDate": "2021-10-14T15:53:35-07:00", "warmTier": "DISABLED" }
例 既存のコールド階層設定での レスポンス
{ "storageType": "MULTI_LAYER_STORAGE", "multiLayerStorage": { "customerManagedS3Storage": { "s3ResourceArn": "arn:aws:s3:::bucket-name/prefix/", "roleArn": "arn:aws:iam::aws-account-id:role/role-name" } }, "disassociatedDataStorage": "ENABLED", "retentionPeriod": { "numberOfDays": retention-in-days }, "configurationStatus": { "state": "ACTIVE" }, "lastUpdateDate": "2023-10-25T15:59:46-07:00", "warmTier": "DISABLED" }

でウォーム階層のストレージ設定を構成する AWS CLI

次のコマンドを実行して、ストレージ設定を構成します。を、 AWS IoT SiteWise ストレージ設定を含むファイルの名前file-nameに置き換えます。

aws iotsitewise put-storage-configuration --cli-input-json file://file-name.json
例 AWS IoT SiteWise ホット階層とウォーム階層での設定
{ "storageType": "SITEWISE_DEFAULT_STORAGE", "disassociatedDataStorage": "ENABLED", "warmTier": "ENABLED", "retentionPeriod": { "numberOfDays": hot-tier-retention-in-days } }

hot-tier-retention-in-days は 30 日以上の整数である必要があります。

例 レスポンス
{ "storageType": "SITEWISE_DEFAULT_STORAGE", "configurationStatus": { "state": "UPDATE_IN_PROGRESS" } }

コールド階層ストレージが有効になっている場合は、「」を参照してくださいAWS CLI および既存のコールド階層を使用してストレージ設定を構成する

AWS CLI および既存のコールド階層を使用してストレージ設定を構成する

既存のコールド階層ストレージ AWS CLI で を使用してストレージ設定を構成する
  • 次のコマンドを実行して、ストレージ設定を構成します。置換 file-name AWS IoT SiteWise ストレージ設定を含むファイルの名前。

    aws iotsitewise put-storage-configuration --cli-input-json file://file-name.json
    例 AWS IoT SiteWise ストレージ設定
    • 置換 bucket-name Amazon S3 バケット名を入力します。

    • 置換 prefix を Amazon S3 プレフィックスとともに使用します。

    • 置換 aws-account-id AWS アカウント ID を入力します。

    • 置換 role-name に Amazon S3 AWS IoT SiteWise へのデータ送信を許可する Amazon S3 アクセスロールの名前を指定します。

    • 置換 hot-tier-retention-in-days 整数が 30 日以上の 。

    • 置換 warm-tier-retention-in-days 整数が 365 日以上の 。

    注記

    AWS IoT SiteWise は、コールド層の保持期間より古いウォーム層のデータをすべて削除します。保持期間を設定しなかった場合、データは無期限に保存されます。

    { "storageType": "MULTI_LAYER_STORAGE", "multiLayerStorage": { "customerManagedS3Storage": { "s3ResourceArn": "arn:aws:s3:::bucket-name/prefix/", "roleArn": "arn:aws:iam::aws-account-id:role/role-name" } }, "disassociatedDataStorage": "ENABLED", "retentionPeriod": { "numberOfDays": hot-tier-retention-in-days }, "warmTier": "ENABLED", "warmTierRetentionPeriod": { "numberOfDays": warm-tier-retention-in-days } }
    例 レスポンス
    { "storageType": "MULTI_LAYER_STORAGE", "configurationStatus": { "state": "UPDATE_IN_PROGRESS" } }

Cold 階層のストレージ設定を構成する (コンソール)

次の手順では、 AWS IoT SiteWise コンソールで Cold 階層にデータをレプリケートするようにストレージ設定を構成する方法を示します。

コンソールでストレージの設定を設定するには
  1. AWS IoT SiteWise コンソールに移動します。

  2. ナビゲーションペインで [設定][ストレージ] を選択します。

  3. 右上隅の[編集] を選択します。

  4. [ストレージを編集] ページで、次の作業を行います:

    1. [ストレージ設定][コールド階層ストレージを有効にする] を選択します。デフォルトでは、コールド階層ストレージは無効です。

    2. S3 バケットの場所には、既存の Amazon S3 バケット名とプレフィックスを入力します。

      注記
      • Amazon S3 では、プレフィックスを Amazon S3 バケット内のフォルダ名として使用します。プレフィックスは1~255文字で、末尾はスラッシュ (/) とする。お客様の AWS IoT SiteWise データはこのフォルダーに保存されます。

      • Amazon S3 バケットがない場合は、[表示] () を選択し、Amazon S3 コンソールでバケットを作成します。詳細については、Amazon S3 ユーザーガイド最初の S3 バケットを作成する を参照してください。

    3. S3 アクセスロールの場合、次のいずれかを実行します。

      • AWS マネージドテンプレート からロールを作成する を選択すると、 が Amazon S3 AWS IoT SiteWise にデータを送信できるようにする IAMロール AWS が自動的に作成されます。 Amazon S3

      • [既存のロールの使用] を選択し、リストから作成したロールを選択します。

        注記
        • 前のステップとIAMポリシーで使用した Amazon S3 S3 バケット名を使用する必要があります。

        • 次の例に示すようなアクセス許可をロールが持っていることを確認してください。

          例 アクセス許可ポリシー:
          { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:PutObject", "s3:GetObject", "s3:DeleteObject", "s3:GetBucketLocation", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::bucket-name", "arn:aws:s3:::bucket-name/*" ] } ] }

          置換 bucket-name Amazon S3 バケットの名前を入力します。

        • S3 バケットがカスタマーマネージドKMSキーを使用して暗号化されている場合、KMSキーには kms:Decryptおよび kms:GenerateDataKeyオペレーションの IAMロールを持つアクセスポリシーが必要です。

    4. ホット階層を設定するには、「」の「ステップ 5」を参照してくださいウォーム階層のストレージ設定を構成する (コンソール)

    5. (オプション) [AWS IoT Analytics 統合] では、以下を行います。

      1. AWS IoT Analytics を使用してデータをクエリする場合は、 AWS IoT Analytics データストア を有効にする を選択します。

      2. AWS IoT SiteWise はデータストアの名前を生成するか、別の名前を入力できます。

      AWS IoT SiteWise は、 にデータストアを自動的に作成 AWS IoT Analytics してデータを保存します。データをクエリするには、 AWS IoT Analytics を使用してデータセットを作成できます。詳細については、「 ユーザーガイド」の AWS IoT SiteWise 「データの使用AWS IoT Analytics 」を参照してください。

    6. [Save] を選択します。

[AWS IoT SiteWise ストレージ] セクションの[コールド階層ストレージ]は、次のいずれかの値に設定できます。

  • 有効 – 指定した Amazon S3 バケットにデータを AWS IoT SiteWise レプリケートします。

  • 有効化 — AWS IoT SiteWise コールド階層ストレージを有効にするリクエストを処理しています。このプロセスは完了までに数分かかることがあります。

  • Enable_Failed – Cold 階層ストレージを有効にするリクエストを処理 AWS IoT SiteWise できませんでした。が Amazon CloudWatch Logs AWS IoT SiteWise にログを送信できるようにした場合、これらのログを使用して問題のトラブルシューティングを行うことができます。詳細については、「Amazon CloudWatch Logs によるモニタリング」を参照してください。

  • [無効] – コールド階層ストレージは無効です。

Cold 階層のストレージ設定を構成する (AWS CLI)

以下では、 AWS CLIを使用して、ストレージの設定でコールド階層にデータが複製されるようにする手順を示します。

を使用してストレージ設定を構成するには AWS CLI
  1. アカウント内の Amazon S3 バケットにデータを書き出すには、次のコマンドを実行し、ストレージの設定を行ってください。置換 file-name AWS IoT SiteWise ストレージ設定を含むファイルの名前。

    aws iotsitewise put-storage-configuration --cli-input-json file://file-name.json
    例 AWS IoT SiteWise ストレージ設定
    • 置換 bucket-name Amazon S3 バケット名を入力します。

    • 置換 prefix を Amazon S3 プレフィックスとともに使用します。

    • 置換 aws-account-id AWS アカウント ID を入力します。

    • 置換 role-name に Amazon S3 AWS IoT SiteWise へのデータ送信を許可する Amazon S3 アクセスロールの名前を指定します。

    • 置換 retention-in-days の整数が 30 日以上の場合。

    { "storageType": "MULTI_LAYER_STORAGE", "multiLayerStorage": { "customerManagedS3Storage": { "s3ResourceArn": "arn:aws:s3:::bucket-name/prefix/", "roleArn": "arn:aws:iam::aws-account-id:role/role-name" } }, "retentionPeriod": { "numberOfDays": retention-in-days, "unlimited": false } }
    注記
    • AWS IoT SiteWise ストレージ設定とIAMポリシーでは、同じ Amazon S3 バケット名を使用する必要があります。

    • 次の例に示すようなアクセス許可をロールが持っていることを確認してください。

      例 アクセス許可ポリシー:
      { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:PutObject", "s3:GetObject", "s3:DeleteObject", "s3:GetBucketLocation", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::bucket-name", "arn:aws:s3:::bucket-name/*" ] } ] }

      置換 bucket-name Amazon S3 バケットの名前を入力します。

    • S3 バケットがカスタマーマネージドKMSキーを使用して暗号化されている場合、KMSキーには kms:Decryptおよび kms:GenerateDataKeyオペレーションの IAMロールを持つアクセスポリシーが必要です。

    例 レスポンス
    { "storageType": "MULTI_LAYER_STORAGE", "retentionPeriod": { "numberOfDays": 100, "unlimited": false }, "configurationStatus": { "state": "UPDATE_IN_PROGRESS" } }
    注記

    がストレージ設定を更新する AWS IoT SiteWise までに数分かかる場合があります。

  2. ストレージの設定情報を取得するには、次のコマンドを実行します。

    aws iotsitewise describe-storage-configuration
    例 レスポンス
    { "storageType": "MULTI_LAYER_STORAGE", "multiLayerStorage": { "customerManagedS3Storage": { "s3ResourceArn": "arn:aws:s3:::DOC-EXAMPLE-BUCKET/torque/", "roleArn": "arn:aws:iam::123456789012:role/SWAccessS3Role" } }, "retentionPeriod": { "numberOfDays": 100, "unlimited": false }, "configurationStatus": { "state": "ACTIVE" }, "lastUpdateDate": "2021-03-30T15:54:14-07:00" }
  3. Amazon S3 バケットへのデータ書き出しを停止するには、次のコマンドを実行してストレージの設定を行ってください。

    aws iotsitewise put-storage-configuration --storage-type SITEWISE_DEFAULT_STORAGE
    注記

    デフォルトでは、データは のホット階層にのみ保存されます AWS IoT SiteWise。

    例 レスポンス
    { "storageType": "SITEWISE_DEFAULT_STORAGE", "configurationStatus": { "state": "UPDATE_IN_PROGRESS" } }
  4. ストレージの設定情報を取得するには、次のコマンドを実行します。

    aws iotsitewise describe-storage-configuration
    例 レスポンス
    { "storageType": "SITEWISE_DEFAULT_STORAGE", "configurationStatus": { "state": "ACTIVE" }, "lastUpdateDate": "2021-03-30T15:57:14-07:00" }

(オプション) AWS IoT Analytics データストアを作成する (AWS CLI)

AWS IoT Analytics データストアは、データを受信して保存するスケーラブルでクエリ可能なリポジトリです。 AWS IoT SiteWise コンソールまたは AWS IoT Analytics APIs を使用して AWS IoT Analytics データストアを作成し、 AWS IoT SiteWise データを保存できます。データをクエリするには、 を使用してデータセットを作成します AWS IoT Analytics。詳細については、 AWS IoT Analytics ユーザーガイドの「AWS IoT SiteWise データの使用」を参照してください。

次の手順では AWS CLI 、 を使用して にデータストアを作成します AWS IoT Analytics。

データストアを作成するには、次のコマンドを実行します。置換 file-name データストア設定を含むファイルの名前。

aws iotanalytics create-datastore --cli-input-json file://file-name.json
注記
  • 既存の Amazon S3 バケット名を指定する必要があります。 Amazon S3 バケットを持っていない場合は、まずバケットを作成します。詳細については、Amazon S3 ユーザーガイド最初の S3 バケットを作成する を参照してください。

  • AWS IoT SiteWise ストレージ設定、IAMポリシー、および AWS IoT Analytics データストア設定では、同じ Amazon S3 バケット名を使用する必要があります。

例 AWS IoT Analytics データストアの設定

置換 data-store-name また、s3-bucket-name AWS IoT Analytics データストア名と Amazon S3 バケット名を入力します。

{ "datastoreName": "data-store-name", "datastoreStorage": { "iotSiteWiseMultiLayerStorage": { "customerManagedS3Storage": { "bucket": "s3-bucket-name" } } }, "retentionPeriod": { "numberOfDays": 90 } }
例 レスポンス
{ "datastoreName": "datastore_IoTSiteWise_demo", "datastoreArn": "arn:aws:iotanalytics:us-west-2:123456789012:datastore/datastore_IoTSiteWise_demo", "retentionPeriod": { "numberOfDays": 90, "unlimited": false } }