

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

# Amazon OpenSearch Service の多層ストレージ
<a name="multi-tier-storage"></a>

Amazon OpenSearch Service の多層ストレージは、さまざまなストレージ階層にわたってデータを管理することで、パフォーマンスとコストの両方を最適化するインテリジェントなデータ管理ソリューションです。このアーキテクチャにより、組織はアクセス頻度の低いデータをよりコスト効率の高いウォームストレージに移動しながら、アクセス頻度の高いデータを高性能ホットストレージに保持することで、パフォーマンスとコストのトレードオフを効率的にバランスさせることができます。

Amazon OpenSearch Service には、ホット/ウォームストレージ階層用の 2 つのアーキテクチャオプションがあります。
+ **OpenSearch 多層ストレージアーキテクチャ **
  + Amazon S3 をローカルインスタンスストレージと組み合わせる
  + OpenSearch Optimized Instances を利用
  + ウォーム階層での書き込みオペレーションをサポート
  + ホット階層とウォーム階層間のシームレスなデータ移行をサポート
  + OpenSearch 3.3 以降で利用可能
  + Cold Tier をサポートしていません
+ **UltraWarm ベースのアーキテクチャ**
  + Amazon S3 をローカルインスタンスストレージと組み合わせる
  + UltraWarm インスタンスを使用
  + 読み取り専用のウォーム階層ワークロード向けに最適化
  + Elasticsearch バージョン 6.8 以降およびすべての OpenSearch バージョンで利用可能
  + コールド階層をサポート

**注記**  
 このドキュメントでは、多層アーキテクチャのみに焦点を当てています。Ultrawarm ストレージアーキテクチャについては、[「Ultrawarm](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/ultrawarm.html) および [Cold Storage](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/cold-storage.html)」を参照してください。

## 多層ストレージアーキテクチャ
<a name="multi-tier"></a>

