记录自己昨天遇到的两个bug。
- kettle设置完成后,无法连接ES。
是因为自己的插件版本过低导致的无法连接,kettle7.1中支持的es连接插件,只支持es2.2版本,需要替换elasticsearch-bulk-insert-plugin插件
源码及插件见:链接: https://pan.baidu.com/s/1yEjLaWJZLcMElGtKYKXtug
密码: pb8j
下载完后,在解压文件夹中,拷贝以下文件,替换到kettledata-integration\plugins\elasticsearch-bulk-insert-plugin
路径下
原文链接:https://blog.csdn.net/xpm_xq/article/details/86703558
- 连接ES后,从pg库导入时报空指针。
首先先排除是不是自己的表中有些不能有null的字段出现了null,比如uuid。
排除后,那可能就是你的es安全认证问题了,这里列出kettle设置es7的几个步骤。
1、先拖动ES插件:
2、es7之后的type都只有一个_doc
,不管你创建了什么type,这里只写_doc
即可。
3、设置连接的IP和端口
4、最坑的一点是要有安全认证!ES的用户名和密码!不设置的话会永远NullPoint!!!Srtting是固定写法,Value是user:password。如果你的es免密,才可以不设置。
至此,解决了一天的bug,kettle可以正常导入es数据,完整的kettle流程如下: