Elasticsearch 2.3.3 搜索引擎的elasticsearch-jdbc插件安裝

Elasticsearch 2.3.3的jdbc插件安裝跟以前的版本是不同的,以前的版本,網上的內容介紹的都是elasticsearch使用river同步mysql數據 ,哪些都是老的文章了,最新的版本是不適用的。那麼咱們如何從數據庫導入數據呢?其實安裝 Elasticsearch 2.3.3 的JDBC插件很簡單,只不過,安裝完之後的配置,稍微有些麻煩。java

第一步:下載JDBC連接包mysql

具體能夠執行下面的命令:git

wget http://xbib.org/repository/org/xbib/elasticsearch/importer/elasticsearch-jdbc/2.3.3.0/elasticsearch-jdbc-2.3.3.0-dist.zip

第二步: 解壓 elasticsearch-jdbc-2.3.3.0-dist.zipgithub

unzip elasticsearch-jdbc-2.3.3.0-dist.zip

第三步:進入elasticsearch-jdbc-2.3.3.0/bin目錄sql

咱們看到下面有不少連接數據庫的樣例文件。數據庫

咱們以MSYQL爲例,作一個基本的介紹。json

第四步:編輯mysql-blog.sh,修改爲以下的樣子。bash

#!/bin/sh

DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
bin=${DIR}/../bin
lib=${DIR}/../lib

echo '
{
    "type" : "jdbc",
    "jdbc" : {
        "url" : "jdbc:mysql://192.168.1.100:3306/hotel?useUnicode=true&characterEncoding=gbk",
        "statefile" : "statefile.json",
        "user" : "root",
        "password" : "root",
        "sql" : "select * from hotel",
        "index" : "hotel",
        "type" : "hotel",
        "elasticsearch" : {
             "cluster" : "elasticsearch",
             "host" : "192.168.133.134",
             "port" : 9300 
        }   
    }
}
' | java \
    -cp "${lib}/*" \
    -Dlog4j.configurationFile=${bin}/log4j2.xml \
    org.xbib.tools.Runner \
    org.xbib.tools.JDBCImporter

上述腳本的意思是:連接192.168.1.100這個機器上的hotel數據庫,將此數據庫中的hotel數據所有導入到hotel索引中。導入的集羣名稱是elasticsearch,搜索引擎訪問地址是192.168.133.132.elasticsearch

第五步,結合以前的內容,咱們搭建了 elasticsearch 集羣,可是沒有創建索引。oop

咱們能夠再head插件中新建索引.

索引建立成功後,咱們能夠在 「概覽」裏面看到新建的索引。

 

暫且不表分片和複製。咱們看到咱們成功了建立了一個hotel索引,目前索引中文檔個數爲0.

第六步,執行剛纔修改的mysql-blog.sh腳本。

執行以前肯定你的Mysql數據庫已經啓動,而且數據庫的連接帳號和密碼存在。

個人數據庫中是5W條酒店的數據。

腳本執行完成後,5W條數據從導入到索引建立完成,大約是2分鐘,速度仍是蠻快的。,咱們再次查看head插件,能夠看到,文件個數已經發生了變化。

好了,本篇文章就寫到這裏,其實ElasticSerach-jdbc導入數據還有不少的參數。

你們能夠看https://github.com/jprante/elasticsearch-jdbc 文章,或者點擊連接觀看 數航教育的在線視頻教程

相關文章
相關標籤/搜索