千家信息网

用SQL查询Elasticsearch的插件Elasticsearch-sql怎么用

发表于:2025-12-04 作者:千家信息网编辑
千家信息网最后更新 2025年12月04日,本篇文章为大家展示了用SQL查询Elasticsearch的插件Elasticsearch-sql怎么用,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。Elas
千家信息网最后更新 2025年12月04日用SQL查询Elasticsearch的插件Elasticsearch-sql怎么用

本篇文章为大家展示了用SQL查询Elasticsearch的插件Elasticsearch-sql怎么用,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

Elasticsearch的查询语言(DSL)真是不好写,偏偏查询的功能千奇百怪,filter/query/match/agg/geo各种各样,不管你是通过封装JSON还是通过python/java的api进行封装,都非常不方便。

最近发现了一个插件,Elasticsearch-SQL可以用sql查询Elasticsearch,感觉这个轮子造的真是好。

Elasticsearch-sql的项目地址:https://github.com/NLPchina/elasticsearch-sql

1、简介

Elasticsearch-sql实现的功能:

1)插件式的安装

2)SQL查询

3)超越SQL之外的查询

4)对JDBC方式的支持

2、插件式的安装

安装方法和elasticsearch-head的安装方法类似:

我们使用的es版本是2.1.1,如果你用的是不同的版本,可以在https://github.com/NLPchina/elasticsearch-sql找到支持。

$ cd ~/elasticsearch-2.1.1

$./bin/plugin install https://github.com/NLPchina/elasticsearch- sql/releases/download/2.1.1.1/elasticsearch-sql-2.1.1.1.zip

如果成功,命令行打印如下东东:

[bigdata-dw@bigdata-arch-client10 es2.1.1]$ ./bin/plugin install https://github.com/NLPchina/elasticsearch-sql/releases/download/2.1.1.1/elasticsearch-sql-2.1.1.1.zip

-> Installing from https://github.com/NLPchina/elasticsearch-sql/releases/download/2.1.1.1/elasticsearch-sql-2.1.1.1.zip...

Trying https://github.com/NLPchina/elasticsearch-sql/releases/download/2.1.1.1/elasticsearch-sql-2.1.1.1.zip ...

Downloading .................................................................................................................................................................................................................................................................................................................................................................................................................................................................DONE

Verifying https://github.com/NLPchina/elasticsearch-sql/releases/download/2.1.1.1/elasticsearch-sql-2.1.1.1.zip checksums if available ...

NOTE: Unable to verify checksum for downloaded plugin (unable to find .sha1 or .md5 file to verify)

Installed sql into /home/bigdata-dw/es2.1.1/plugins/sql

3、SQL查询

安装成功以后我们就可以通过sql查询ES了。

es-sql还提供了web页面,访问方式是http://10.93.18.34:9200/_plugin/sql/(如果你使用head,那么你的head访问应该是http://10.93.18.34:9200/_plugin/head/)

这里的ip和port是你安装es的主机和http端口。

访问到的页面是这样的

那么你现在有两种方式可以执行你的SQL:

1)在搜索框里直接输入你的sql了。(我的版本行尾不要写";"否则会解析不了SQL)

2)通过http请求如

curl -XPOST http://10.93.18.34:8049/_sql -d 'SELECT * FROM audit where dDelay=-2053867461'

你会收到一个json格式的返回

{

"took": 2,

"timed_out": false,

"_shards": {

"total": 5,

"successful": 5,

"failed": 0

},

"hits": {

"total": 1,

"max_score": 12.549262,

"hits": [{

"_index": "audit",

"_type": "kafka",

"_id": "AVzzK-h_V9seINxbZ2Ox",

"_score": 12.549262,

"_source": {

"timestamp": "1498726500000",

"dCount": 680008,

"dDelay": -2053867461,

"cDelay": 0,

"clanName": "DJ_elk_common",

"checkTime": 1498728360063,

"cCount": 0,

"pCount": 680008,

"topicName": "DJ_elk_common_clean",

"pDelay": 370356423

}

}]

}

}

下面我们简单说4种类型的sql的书写方式:

1)query

SELECT * FROM bank WHERE age >30 AND gender = 'm'

2)aggregation

select COUNT(*),SUM(age),MIN(age) as m, MAX(age),AVG(age)

FROM bank GROUP BY gender ORDER BY SUM(age), m DESC

3)delete

DELETE FROM bank WHERE age >30 AND gender = 'm'

4)geo

SELECT * FROM locations WHERE GEO_BOUNDING_BOX(fieldname,100.0,1.0,101,0.0)

5)需要指定index+type

SELECT * FROM indexName/type

6)如何指定路由

select /*! ROUTINGS(salary) */ sum(count) from index where type="salary"

4、对JDBC的支持

上述查询方式不管是直接在web上输入sql还是通过http请求。elasticsearch-sql还支持通过jdbc进行编程。

上述内容就是用SQL查询Elasticsearch的插件Elasticsearch-sql怎么用,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注行业资讯频道。

查询 插件 方式 支持 版本 成功 内容 功能 技能 方法 知识 还是 页面 封装 输入 不同 简明 千奇百怪 简明扼要 不好 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 fivem最火服务器 远程服务器下载文件 单台数据库有事物问题吗 计算机网络技术全部都要学吗 广州纵云网络技术有限公司 mose管理服务器 服务器受攻击CPU负荷 涞源县恩科网络技术有限公司 日照数据库培训机构 电商网络安全默认协议 山东齐鲁大学网络安全学院官网 花生壳怎么连内网数据库 中国名家百科数据库一一谭发社 对网络安全有什么感想 怪物猎人ol华南服务器 服务器管理软件dell 软件开发与销售属于哪个行业 数据库登录时服务器是什么 达梦数据库这家公司怎么样 嘉定区智能软件开发 开展学生网络安全培训 网络安全辩论辩题正方 云博计算机软件开发有限公司 ps5港版原神无法登录服务器 好的配送软件开发 学计算机网络技术学费 连接苹果服务器失败 服务器自动锁定屏幕怎么设置 达梦数据库这家公司怎么样 热血传奇手游服务器版
0