ElastciSearch 與SQL整合(SQL插件)

1. 低版本ES,安裝SQL支持

  ES在6.5以及以上的版本才能夠使用SQL,因此以前演示的ES版本時6.2,不支持,這裏咱們換成6.5以上的版本。
官方文檔地址: https://www.elastic.co/guide/en/elasticsearch/reference/6.5/index.html
  固然若是這樣的話小編這篇文章的意義在哪?這裏咱們介紹如何讓ES6.5如下的版本能夠使用相似於SQL查詢的語句,去查詢索引庫。
  這裏咱們須要下載插件:https://github.com/NLPchina/elasticsearch-sql/tree/elastic6.2.0
  而後將下載的zip包上傳集羣中,而後執行:html

[elk@zzy bin]$ ./elasticsearch-plugin install https://github.com/NLPchina/elasticsearch-sql/releases/download/5.6.2.0/elasticsearch-sql-5.6.2.0.zip

執行以上命令會報出:
ElastciSearch 與SQL整合(SQL插件)
因此咱們只能苦逼的手動編譯:
因此這裏只能手動下載源碼進行,本地編譯,下載地址:https://github.com/NLPchina/elasticsearch-sql/archive/elastic6.2.0.zip
ES-SQL插件編譯:
① 下載解壓
ElastciSearch 與SQL整合(SQL插件)
② 查看BUILDING.md,進行本地編譯
ElastciSearch 與SQL整合(SQL插件)
執行:node

mvn clean package assembly:single -DskipTests

ElastciSearch 與SQL整合(SQL插件)
編譯成功以後:
ElastciSearch 與SQL整合(SQL插件)
在target目錄中有一個zip包:
ElastciSearch 與SQL整合(SQL插件)
修更名稱以後,上傳到集羣。c++

安裝sql插件
#查看此命令如何使用
[elk@zzy ~]$/applications/elasticsearch-6.2.0/bin/elasticsearch-plugin –help
#本地安裝插件
[elk@zzy ~]$ /applications/elasticsearch-6.2.0/bin/elasticsearch-plugin install file:./elasticsearch-sql-6.2.0.0.zip
注意:其中file是一個本地目錄。
此時一樣也爲報錯:
ElastciSearch 與SQL整合(SQL插件)
因此只能將這個zip插件包解壓,放入ES_HOME/pluginsgit

[elk@zzy ~]$ unzip elasticsearch-sql-6.2.0.0.zip
[elk@zzy ~]$ mv elasticsearch-sql-6.2.0.0/ /applications/elasticsearch-6.2.0/plugins/

最後,重啓ES!
此時一樣會報錯:
ElastciSearch 與SQL整合(SQL插件)
這是由於由於版本的問題,es沒法識別插件配置文件中的jvm和site兩個參數,只須要將對應插件中的參數刪除便可。
ElastciSearch 與SQL整合(SQL插件)
而後在啓動ES:
ElastciSearch 與SQL整合(SQL插件)
能夠看點ES已經加載相應的SQL插件!
測試:
在瀏覽器中執行:
http://nodeIP:9200/_sql?sql=select from indexName limit 10
例如小編這裏是:
http://192.168.130.131:9200/_sql?sql=select
from library limit 10 &prettygithub

ElastciSearch 與SQL整合(SQL插件)
這裏SQL插件就安裝成功!!!sql

2. 低版本ES,安裝Web界面查詢安裝

① 下載相應插件
https://github.com/NLPchina/elasticsearch-sql/releases/download/5.4.1.0/es-sql-site-standalone.zip
上傳至集羣,解壓:unzip es- sql-site-standalone.zip
ElastciSearch 與SQL整合(SQL插件)
而後執行:express

cd site-server
npm install express --save
node node-server.js

相應問題解決
 沒有nmp命令:npm

[elk@zzy site-server]$ sudo yum -y install gcc make gcc-c++ openssl-devel wget
[elk@zzy site-server]$ sudo wget http://nodejs.org/dist/v0.10.26/node-v0.10.26.tar.gz
[elk@zzy site-server]$ sudo tar zxvf http://nodejs.org/dist/v0.10.26/node-v0.10.26.tar.gz
[elk@zzy ~]$ cd node-v0.10.26/  
[elk@zzy ~]$ make && make install  #編譯
[root@zzy node-v0.10.26]# npm -v  #查看是否安裝成功

最後訪問節點的192.168.130.131:8080端口:
ElastciSearch 與SQL整合(SQL插件)
到此安裝成功!!!瀏覽器

相關文章
相關標籤/搜索