flink适配elasticsearch-8 connector 心得

本文介绍了在Flink1.16.0环境中适配Elasticsearch8的连接器时的关键步骤,包括在OperationSerializer中调整序列化方法、自定义NetworkConfigFactory以配置ES客户端的认证和SSL,以及在Elasticsearch8SinkBuilder中构建bulkOperation。同时,文章提供了一个从Kafka到Elasticsearch的数据流转换示例。

flink1.16.0适配elasticsearch-8 connector 心得

来源:github flink暂时未合并es8源码
https://github.com/apache/flink-connector-elasticsearch/pull/53/files


环境:flink 1.16.0 + jdk 1.8

要点一:OperationSerializer.java

使用的是kryo格式的序列化和反序列化,如果数据源是json,需要调整序列化方法

要点二:NetworkConfigFactory.java

需要在这儿自定义esClient,根据自身环境设置设置es的header 、认证、ssl等
注:这里不要默认header (“Content-Type”, “application/json”)

要点三:需要Operation和Elasticsearch8SinkBuilder做微调,见下图

在这里插入图片描述
总结
好了,整体的调整部分就是这样了,接下来就是测试了 ,可与参考test/下的Elasticsearch8SinkTest
我这里也有一个kafka2es的例子给大家参考

package org.apache.flink.connector.elasticsearch.sink;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值