SQL 支持 Amazon Elasticsearch Service - Amazon Elasticsearch Service
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

SQL 支持 Amazon Elasticsearch Service

SQL 对 Amazon Elasticsearch Service (Amazon ES) 的支持让您可使用 SQL 查询数据,而不是基于 JSON 的 Elasticsearch 查询 DSL。如果您已经熟悉 SQL 或想要将您的域与使用 SQL 的应用程序集成,则此功能将非常有用。

运行 Elasticsearch 6.5 或更高版本的域上提供 SQL 支持。相应的完整文档请查看 Open Distro for Elasticsearch 文档

调用示例

若要使用 SQL 查询数据,请使用以下格式将 HTTP 请求发送至 _opendistro/_sql

POST elasticsearch_domain/_opendistro/_sql { "query": "SELECT * FROM my-index LIMIT 50" }

说明和差异

_opendistro/_sql 的调用在请求正文中包含索引名称,因此与 bulk、mget 和 msearch 操作具有相同的访问策略注意事项。与往常一样,在向 API 操作授予权限时,请遵循最低特权原则

有关将 SQL 与精细访问控制结合使用的安全注意事项,请参阅 Amazon Elasticsearch Service 中的精细访问控制

Open Distro for Elasticsearch SQL 插件包括许多可优化的设置,但在 Amazon ES 上,使用 _opendistro/_sql/settings 路径而不是标准的 _cluster/settings 路径:

PUT _opendistro/_sql/settings { "persistent": { "opendistro.sql.cursor.enabled": true } }

Workbench

SQL Workbench 是一个 Kibana 用户界面,让您可运行按需 SQL 查询、将 SQL 转换为等效 REST,以及查看结果并将结果保存为文本、JSON、JDBC 或 CSV 格式。有关更多信息,请参阅 Workbench

SQL CLI

SQL CLI 是一个独立的 Python 应用程序,您可以使用 odfesql 命令启动该应用程序。有关安装、配置和使用步骤,请参阅 SQL CLI

JDBC 驱动程序

通过 Java 数据库连接 (JDBC) 驱动程序,您可以将 Amazon ES 域与您最喜欢的商业智能 (BI) 应用程序集成。要开始使用,请参阅 GitHub 存储库。下表汇总了该驱动程序的版本兼容性。

Elasticsearch 版本 JDBC 驱动程序版本
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 驱动程序

开放式数据库连接 (ODBC) 驱动程序是针对 Windows 和 macOS 的只读驱动程序,让您可将 Tableau 等 BI 应用程序连接到 SQL 插件。有关安装 ODBC 驱动程序并用以连接 Tableau 的步骤,请参阅 ODBC 驱动程序