ElasticSearch从mysql

时间:2016-11-21 09:52:30

标签: elasticsearch lucene

今天我已经开始研究Elastic Search了,在我的上一个项目中,我已经在Solr中进行了搜索,我从mysql导入数据,这非常简单。

现在我必须在弹性搜索中做同样的工作,并成功完成了我按照"https://github.com/jprante/elasticsearch-jdbc#quick-links"开始工作的设置,但收到了错误。

  

java.lang.IllegalStateException:收到来自不受支持的版本的消息:[2.0.0]最小兼容版本为:[5.0.0]

我正在使用弹性搜索版本5.0.0并使用最大可用版本的"wget http://xbib.org/repository/org/xbib/elasticsearch/importer/elasticsearch-jdbc/2.3.4.0/elasticsearch-jdbc-2.3.4.0-dist.zip"

请就此提出建议。

1 个答案:

答案 0 :(得分:1)

您可以使用logstash配置中的jdbc插件将数据上传到索引,然后确保您可以根据需要添加调度程序来继续更新数据。

您的logstash配置可能如下所示:

input {
  jdbc {
    jdbc_driver_library => "/mysql-connector-java-5.1.39-bin.jar"
    jdbc_driver_class => "com.mysql.jdbc.Driver"
    jdbc_connection_string => "jdbc:mysql://localhost:3306/database_name"
    jdbc_user => "root"
    jdbc_password => "password"
    schedule => "* * * * *"
    statement => "select * from table1"
    type => "table1"
  }
}
output {
    elasticsearch {
        index => "testdb"
        document_type => "%{type}"   # <- use the type from each input
        hosts => "localhost:9200"
    }
}