Elasticsearch—用logstash增量导入Mysql数据

2020-05-27 00:00:00 修改 数据 导入 安装 插件

前言:

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下载地址:elastic.co/downloads
插件github地址:logstash-plugins/logstash-input-jdbc

安装此插件以及依赖需要在ruby环境下,ruby默认的镜像在国外,所以很慢,需要手动将镜像网站rubygems.org/替换为国内的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

相关文章