翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
OpenSearch Service における Amazon S3 データのダイレクトクエリ
このセクションでは、Amazon OpenSearch Service でデータソース統合を作成および設定するプロセスについて説明します。これにより、Amazon S3 に保存されているデータを効率的にクエリおよび分析できます。
以下のページでは、 AWS マネジメントコンソール と OpenSearch Service API の両方を使用して、Amazon S3 ダイレクトクエリデータソースをセットアップし、必要な前提条件を操作して、段階的な手順に従う方法について説明します。また、 AWS Glue Data Catalog ロールのマッピングや OpenSearch Dashboards でのアクセス制御の設定など、重要な次のステップについても説明します。
トピック
料金
Amazon OpenSearch Service は、Amazon S3 ダイレクトクエリに対して OpenSearch Compute Unit (OCU) の料金を提供します。 Amazon S3 直接クエリを実行すると、1 時間あたりの OCUs の料金が発生し、請求には DirectQuery OCU の使用タイプとして表示されます。また、データストレージには Amazon S3 とは別の料金が発生します。
ダイレクトクエリには、インタラクティブビュークエリとインデックス付きビュークエリの 2 つのタイプがあります。
-
インタラクティブクエリは、データセレクタに入力し、Amazon S3 のデータに対して分析を実行するために使用されます。Discover から新しいクエリを実行すると、OpenSearch Service は最低 3 分間続く新しいセッションを開始します。OpenSearch Service は、後続のクエリが迅速に実行されるように、このセッションをアクティブに維持します。
-
インデックス付きビュークエリは、コンピューティングを使用して OpenSearch Service のインデックス付きビューを維持します。これらのクエリは通常、名前付きインデックスに取り込むデータ量が一定でないため、処理に時間がかかります。Amazon S3 データソースの場合、インデックス化されたデータは、購入したインスタンスタイプに基づいてドメインに保存されます。
詳細については、「Amazon OpenSearch Service の料金
制限事項
Amazon S3 の直接クエリには、次の制限が適用されます。
-
S3 の直接クエリは、OpenSearch バージョン 2.13 以降を実行している OpenSearch Service ドメインでのみ使用でき、 へのアクセスが必要です AWS Glue Data Catalog。既存の AWS Glue Data Catalog テーブルは、OpenSearch Query Workbench で SQL を使用して再作成する必要があります。
-
S3 のダイレクトクエリでは、Amazon S3 でチェックポイントバケットを指定する必要があります。このバケットは、最終更新時間や最新の取り込みデータなど、インデックス付きビューの状態を維持します。
-
OpenSearch ドメイン と は同じ にある AWS Glue Data Catalog 必要があります AWS アカウント。S3 バケットは別のアカウントにあることができますが (IAM ポリシーに条件を追加する必要があります)、ドメイン AWS リージョン と同じ にある必要があります。
-
S3 での OpenSearch Service のダイレクトクエリは、Query Workbench から生成される Spark テーブルのみをサポートします。 AWS Glue Data Catalog または Athena 内で生成されたテーブルは、インデックス付きビューを維持するために必要な Spark ストリーミングではサポートされていません。
-
OpenSearch インスタンスタイプには、選択した特定のインスタンスタイプに応じて、10 MiB または 100 MiB のネットワークペイロード制限があります。
-
一部のデータ型はサポートされていません。サポートされるデータ型は、Parquet、CSV、および JSON に限定されます。
-
データの構造が時間の経過とともに変化する場合は、インデックス付きビューまたは追加設定なしの統合機能を、データの構造の変化に対応するように更新する必要があります。
-
AWS CloudFormation テンプレートはまだサポートされていません。
-
OpenSearch SQL ステートメントと OpenSearch PPL ステートメントは、OpenSearch インデックスを使用する場合とダイレクトクエリを使用する場合とでは制限が異なります。ダイレクトクエリでは、JOIN、サブクエリ、ルックアップなどの高度なコマンドがサポートされていますが、OpenSearch インデックスでのこれらのコマンドのサポートは制限されているか、存在していません。詳細については、「サポートされている SQL コマンドと PPL コマンド」を参照してください。
推奨事項
Amazon S3 で直接クエリを使用する場合は、以下をお勧めします。
-
年、月、日、時間のパーティション形式を使用してデータを Amazon S3 に取り込み、クエリを高速化します。
-
スキップインデックスを構築するときは、高いカーディナリティを持つフィールドにはブルームフィルターを使用し、値の範囲が広いフィールドには最小/最大インデックスを使用します。カーディナリティの高いフィールドでは、値ベースのアプローチを使用してクエリ効率を向上させることを検討してください。
-
インデックスステート管理を使用して、マテリアライズドビューとカバリングインデックスのストレージを維持します。
-
欠落している列を処理し、結果が返されるようにするには、
COALESCE SQL関数を使用します。 -
クエリの制限を使用して、データが多すぎないようにします。
クォータ
Amazon S3 データソースにクエリを実行するたびに、OpenSearch Service はセッションを開き、少なくとも 3 分間セッションを維持します。これにより、後続のクエリにおけるセッション開始時間がなくなり、クエリのレイテンシーが短縮されます。
| 説明 | 最大値 | 上書き可能 |
|---|---|---|
| ドメインあたりの接続数 | 10 | [Yes (はい)] |
| ドメインあたりのデータソース | 20 | はい |
| ドメインあたりのインデックス | 5 | はい |
| データソースあたりの同時実行セッション | 10 | [Yes (はい)] |
| クエリあたりの最大 OCU | 60 | はい |
| 最大クエリ実行時間 (分) | 30 | はい |
| アクセラレーションあたりの最大 OCU | 20 | はい |
| 最大エフェメラルストレージ | 20 | はい |
サポートされる AWS リージョン
Amazon S3 の直接クエリでは、以下 AWS リージョン がサポートされています。
-
アジアパシフィック (香港)
-
アジアパシフィック (ムンバイ)
-
アジアパシフィック (ソウル)
-
アジアパシフィック (シンガポール)
-
アジアパシフィック (シドニー)
-
アジアパシフィック (東京)
-
カナダ (中部)
-
欧州 (フランクフルト)
-
欧州 (アイルランド)
-
欧州 (ストックホルム)
-
米国東部 (バージニア北部)
-
米国東部 (オハイオ)
-
米国西部 (オレゴン)