Elasticsearch—用logstash增量导入Mysql数据
前言:
logstash是什么?为什么需要logstash?援引官网的介绍:Logstash 是开源的服务器端数据处理管道,能够同时从多个来源采集数据,转换数据,然后将数据发送到您喜欢的 “存储库” 中。(我们的存储库当然是 Elasticsearch。)
简单来说,logstash就是用于将不同来源的数据(如JDBC、http网络、kafka、log4j日志等)统一管理,输入到Elasticsearch中,以作为整个搜索引擎的数据源。例如:存储在Mysql中 的数据,可以用JDBC来导入到Elasticsearch中(需要安装logstash-input-jdbc插件),还可以设置定时任务,支持增量导入等。
本文主要介绍logstash-input-jdbc插件的安装,以及简单的.conf配置文件,实现执行定时任务,从Mysql增量导入数据到Elasticsearch的简单效果。
1.安装logstash-input-jdbc
首先,在安装好Elasticsearch的环境中,装logstash,下载按照官网的步骤来就可以。logstash是一个数据导入工具,支持多种数据源导入到Elasticsearch中,导入不同的数据源需要用到不同的插件,要想导入Mysql的数据到Elasticsearch,需要安装插件——logstash-input-jdbc。
Elasticsearch、logstash下载地址:https://www.elastic.co/downloads
插件github地址:logstash-plugins/logstash-input-jdbc
安装此插件以及依赖需要在ruby环境下,ruby默认的镜像在国外,所以很慢,需要手动将镜像网站https://rubygems.org/替换为国内的https://gems.ruby-china.com/
具体步骤如下:(MacOS系统)
1.1安装gem
Gem是一个管理Ruby库和程序的标准包,MacOS系统自带gem环境,可以用gem -v查看版本,gems.ruby-china建议gem版本好>2.6.x,如果版本较低,可以用 gem update --system更新
gem -v
gem update --system
相关文章