es-jdbc是一个将关系型数据库数据导入es库的工具,支持mysql、oracle等。
1.下载zip包。
http://xbib.org/repository/org/xbib/elasticsearch/importer/elasticsearch-jdbc/
2.解压.
3.添加驱动
es-jdbc默认带了mysql的driver,如果要添加其他数据库的driver,只需将对应的driver加到es-jdbc/lib目录下即可。
4.切换到es-jdbc/bin目录下,在此目录下编写你的运行脚本(不一定非要在bin目录下)。
es-jdbc中常用的参数
1.strategy
jdbc导入的策略,当前实现了“standard” "column"两种方式。
2.url
连接数据库的url。
3.user
连接数据库的用户名。
4.password
连接数据库的密码。
5.sql
要执行的sql。
6.type
定义连接的类型,默认就是jdbc。
7.index
定义导入到es库中的索引名
8.statefile
定义结果输出文件名
9.ignore_null_true
是否忽略关系型数据库中的空值。
10.elasticsearch
定义连接的es集群信息,其中cluster说明集群的名称,host说明集群中的master节点的主机,port说明通信端口,autodiscover说明是否自动发现集群中的其他节点。
bin=$JDBC_IMPORTER_HOME/bin
lib=$JDBC_IMPORTER_HOME/lib
echo '{
"type" : "jdbc",
"jdbc" : {
"url" : "jdbc:mysql://localhost:3306/test",
"user" : "",
"password" : "",
"sql" : "select *, id as _id from orders"
}
}' | java \
-cp "${lib}/*" \
-Dlog4j.configurationFile=${bin}/log4j2.xml \
org.xbib.tools.Runner \
org.xbib.tools.JDBCImporter
详细参数配置:https://github.com/lissic/elasticsearch-jdbc
最后欢迎大家访问我的个人网站:1024s