码迷,mamicode.com
首页 > 数据库 > 详细

logstash 从数据库同步数据

时间:2016-05-03 17:51:33      阅读:4121      评论:0      收藏:0      [点我收藏+]

标签:

背景:目前业务中有个数据库数据大道3亿左右。如果直接从数据库进行查询,等待时间超过15分钟,用户很多时候想查看数据,只能写SQL在数据库中直接查询喝几杯茶后,结果还没出来。用户看到我们项目中使用到ES集群,于是希望将数据库中的数据同步到ES集群中。

软件版本:logstash-2.2.2 ,Elasticsearch-2.2.1。

1 、安装logstash-input-mysql插件

 ./bin/logstash install logstash-input-jdbc-3.0.0.gem

2、配置文件

input {

  jdbc {

    jdbc_driver_library => "/software/logstash-2.2.2/jdbc/ojdbc6.jar"

    jdbc_driver_class => "Java::oracle.jdbc.driver.OracleDriver"

    jdbc_connection_string => "jdbc:oracle:thin:@192.168.118.115:1521:orcl"

    jdbc_user => "system"

    jdbc_password => "Manager123"

jdbc_page_size => 20

jdbc_fetch_size => 1000

    jdbc_paging_enabled => true

    schedule => "0/5 * * * *"

    statement => "SELECT id,user_Name,terminal_id  FROM OPERATION_LOG where id>= :sql_last_value order by user_id AND
operation_time <:sql_last_value + 1000000  
 clean_run => false record_last_run => true use_column_value => true tracking_column => user_id last_run_metadata_path => "/software/logstash-2.2.2/logstash_jdbc_last_oracle_run" } } output { stdout{ codec=>rubydebug{} } elasticsearch{ index=>”julong-%{+yyyy.MM.dd}” hosts=>”10.64.252.104:9200” } }

说明:用户数据库中主键ID为自增长类型。  

至此,配置已经完成。数据入到ES 后,在单个包含7000W+ 数据中查询,0.3秒左右便能查出结果。

转载请标明出处!

logstash 从数据库同步数据

标签:

原文地址:http://www.cnblogs.com/tyb1222/p/5455638.html

(0)
(1)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!