本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用 SQL 查询您的亚马逊 OpenSearch 服务数据
您可以使用 SQL 来查询您的亚马逊 OpenSearch 服务,而不必使用基于 JSON 的OpenSearch 查询
注意
本文档描述了 OpenSearch 服务与各种版本的 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 。
S OpenSearch QL 插件包含许多可调整的设置_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 服务域与您最喜欢的商业智能 (BI) 应用程序集成。要下载驱动程序,请单击此处
下表汇总了驱动程序的版本兼容性。
ODBC 驱动程序
开放式数据库连接 (ODBC) 驱动程序是针对 Windows 和 macOS 的只读 ODBC 驱动程序,让您可将 Microsoft Excel
您可以在 OpenSearch 构件页面