本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用 SQL 查询您的 Amazon OpenSearch Service 数据
您可以使用 SQL 查询您的 Amazon OpenSearch Service,而不是使用基于 JSON 的 OpenSearch 查询 DSL
注意
本文档介绍了 OpenSearch Service 与各种版本的 SQL 插件以及 JDBC 和 ODBC 驱动程序之间的版本兼容性。有关基本和复杂查询、函数、元数据查询和聚合函数的语法信息,请参阅开源 OpenSearch 文档
使用下表查找每个 OpenSearch 和 Elasticsearch 版本支持的 SQL 插件版本。
OpenSearch 版本 | SQL 插件版本 | 显著功能 |
---|---|---|
2.13.0 | 2.13.0.0 |
|
2.11.0 | 2.11.0.0 |
添加对 PPL 语言和查询的支持 |
2.9.0 | 2.9.0.0 |
添加 Spark 连接器,支持表和 PromQL 函数 |
2.7.0 | 2.7.0.0 |
添加 |
2.5.0 | 2.5.0.0 |
|
2.3.0 | 2.3.0.0 |
添加 |
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 |
支持查询数据流 |
调用示例
若要使用 SQL 查询数据,请使用以下格式将 HTTP 请求发送至 _sql
:
POST
domain-endpoint
/_plugins/_sql { "query": "SELECT * FROM my-index LIMIT 50" }
注意
如果您的域运行的是 Elasticsearch 而不是 OpenSearch,那么格式为 _opendistro/_sql
。
说明和差异
对 _plugins/_sql
的调用在请求正文中包含索引名称,因此与 bulk、mget 和 msearch 操作具有相同的访问策略注意事项。与往常一样,在向 API 操作授予权限时,请遵循最低特权原则。
有关将 SQL 与精细访问控制结合使用的安全注意事项,请参阅 在 Amazon OpenSearch Service 中进行精细访问控制。
OpenSearch SQL 插件包括许多可优化的设置_cluster/settings
路径,而不是插件设置路径 (_plugins/_query/settings
):
PUT _cluster/settings { "transient" : { "plugins.sql.enabled" : true } }
对于旧式 Elasticsearch 域,请将 plugins
替换为 opendistro
:
PUT _cluster/settings { "transient" : { "opendistro.sql.enabled" : true } }
SQL Workbench
SQL Workbench 是一个 OpenSearch 控制面板用户界面,让您可运行按需 SQL 查询、将 SQL 转换为等效 REST,以及查看结果并将结果保存为文本、JSON、JDBC 或 CSV 格式。有关更多信息,请参阅查询 Workbench
SQL CLI
SQL CLI 是一个独立的 Python 应用程序,您可以使用 opensearchsql
命令启动该应用程序。有关安装、配置和使用步骤,请参阅 SQL CLI
JDBC 驱动程序
通过 Java 数据库连接 (JDBC) 驱动程序,您可以将 OpenSearch Service 域与您最喜欢的商业智能 (BI) 应用程序集成。要下载驱动程序,请单击此处
下表汇总了驱动程序的版本兼容性。
ODBC 驱动程序
开放式数据库连接 (ODBC) 驱动程序是针对 Windows 和 macOS 的只读 ODBC 驱动程序,让您可将 Microsoft Excel
您可以在 OpenSearch 构件页面