SQL を用いた Amazon OpenSearch Service のデータのクエリを行う - Amazon OpenSearch サービス

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

SQL を用いた Amazon OpenSearch Service のデータのクエリを行う

JSON ベースの OpenSearch クエリ DSL を使用するのではなく、SQL を使用して Amazon OpenSearch Service のクエリを行うことができます。SQL を用いたクエリの実施は、その言語にすでに精通している場合や、それを使用するアプリケーションにドメインを統合する場合に役立ちます。

次のテーブルを使用して、OpenSearch および Elasticsearch の各バージョンでサポートされている SQL プラグインのバージョンを見つけます。

OpenSearch
OpenSearch バージョン SQL プラグインバージョン 注目すべき機能
2.11.0 2.11.0.0

PPL 言語とクエリのサポートを追加

2.9.0 2.9.0.0

Spark コネクターを追加し、テーブル関数と PromQL 関数をサポートします

2.7.0 2.7.0.0

datasource API を追加

2.5.0 2.5.0.0

2.3.0 2.3.0.0

maketime および makedate 日時関数を追加

1.3.0 1.3.0.0

デフォルトのクエリ制限サイズと、値リスト内から選択する IN 句をサポート

1.2.0 1.2.0.0

可視化応答形式の新しいプロトコルを追加

1.1.0

1.1.0.0

SQL と PPL のフィルターとしてマッチ機能をサポートする

1.0.0 1.0.0.0 データストリームのクエリをサポートする
Open Distro for Elasticsearch
Elasticsearch バージョン SQL プラグインバージョン 注目すべき機能
7.10 1.13.0 Window 関数の NULL FIRST および LAST、CAST() 関数、SHOW、および DESCRIBE コマンド
7.9 1.11.0 追加の日付/時刻関数、ORDER BY キーワードの追加
7.8 1.9.0
7.7 1.8.0

7.3

1.3.0 複数の文字列および数値演算子
7.1 1.1.0

SQL サポートは、OpenSearch または Elasticsearch 6.5 以降を実行しているドメインで利用できます。SQL プラグインの完全なドキュメントは「OpenSearch ドキュメント」で入手できます。

サンプル呼び出し

SQL を用いてデータのクエリを行うには、次の形式を使用して _sql に HTTP リクエストを送信します。

POST domain-endpoint/_plugins/_sql { "query": "SELECT * FROM my-index LIMIT 50" }
注記

ドメインが OpenSearch ではなく Elasticsearch を実行している場合、フォーマットは _opendistro/_sql になります。

注意と相違点

_plugins/_sql の呼び出しではリクエストボディにインデックス名が含まれるため、バルク、mget、および msearch オペレーションと同じアクセスポリシーの考慮事項が適用されます。これまでどおり、API オペレーションにアクセス許可を付与するときは、最小権限の原則に従う必要があります。

きめ細かなアクセスコントロールでの SQL の使用に関連するセキュリティ上の考慮事項については、「Amazon OpenSearch Service でのきめ細かなアクセスコントロール」を参照してください。

OpenSearch SQL プラグインには、多くの調整可能な設定があります。OpenSearch Service では、プラグイン設定のパス (_plugins/_query/settings) ではなく、_cluster/settings パスを使用します。

PUT _cluster/settings { "transient" : { "plugins.sql.enabled" : true } }

従来の Elasticsearch ドメインの場合、pluginsopendistro に置き換えます。

PUT _cluster/settings { "transient" : { "opendistro.sql.enabled" : true } }

SQL Workbench

SQL Workbench は、オンデマンド SQL クエリの実行、SQL から REST への変換を行えるほか、テキスト、JSON、JDBC、または CSV として結果を表示および保存できる OpenSearch Dashboards ユーザーインターフェイスです。詳細については、「クエリワークベンチ」を参照してください。

SQL CLI

SQL CLI は、opensearchsql コマンドで起動できるスタンドアロンの Python アプリケーションです。インストール、構成、および使用のステップについては、「SQL CLI」を参照してください。

JDBC ドライバー

Java Database Connectivity (JDBC) ドライバーにより、OpenSearch Service ドメインをお気に入りのビジネスインテリジェンス (BI) アプリケーションに統合できます。ドライバーをダウンロードするには、こちらをクリックしてください。詳細については、GitHub リポジトリを参照してください。

ドライバー用のバージョン互換性の概要を、次のテーブルに示します。

OpenSearch
OpenSearch バージョン JDBC ドライバーバージョン
2.11 1.1.0.1
2.9 1.1.0.1
2.7 1.1.0.1
2.5 1.1.0.1
2.3 1.1.0.1
1.3 1.1.0.1
1.2 1.1.0.1
1.1 1.1.0.1
1.0 1.1.0.1
Open Distro for Elasticsearch
Elasticsearch バージョン JDBC ドライバーバージョン
7.10 1.13.0
7.9 1.11.0
7.8 1.9.0
7.7 1.8.0
7.4 1.4.0
7.1 1.0.0
6.8 0.9.0
6.7 0.9.0
6.5 0.9.0

ODBC ドライバー

Open Database Connectivity (ODBC) ドライバーは、Windows と macOS 用の、読み取り専用の ODBC ドライバーです。これを使用すれば、Microsoft Excel のようなビジネスインテリジェンスやデータ可視化のアプリケーションを SQL プラグインに接続できます。

OpenSearch のアーティファクトページ から、作業用ドライバーファイルの例をダウンロードできます。ドライバーのインストールの詳細については、GitHub の SQL リポジトリ を参照してください。