一、安装
前提是你先安装好了elasticseach,安装过程在我上一篇博客有说,可以看一下。
在elasticsearch容器启动的情况下,进入到elasticsearch容器,Elasticsearch_sql仓库,比如我的版本是8.11.2,那么我就选择对应的命令。
docker exec -it elasticsearch bash
进入到elasticsearch容器以后执行以上命令即可。
执行完毕以后记得重启elasticsearch和kibana,然后看一下插件安装成功没有,
查看插件是否安装成功的命令是,首先进去elasticsearch的docke容器里面,然后执行以下命令
elasticsearch-plugin list
可以看到一个sql就代表安装成功了。
二、使用
数据导入
PUT /library/_bulk?refresh
{"index":{"_id": "Leviathan Wakes"}}
{"name": "Leviathan Wakes", "author": "James S.A. Corey", "release_date": "2011-06-02", "page_count": 561}
{"index":{"_id": "Hyperion"}}
{"name": "Hyperion", "author": "Dan Simmons", "release_date": "1989-05-26", "page_count": 482}
{"index":{"_id": "Dune"}}
{"name": "Dune", "author": "Frank Herbert", "release_date": "1965-06-01", "page_count": 604}
查询
# 查询
POST /_sql?format=txt
{
"query": "SELECT * FROM library WHERE release_date < '2000-01-01'"
}
# 转化,将sql转化为es,我感觉这个转化是不全的,肯定是有后期处理
POST /_sql/translate
{
"query": "SELECT * FROM library WHERE release_date < '2000-01-01'"
}
Elasticsearch_sql的是使用我参考了这篇文章这里面讲的很详细,目前我只用到了以上我提到的内容,更多需求请看这篇文章
参考文献:https://blog.csdn.net/dgl199203118/article/details/127066820