使用kettle同步全量数据到Elasticsearch(es)--elasticsearch-bulk-insert-plugin应用

这篇具有很好参考价值的文章主要介绍了使用kettle同步全量数据到Elasticsearch(es)--elasticsearch-bulk-insert-plugin应用。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

背景

为了前端更快地进行数据检索,需要将数据存储到es中是一个很不错的选择。由于公司etl主要工具是kettle,这里介绍如何基于kettle的elasticsearch-bulk-insert-plugin插件将数据导入es。在实施过程中会遇到一些坑,这里记录解决方案。

可能会遇到的报错:
1、No elasticSearch nodes found
2、不支持ssl认证(用户名&密码)

后文提供解决办法

es插件配置

这里举个简单例子,将mysql的一张表导入到 es 中:

kettle es插件,大数据,elasticsearch,大数据,etl,数据库,es

 表输入比较简单就不介绍了,这里讲下es插件的配置。
1、先配置 index、type, id(可以不设置)

kettle es插件,大数据,elasticsearch,大数据,etl,数据库,es

  2、配置ip跟port

注意:port配置的是Tcp协议端口,也就是 9300,不是9200(底层采用的是TransportClient)

kettle es插件,大数据,elasticsearch,大数据,etl,数据库,es

 3、设置字段映射

kettle es插件,大数据,elasticsearch,大数据,etl,数据库,es

 

4、Settings配置

需要设置集群名称 cluster.name:elasticsearch

kettle es插件,大数据,elasticsearch,大数据,etl,数据库,es

如果不知道cluster.name的话,可以访问9200端口,页面会显示详细信息。

kettle es插件,大数据,elasticsearch,大数据,etl,数据库,es

 

 以上配置完成即可。

不出意外的话,意外来了。点击第2步的 test connect,会报错No elasticSearch nodes found

错误及解决办法

错误原因是因为 kettle6/7支持的es版本是es2.x,kettle8支持到es6。如果你的版本是es7及以上,自带的插件是不支持的。

需要下载插件源码,修改版本后,重新编译打包。

可以参考(这个是不支持ssl认证的):关于Kettle使用es批量导出插件支持ES5/ES6/ES7的说明_空山苦水禅人的博客-CSDN博客_kettle连接es5

在此基础上,本人修改了源码,再次编译,可以支持es7、es8并支持ssl用户名及密码验证。由于这步比较麻烦,直接放到网盘上。

链接:https://pan.baidu.com/s/1LWwH-u7r0uAUfVKSz5vmdQ 
提取码:gpm7

操作步骤:

1、删除data-integration\lib 下 所有 jackson- 开头的jar包,然后把jackson-2.8.10-libs文件夹中的jar拷到lib目录下

2、替换data-integration\plugins\elasticsearch-bulk-insert-plugin文件夹

3、如果开启了ssl认证,需要把 秘钥文件(.p12) 拷贝到data-integration\plugins\elasticsearch-bulk-insert-plugin\config目录下。

如果不确定是否开启ssl认证,可以看下配置文件elasticsearch.yml。

kettle es插件,大数据,elasticsearch,大数据,etl,数据库,es

4、重启kettle即可。

如果开启了ssl 认证,还需要在插件中配置:

kettle es插件,大数据,elasticsearch,大数据,etl,数据库,es

xpack.security.transport.ssl.keystore.password、xpack.security.user

 (注:秘钥文件密码  是在生成P12证书时设置的密码)

如果对你有帮助,记得点个赞哟!文章来源地址https://www.toymoban.com/news/detail-789608.html

