

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 在 中設定儲存體設定 AWS IoT SiteWise
<a name="configure-storage"></a>

您可以設定儲存設定來選擇加入服務受管暖層儲存，也可以將資料複寫到冷層。若要進一步了解暖層和熱層的保留期間，請參閱 [資料保留影響](#retention-period)。設定儲存設定時，請執行下列動作：
+  **熱方案保留** — 設定在刪除資料之前，將資料存放在熱方案中的保留期間，並根據儲存設定移至服務受管暖方案儲存或冷方案儲存。 AWS IoT SiteWise 會刪除保留期間結束前已存在的熱方案中的任何資料。如果您未設定保留期間，您的資料會無限期儲存在熱層中。
+  **暖層保留** - 設定保留期間，用於將資料從 AWS IoT SiteWise 儲存中刪除並移至客戶受管的冷層儲存之前，在暖層中存放多久。 會 AWS IoT SiteWise 刪除保留期間結束前存在的暖層中的任何資料。如果未設定保留期間，您的資料將無限期儲存在暖層中。

**注意**  
若要改善查詢效能，請使用暖層儲存設定熱層保留期。

## 熱層和暖層儲存中資料保留的影響
<a name="retention-period"></a>
+  當您減少熱層儲存的保留期間時，資料會從熱層永久移至暖層或冷層。當您減少暖層的保留期間時，資料會移至冷層，並從暖層永久刪除。
+  當您增加熱或暖層儲存的保留期間時，變更會影響 AWS IoT SiteWise 從 傳送至 的資料。 AWS IoT SiteWise 不會從暖或冷儲存擷取資料以填入熱層。例如，如果熱層儲存的保留期間最初設定為 30 天，然後增加到 60 天，則熱層儲存需要 30 天才能包含 60 天的資料。

**Topics**
+ [熱層和暖層儲存中資料保留的影響](#retention-period)
+ [設定暖層的儲存設定 （主控台）](#configure-storage-console-warm)
+ [設定暖層的儲存設定 (AWS CLI)](#configure-storage-cli-warm)
+ [設定冷層的儲存設定 （主控台）](#configure-storage-console)
+ [設定冷層的儲存設定 (AWS CLI)](#configure-storage-cli)

## 設定暖層的儲存設定 （主控台）
<a name="configure-storage-console-warm"></a>

下列程序說明如何在 AWS IoT SiteWise 主控台中設定儲存設定，將資料複寫至暖層。

**在主控台中設定儲存設定**

1. 導覽至 [AWS IoT SiteWise 主控台](https://console.aws.amazon.com/iotsitewise/)。

1. 在導覽窗格中的設定下****，選擇**儲存**。

1. 在右上角，選擇 **Edit (編輯)**。

1. 在**編輯儲存**頁面上，執行下列動作：

1. 對於**熱層設定**，請執行下列動作：
   + 如果您想要設定資料在刪除之前儲存在熱層中的保留期間，並移至服務受管暖層儲存，請選擇**啟用保留期間**。
   +  若要設定保留期間，請輸入整數並選擇單位。保留期間必須大於或等於 30 天。

   AWS IoT SiteWise 會刪除熱層中早於保留期間的任何資料。如果您未設定保留期間，您的資料會無限期儲存。

1. （建議） 針對**暖層設定**，請執行下列動作：
   + 若要選擇加入暖層儲存，請選取**我確認選擇加入暖層儲存**，以選擇加入暖層儲存。
   +  （選用） 若要設定保留期間，請輸入整數並選擇單位。保留期間必須大於或等於 365 天。

   AWS IoT SiteWise 會刪除暖層中比保留期間更早存在的資料。如果您未設定保留期間，您的資料會無限期儲存。
**注意**  
當您選擇加入暖層時，組態只會顯示一次。
若要設定熱層保留，您必須擁有暖層或冷層儲存。如需成本效益和歷史資料擷取， AWS IoT SiteWise 建議您將長期資料存放在暖層。
若要設定暖層保留，您必須擁有冷層儲存。

1. 選擇**儲存**以儲存儲存設定。

在**AWS IoT SiteWise 儲存**區段中，**暖層儲存**處於下列其中一種狀態：
+ **已啟用** – 如果您的資料在熱層保留期之前存在， AWS IoT SiteWise 會將資料移至暖層。」
+ **停用** – 停用暖層儲存。

## 設定暖層的儲存設定 (AWS CLI)
<a name="configure-storage-cli-warm"></a>

您可以使用 AWS CLI 和下列命令，設定儲存設定將資料移至暖層。

為了防止覆寫現有的組態，請執行下列命令來擷取目前的儲存組態資訊：

```
aws iotsitewise describe-storage-configuration
```

**Example 沒有現有冷層組態的回應**  

```
{
          "storageType": "SITEWISE_DEFAULT_STORAGE",
          "disassociatedDataStorage": "ENABLED",
          "configurationStatus": {
              "state": "ACTIVE"
          },
          "lastUpdateDate": "2021-10-14T15:53:35-07:00",
          "warmTier": "DISABLED"
}
```

**Example 使用現有冷層組態的 回應**  

```
{             
      "storageType": "MULTI_LAYER_STORAGE",
          "multiLayerStorage": {
            "customerManagedS3Storage": {
            "s3ResourceArn": "arn:aws:s3:::amzn-s3-demo-bucket/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
<a name="configure-storage-cli-warm-tier"></a>

執行下列命令來設定儲存設定。`file-name` 將 取代為包含 AWS IoT SiteWise 儲存組態的檔案名稱。

```
aws iotsitewise put-storage-configuration --cli-input-json file://file-name.json
```

**Example AWS IoT SiteWise 具有熱層和暖層的 組態**  

```
{
             "storageType": "SITEWISE_DEFAULT_STORAGE",
             "disassociatedDataStorage": "ENABLED",
             "warmTier": "ENABLED",
             "retentionPeriod": {
                "numberOfDays": hot-tier-retention-in-days
              } 
              
}
```
`hot-tier-retention-in-days` 必須是大於或等於 30 天的整數。

**Example 回應**  

```
{
             "storageType": "SITEWISE_DEFAULT_STORAGE",
             "configurationStatus": {
             "state": "UPDATE_IN_PROGRESS"
             }
}
```

如果您已啟用冷層儲存，請參閱 [使用 AWS CLI 和現有的冷方案設定儲存體設定](#configure-storage-cli-existing-cold)。

### 使用 AWS CLI 和現有的冷方案設定儲存體設定
<a name="configure-storage-cli-existing-cold"></a>

**使用 AWS CLI 搭配現有的冷層儲存來設定儲存設定**
+ 執行下列命令來設定儲存設定。將 *file-name* 取代為包含 AWS IoT SiteWise 儲存組態的檔案名稱。

  ```
  aws iotsitewise put-storage-configuration --cli-input-json file://file-name.json
  ```  
**Example AWS IoT SiteWise 儲存體組態**  
  + 將 *amzn-s3-demo-bucket* 取代為您的 Amazon S3 儲存貯體名稱。
  + 將*字首*取代為您的 Amazon S3 字首。
  + 將 *aws-account-id* 取代為 AWS 您的帳戶 ID。
  + 將 *role-name* 取代為允許 AWS IoT SiteWise 將資料傳送至 Amazon S3 的 Amazon S3 存取角色名稱。
  + 以大於或等於 30 天的整數取代 *hot-tier-retention-in-days*day。
  + 以大於或等於 365 天的整數取代 *warm-tier-retention-in-days*day。
**注意**  
AWS IoT SiteWise 會刪除暖層中早於冷層保留期的任何資料。如果您未設定保留期間，您的資料會無限期儲存。

  ```
  {
        "storageType": "MULTI_LAYER_STORAGE",
          "multiLayerStorage": {
            "customerManagedS3Storage": {
                "s3ResourceArn": "arn:aws:s3:::amzn-s3-demo-bucket/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
      }
  }
  ```  
**Example 回應**  

  ```
  {
        "storageType": "MULTI_LAYER_STORAGE",
        "configurationStatus": {
          "state": "UPDATE_IN_PROGRESS"
         }
  }
  ```

## 設定冷層的儲存設定 （主控台）
<a name="configure-storage-console"></a>

下列程序說明如何在 AWS IoT SiteWise 主控台中設定儲存設定，將資料複寫至冷層。

**在主控台中設定儲存設定**

1. 導覽至 [AWS IoT SiteWise 主控台](https://console.aws.amazon.com/iotsitewise/)。

1. 在導覽窗格中的設定下****，選擇**儲存**。

1. 在右上角，選擇 **Edit (編輯)**。

1. 在**編輯儲存**頁面上，執行下列動作：

   1. 針對**儲存設定**，選擇**啟用冷層儲存**。冷層儲存預設為停用。

   1. 針對 **S3 儲存貯體位置**，輸入現有 Amazon S3 儲存貯體的名稱和字首。
**注意**  
Amazon S3 使用 字首做為 Amazon S3 儲存貯體中的資料夾名稱。字首必須有 1-255 個字元，並以正斜線 (/) 結尾。 AWS IoT SiteWise 您的資料會儲存在此資料夾中。
如果您沒有 Amazon S3 儲存貯體，請選擇**檢視**，然後在 Amazon S3 主控台中建立一個。如需詳細資訊，請參閱《Amazon [ S3 使用者指南》中的建立您的第一個 S3 儲存貯](https://docs.aws.amazon.com/AmazonS3/latest/userguide/GetStartedWithS3.html#creating-bucket)體。 *Amazon S3 *

   1. 對於 **S3 存取角色**，請執行下列其中一項操作：
      + 選擇**從 AWS 受管範本建立角色**， AWS 自動建立允許 將資料傳送至 Amazon S3 AWS IoT SiteWise 的 IAM 角色。
      + 選擇**使用現有角色**，然後從清單中選擇您建立的角色。
**注意**  
您必須對上一個步驟和 IAM 政策中使用的 S3 儲存貯體位置使用相同的 Amazon S3 儲存貯體名稱。 **S3 ** 
請確定您的角色具有下列範例所示的許可。  

**Example 許可政策：**    
****  

          ```
          {
                "Version":"2012-10-17",		 	 	 
                "Statement": [
                    {
                        "Effect": "Allow",
                        "Action": [
                            "s3:PutObject",
                            "s3:GetObject",
                            "s3:DeleteObject",
                            "s3:GetBucketLocation",
                            "s3:ListBucket"
                        ],
                        "Resource": [
                            "arn:aws:s3:::amzn-s3-demo-bucket",
                            "arn:aws:s3:::amzn-s3-demo-bucket/*"
                        ]
                    }
                ]
            }
          ```
將 amzn-s3-demo-bucket 取代為您的 Amazon S3 儲存貯體名稱。
 如果 Amazon S3 儲存貯體使用客戶受管 KMS 金鑰加密，則 KMS 金鑰必須具有 `kms:Decrypt`和 `kms:GenerateDataKey`操作的 IAM 角色的存取政策。

   1. 若要設定熱層，請參閱 中的步驟 5[設定暖層的儲存設定 （主控台）](#configure-storage-console-warm)。

   1. （選用） 對於**AWS IoT Analytics 整合**，請執行下列動作。
**注意**  
終止支援通知： 將於 2025 年 12 月 15 AWS 日結束對 的支援 AWS IoT Analytics。2025 年 12 月 15 日之後，您將無法再存取 AWS IoT Analytics 主控台或 AWS IoT Analytics 資源。如需詳細資訊，請參閱[AWS IoT Analytics 終止支援](https://docs.aws.amazon.com/iotanalytics/latest/userguide/iotanalytics-end-of-support.html)。

      1. 如果您想要使用 AWS IoT Analytics 查詢資料，請選擇**已啟用 AWS IoT Analytics 的資料存放區**。

      1. AWS IoT SiteWise 會為您的資料存放區產生名稱，或者您可以輸入不同的名稱。

      AWS IoT SiteWise 會自動在 中建立資料存放區 AWS IoT Analytics ，以儲存您的資料。若要查詢資料，您可以使用 AWS IoT Analytics 來建立資料集。如需詳細資訊，請參閱*AWS IoT Analytics 《 使用者指南*》中的[使用 AWS IoT SiteWise 資料](https://docs.aws.amazon.com/iotanalytics/latest/userguide/dataset-itsw.html)。

   1. 選擇**儲存**。

在**AWS IoT SiteWise 儲存**區段中，**冷層儲存**可以是下列其中一個值：
+ **已啟用** – 將您的資料 AWS IoT SiteWise 複寫到指定的 Amazon S3 儲存貯體。
+ **啟用** – AWS IoT SiteWise 正在處理您的請求，以啟用冷層儲存。此程序可能需要幾分鐘的時間才能完成。
+ **Enable\$1Failed** – AWS IoT SiteWise 無法處理您的請求以啟用冷層儲存。如果您啟用 AWS IoT SiteWise 將日誌傳送至 Amazon CloudWatch Logs，您可以使用這些日誌來疑難排解問題。如需詳細資訊，請參閱[使用 Amazon CloudWatch Logs 監控](monitor-cloudwatch-logs.md)。
+ **已停用** – 冷層儲存已停用。

## 設定冷層的儲存設定 (AWS CLI)
<a name="configure-storage-cli"></a>

下列程序說明如何設定儲存設定，以使用 將資料複寫至冷層 AWS CLI。

**使用 設定儲存體設定 AWS CLI**

1. 若要將資料匯出至您帳戶中的 Amazon S3 儲存貯體，請執行下列命令來設定儲存體設定。將 *file-name* 取代為包含 AWS IoT SiteWise 儲存組態的檔案名稱。

   ```
   aws iotsitewise put-storage-configuration --cli-input-json file://file-name.json
   ```  
**Example AWS IoT SiteWise 儲存體組態**  
   + 將 *amzn-s3-demo-bucket* 取代為您的 Amazon S3 儲存貯體名稱。
   + 將*字首*取代為您的 Amazon S3 字首。
   + 將 *aws-account-id* 取代為 AWS 您的帳戶 ID。
   + 將 *role-name* 取代為允許 將資料 AWS IoT SiteWise 傳送至 Amazon S3 的 Amazon S3 存取角色名稱。
   + 將*retention-in-days*替換為整數大於或等於 30 天。

   ```
   {
         "storageType": "MULTI_LAYER_STORAGE",
         "multiLayerStorage": {
             "customerManagedS3Storage": {
                 "s3ResourceArn": "arn:aws:s3:::amzn-s3-demo-bucket/prefix/",
                 "roleArn": "arn:aws:iam::aws-account-id:role/role-name"
             }
         }, 
         "retentionPeriod": { 
             "numberOfDays": retention-in-days,
             "unlimited": false
         }
     }
   ```
**注意**  
您必須在 AWS IoT SiteWise 儲存組態和 IAM 政策中使用相同的 Amazon S3 儲存貯體名稱。
請確定您的角色具有下列範例所示的許可。  

**Example 許可政策：**    
****  

     ```
     {
           "Version":"2012-10-17",		 	 	 
           "Statement": [
               {
                   "Effect": "Allow",
                   "Action": [
                       "s3:PutObject",
                       "s3:GetObject",
                       "s3:DeleteObject",
                       "s3:GetBucketLocation",
                       "s3:ListBucket"
                   ],
                   "Resource": [
                       "arn:aws:s3:::amzn-s3-demo-bucket",
                       "arn:aws:s3:::amzn-s3-demo-bucket/*"
                   ]
               }
           ]
       }
     ```
將 amzn-s3-demo-bucket 取代為您的 Amazon S3 儲存貯體名稱。
 如果 Amazon S3 儲存貯體使用客戶受管 KMS 金鑰加密，則 KMS 金鑰必須具有 `kms:Decrypt`和 `kms:GenerateDataKey`操作的 IAM 角色的存取政策。  
**Example 回應**  

   ```
   {
       "storageType": "MULTI_LAYER_STORAGE",
       "retentionPeriod": {
           "numberOfDays": 100,
           "unlimited": false
       },
       "configurationStatus": {
           "state": "UPDATE_IN_PROGRESS"
       }
   }
   ```
**注意**  
 AWS IoT SiteWise 更新儲存組態可能需要幾分鐘的時間。

1. 若要擷取儲存組態資訊，請執行下列命令。

   ```
   aws iotsitewise describe-storage-configuration
   ```  
**Example 回應**  

   ```
   {
         "storageType": "MULTI_LAYER_STORAGE",
         "multiLayerStorage": {
             "customerManagedS3Storage": {
                 "s3ResourceArn": "arn:aws:s3:::amzn-s3-demo-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"
     }
   ```

1. 若要停止將資料匯出至 Amazon S3 儲存貯體，請執行下列命令來設定儲存體設定。

   ```
   aws iotsitewise put-storage-configuration --storage-type SITEWISE_DEFAULT_STORAGE
   ```
**注意**  
根據預設，您的資料只會存放在 的熱層中 AWS IoT SiteWise。  
**Example 回應**  

   ```
   {
         "storageType": "SITEWISE_DEFAULT_STORAGE",
         "configurationStatus": {
             "state": "UPDATE_IN_PROGRESS"
         }
     }
   ```

1. 若要擷取儲存組態資訊，請執行下列命令。

   ```
   aws iotsitewise describe-storage-configuration
   ```  
**Example 回應**  

   ```
   {
         "storageType": "SITEWISE_DEFAULT_STORAGE",
         "configurationStatus": {
             "state": "ACTIVE"
         },
         "lastUpdateDate": "2021-03-30T15:57:14-07:00"
     }
   ```

### （選用） 建立 AWS IoT Analytics 資料存放區 (AWS CLI)
<a name="create-iotanalytics-data-store-cli"></a>

**注意**  
終止支援通知：在 2025 年 12 月 15 日， AWS 將終止對 的支援 AWS IoT Analytics。2025 年 12 月 15 日之後，您將無法再存取 AWS IoT Analytics 主控台或 AWS IoT Analytics 資源。如需詳細資訊，請參閱[AWS IoT Analytics 終止支援](https://docs.aws.amazon.com/iotanalytics/latest/userguide/iotanalytics-end-of-support.html)。

 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 資料](https://docs.aws.amazon.com/iotanalytics/latest/userguide/dataset-itsw.html)。

下列步驟使用 在其中 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 儲存貯](https://docs.aws.amazon.com/AmazonS3/latest/userguide/GetStartedWithS3.html#creating-bucket)體。 *Amazon S3 *
您必須在 AWS IoT SiteWise 儲存組態、IAM 政策和 AWS IoT Analytics 資料存放區組態中使用相同的 Amazon S3 儲存貯體名稱。

**Example AWS IoT Analytics 資料存放區組態**  
將 *data-store-name* 和 *amzn-s3-demo-bucket* 取代為您的 AWS IoT Analytics 資料存放區名稱和 Amazon S3 儲存貯體名稱。  

```
{
      "datastoreName": "data-store-name",
      "datastoreStorage": {
          "iotSiteWiseMultiLayerStorage": {
              "customerManagedS3Storage": {
                  "bucket": "amzn-s3-demo-bucket"
              }
          }
      },
      "retentionPeriod": {
          "numberOfDays": 90
      }
  }
```

**Example 回應**  

```
{
      "datastoreName": "datastore_IoTSiteWise_demo",
      "datastoreArn": "arn:aws:iotanalytics:us-west-2:123456789012:datastore/datastore_IoTSiteWise_demo",
      "retentionPeriod": {
          "numberOfDays": 90,
          "unlimited": false
      }
  }
```