**Topics**
+ [主な利点](#multi-tier-benefits)
+ [前提条件](#multi-tier-prerequisites)
+ [制限事項](#multi-tier-limitations)
+ [主要事項](#things-to-note)
+ [多層ドメインの作成](#multi-tier-creating)
+ [階層移行の管理](#multi-tier-managing)
+ [セキュリティ設定](#multi-tier-security)
+ [ベストプラクティス](#multi-tier-best-practices)
+ [メトリクスのモニタリング](#multi-tier-metrics)

### 主な利点
<a name="multi-tier-benefits"></a>
+ **Writable Warm:** ウォームインデックスの書き込みオペレーションをサポート
+ **シームレスな移行:** ストレージ層間のデータのシームレスな移動
+ **コスト最適化:** 非アクティブデータをコスト効率の高いウォームストレージに移動することでストレージコストを削減
+ **パフォーマンスの向上:** ホット階層内の頻繁にアクセスされるデータに対して高いパフォーマンスを維持します。
+ **柔軟なデータ管理:** ワークロード要件に最適なアーキテクチャを選択する
+ **自動管理:** ストレージ階層全体のデータライフサイクル管理を簡素化

### 前提条件
<a name="multi-tier-prerequisites"></a>
+ **エンジンバージョン:** OpenSearch **3.3 以降**
+ **インスタンスファミリー:**
  + ホットノード: OR1, OR2, OM2、または OI2
  + ウォームノード: OI2
+ **セキュリティ:** Node-to-node暗号化、保管時の暗号化、HTTPS の適用

### 制限事項
<a name="multi-tier-limitations"></a>
+ Ultrawarm がまだ有効になっていない OpenSearch 最適化インスタンスを持つすべてのドメインで動作します
+ コールド階層のサポートなし

### 主要事項
<a name="things-to-note"></a>
+ ホットからウォームへの移行では、マルチ層アーキテクチャでの強制マージはトリガーされません。必要に応じて、ユーザーはインデックス管理ポリシーを使用して強制マージをオーケストレーションできます。
+ インデックス作成とは別に、ウォームノードはバックグラウンドマージオペレーションも実行するようになりました (ホットに似ています）。
+ ウォームインデックスに対するすべての検索リクエストはプライマリシャードにルーティングされ、レプリカはプライマリシャードがダウンしている場合にのみ読み取りを提供します。
+ このアーキテクチャでは、ウォームインデックスの自動スナップショットもサポートされています。
+ クロスクラスターレプリケーションはホットインデックスでのみサポートされています
+ Shrink、Split、Clone などのインデックス APIs はウォームインデックスでは機能しません。

### 多層ドメインの作成
<a name="multi-tier-creating"></a>

#### ステップ 1: ドメインを作成する
<a name="multi-tier-step1"></a>

```
aws opensearch create-domain \
      --domain-name my-domain \
      --engine-version OpenSearch_3.3 \
      --cluster-config InstanceCount=3,InstanceType=or2.large.search,DedicatedMasterEnabled=true,DedicatedMasterType=m6g.large.search,DedicatedMasterCount=3,WarmEnabled=true,WarmCount=3,WarmType=oi2.2xlarge.search \
      --ebs-options EBSEnabled=true,VolumeType=gp2,VolumeSize=11 \
      --node-to-node-encryption-options Enabled=true \
      --encryption-at-rest-options Enabled=true \
      --domain-endpoint-options EnforceHTTPS=true,TLSSecurityPolicy=Policy-Min-TLS-1-2-2019-07 \
      --advanced-security-options '{"Enabled":true,"InternalUserDatabaseEnabled":true,"MasterUserOptions":{"MasterUserName":"user_name","MasterUserPassword":"your_pass"}}' \
      --access-policies '{"Version": "2012-10-17",		 	 	  "Statement":[{"Effect":"Allow","Principal":"*","Action":"es:*","Resource":"*"}]}' \
      --region us-east-1
```

#### ステップ 2: ウォームノードを検証する
<a name="multi-tier-step2"></a>

```
aws opensearch describe-domain-nodes --domain-name my-domain --region us-east-1
```

サンプルレスポンス (抜粋):

```
{
      "NodeType": "Warm",
      "InstanceType": "oi2.large.search",
      "NodeStatus": "Active"
    }
```

### 階層移行の管理
<a name="multi-tier-managing"></a>

多層ドメインは以下をサポートします。
+ 簡素化されたエクスペリエンスのための新しい階層化 APIs 
+ 互換性のためのレガシー UltraWarm APIs 

#### 新しい階層化 APIs
<a name="multi-tier-new-apis"></a>

**インデックスをウォームに移行します。**

```
curl -XPOST 'https://localhost:9200/index-name/_tier/warm'
```

レスポンス:

```
{"acknowledged": true}
```

**インデックスをホットに移行します。**

```
curl -XPOST 'https://localhost:9200/index-name/_tier/hot'
```

レスポンス:

```
{"acknowledged": true}
```

**階層化ステータスを確認します。**

```
curl -XGET 'https://localhost:9200/index-name/_tier'
```

レスポンスの例:

```
{
      "tiering_status": {
         "index": "index-name",
         "state": "RUNNING_SHARD_RELOCATION",
         "source": "HOT",
         "target": "WARM",
         "start_time": 1745836500563,
         "shard_level_status": {
           "running": 0,
           "total": 100,
           "pending": 100,
           "succeeded": 0
         }
      }
    }
```

**詳細なシャードビュー:**

```
curl 'https://localhost:9200/index1/_tier?detailed=true'
```

**進行中の移行をすべて一覧表示する (テキスト):**

```
curl 'https://localhost:9200/_tier/all'
```

**進行中の移行 (JSON) をすべて一覧表示します。**

```
curl 'https://localhost:9200/_tier/all?format=json'
```

**ターゲット階層でフィルタリング:**

```
curl 'https://localhost:9200/_tier/all?target=_warm'
```

#### 互換性のためのレガシー UltraWarm APIs
<a name="multi-tier-legacy-apis"></a>

**ウォームに移行する:**

```
curl -XPOST localhost:9200/_ultrawarm/migration/index2/_warm
```

**ホットへの移行:**

```
curl -XPOST localhost:9200/_ultrawarm/migration/index2/_hot
```

**ステータスを確認します。**

```
curl -XGET localhost:9200/_ultrawarm/migration/index2/_status
```

### セキュリティ設定
<a name="multi-tier-security"></a>

既存の Amazon OpenSearch Service ドメインで多層ストレージを有効にした場合、`storage_tiering_manager`ロールはドメインで定義されていない可能性があります。きめ細かなアクセスコントロールを使用してドメインのウォームインデックスを管理するには、管理者以外のユーザーがこのロールにマッピングされている必要があります。`storage_tiering_manager` ロールを手動で作成するには、以下のステップを実行します。

1. OpenSearch Dashboards で、**[セキュリティ]** に進み、**[許可]** を選択します。

1. [**アクショングループの作成**] を選択し、以下のグループを設定します。    
[See the AWS documentation website for more details](http://docs.aws.amazon.com/ja_jp/opensearch-service/latest/developerguide/multi-tier-storage.html)

1. **[ロール]**、**[ロールの作成]** の順に選択します。

1. ロールに `storage_tiering_manager` という名前を付けます。

1. **クラスターの許可** では、`storage_tiering_cluster` および `cluster_monitor` を選択します。

1. [**インデックス**] では、`*` と入力します。

1. **インデックスのアクセス許可**については、`storage_tiering_index_read`、、`storage_tiering_index_write`および を選択します`indices_monitor`。

1. **[作成]** を選択します。

1. ロールを作成したら、多層インデックスを管理する任意のユーザーまたはバックエンドロールにマッピングします。

### ベストプラクティス
<a name="multi-tier-best-practices"></a>

Amazon OpenSearch Service ドメインに多層ストレージを実装するときは、次のベストプラクティスを考慮してください。
+ データアクセスパターンを定期的に見直して階層の割り当てを最適化する
+ パフォーマンスメトリクスをモニタリングして、効率的なリソース使用率を確保する
+ 新しい階層化 APIs を使用してデータ移行をきめ細かく制御する

### メトリクスのモニタリング
<a name="multi-tier-metrics"></a>

多層ストレージドメインは、ウォーム階層のパフォーマンスをモニタリングするための追加のメトリクスを提供します。これらのメトリクスには、既存の UltraWarm メトリクスと OpenSearch Optimized Instances アーキテクチャに固有の新しいメトリクスの両方が含まれます。

#### 新しいメトリクス
<a name="multi-tier-new-metrics"></a>


| メトリクス名 | ノードレベルの統計 | クラスターレベルの統計 | 詳細度 | 
| --- | --- | --- | --- | 
| WarmIndexingLatency | 平均 | 平均 | 1 分 | 
| WarmIndexingRate | 平均 | Average、Maximum、Sum | 1 分 | 
| WarmThreadpoolIndexingQueue | 最大値 | 合計、最大、平均 | 1 分 | 
| WarmThreadpoolIndexingRejected | 最大値 | 合計 | 1 分 | 
| WarmThreadpoolIndexingThreads | 最大値 | 合計、平均 | 1 分 | 