到了这里,关于使用kettle同步全量数据到Elasticsearch(es)--elasticsearch-bulk-insert-plugin应用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 使用Logstash同步mysql数据到Elasticsearch(亲自踩坑)_将mysql中的数据导入es搜索引擎利用logstash(1)

    先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7 深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前! 因此收集整理了一份《2024年最新大数据全套学习资料》,

    2024年04月28日
    浏览(38)
  • Elasticsearch 系列(六)- ES数据同步和ES集群

    本章将和大家分享ES的数据同步方案和ES集群相关知识。废话不多说,下面我们直接进入主题。 1、数据同步问题 Elasticsearch中的酒店数据来自于mysql数据库,因此mysql数据发生改变时,Elasticsearch也必须跟着改变,这个就是Elasticsearch与mysql之间的数据同步。 在微服务中,负责酒

    2024年04月28日
    浏览(71)
  • DataX实现Mysql与ElasticSearch(ES)数据同步

    jdk1.8及以上 python2 查看是否安装成功 查看python版本号,判断是否安装成功 在datax/job下,json格式,具体内容及主要配置含义如下 mysqlreader为读取mysql数据部分,配置mysql相关信息 username,password为数据库账号密码 querySql:需要查询数据的sql,也可通过colums指定需要查找的字段(

    2024年02月05日
    浏览(42)
  • FlinkCDC从Mongodb同步数据至elasticsearch(ES) 新版

    网上挺多flinksql方式同步数据,但是遇到数据比较杂乱,会经常无缘无故报错,笔者被逼无奈,采用API方式处理数据后同步,不知为何API资料笔者找到的资料很少,还很不全,摸着石头过河总算完成任务,收获颇丰,以此分享给大家。 有个大坑,我用该程序监控mongodb只能监控

    2024年02月11日
    浏览(34)
  • elasticsearch(ES)分布式搜索引擎04——(数据聚合,自动补全,数据同步,ES集群)

    **聚合(aggregations)**可以让我们极其方便的实现对数据的统计、分析、运算。例如: 什么品牌的手机最受欢迎? 这些手机的平均价格、最高价格、最低价格? 这些手机每月的销售情况如何? 实现这些统计功能的比数据库的sql要方便的多,而且查询速度非常快,可以实现近

    2024年02月08日
    浏览(39)
  • 【ElasticSearch】ES与MySQL数据同步方案及Java实现

    elasticsearch中的酒店数据来自于mysql数据库,当mysql中的数据发生改变时,es中的数据也要跟着改变,即es与mysql之间的数据同步。 操作mysql的微服务hotel-admin不能直接更新es的索引库,那就由操作es索引库的微服务hotel-demo来暴露一个更新索引库的接口给hotel-admin调用 同步调用方式

    2024年02月15日
    浏览(38)
  • Redis主从架构、数据同步原理、全量同步、增量同步

    大家好,我是哪吒。 2023年再不会Redis,就要被淘汰了 图解Redis,谈谈Redis的持久化,RDB快照与AOF日志 Redis单线程还是多线程?IO多路复用原理 Redis集群的最大槽数为什么是16384个? Redis缓存穿透、击穿、雪崩到底是个啥?7张图告诉你 Redis分布式锁的实现方式 Redis分布式缓存、

    2024年02月07日
    浏览(56)
  • 【大数据精讲】全量同步与CDC增量同步方案对比

    目录 背景 名词解释 问题与挑战 FlinkCDC DataX 工作原理 调度流程 五、DataX 3.0六大核心优势 性能优化 CDC        CDC又称变更数据捕获(Change Data Capture),开启cdc的源表在插入INSERT、更新UPDATE和删除DELETE活动时会插入数据到日志表中。CDC通过捕获进程将变更数据捕获到变更表中

    2024年01月24日
    浏览(33)
  • DBSyncer安装_配置postgresql和mysql_sqlserver_oracel全量增量同步---数据全量增量同步之DBSyncer001

         国内做开源的大神做的,用了一下还可以,就是不能和Phoenix这种操作hbase等数据库一起用, 这个是官网,下载安装非常简单,官网也有中文详细说明. 直接下载安装包: 然后解压到某个地方,主要要用unzip dbsyncer.zip -d /opt/module这样解压 解压后直接启动就可以了    解压以后进入

    2024年02月09日
    浏览(42)
  • ElasticSearch - 在 微服务项目 中基于 RabbitMQ 实现 ES 和 MySQL 数据异步同步(考点)

    目录 一、数据同步 1.1、什么是数据同步 1.2、解决数据同步面临的问题 1.3、解决办法 1.3.1、同步调用 1.3.2、异步通知(推荐) 1.3.3、监听 binlog 1.3、基于 RabbitMQ 实现数据同步 1.3.1、需求 1.3.2、在“酒店搜索服务”中 声明 exchange、queue、routingKey,同时开启监听 1.3.3、在“酒店

    2024年02月08日
    浏览(38)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包