最近更新时间:2024.02.26 17:34:53
首次发布时间:2024.01.09 20:51:22
企业级 SQL 分析节点启用后,您可以在本地 MySQL 客户端连接 SQL 分析节点(数据库服务),然后可以通过外表方式查询分析实例中的索引数据。
目前 ES 6.7.1 版本实例暂不支持企业级 SQL 分析节点。
在本地 MySQL 客户端连接 SQL 分析节点时,需要提前完成以下准备工作:
在 Dev Tools 页面,执行以下命令,创建索引。
PUT sql-demo { "settings":{ "number_of_shards":3, "number_of_replicas":1 }, "mappings":{ "properties":{ "k1":{"type":"long"}, "k2":{"type":"date"}, "k3":{"type":"keyword"}, "k4":{"type":"text", "analyzer":"standard"}, "k5":{"type":"keyword"} } } }
在 Dev Tools 页面,执行以下命令,往索引中写入数据。
POST /_bulk { "index": { "_index": "sql-demo", "_id": "1" } } {"k1":"20240119","k2":"2024-01-19","k3":"Document test","k4":"This is the first message.","k5":"user A"} { "index": { "_index": "sql-demo", "_id": "2" } } {"k1":"20240119","k2":"2024-01-19","k3":"Document test","k4":"This is the second message.","k5":"user B"}
在本地命令行工具中,执行以下命令,连接数据库服务。
mysql -h{HOST} -P{PORT} -uadmin -p{PASSWORD}
创建数据库。
CREATE DATABASE IF NOT EXISTS sqlDemo_DB;
创建外表。
USE sqlDemo_DB;
说明
外表的 Schema 需要和实例中目标索引的字段信息保持一致。
CREATE EXTERNAL TABLE `es_table` ( `k1` bigint(20) COMMENT "", `k2` datetime COMMENT "", `k3` varchar(20) COMMENT "", `k4` varchar(100) COMMENT "", `k5` varchar(20) COMMENT "" ) ENGINE=ELASTICSEARCH PROPERTIES ( "hosts" = "https://es-data-svc-0080c**.o-0080c**:9200", "index" = "sql-demo", "user" = "admin", "password" = "Pwd@XXX", "http_ssl_enabled" = "true" );
http(s)://es-data-svc-{实例ID后缀}.{完整的实例ID}:9200
,示例值为https://es-data-svc-0081**.o-0081**:9200
。说明
如果实例切换传输协议、重置外表用户密码,将会导致已经在 SQL 分析节点中创建的外表将无法继续使用,您需要重新创建外表才可以继续查询分析索引数据。
(可选)查询新建表是否存在。
SHOW TABLES;
查询表格数据,判断是否返回索引中的文档数据。
SELECT * FROM es_table;