如何正确使用Flink Connector?(14)
-
此时如果 sink 为 4 , paritition 为 1 , 则 4 个 task 往同一个 partition 中写数据 。 但当 sink task < partition 个数时会有部分 partition 没有数据写入 , 例如 sink task 为2 , partition 总数为 4 , 则后面两个 partition 将没有数据写入 。
-
如果构建 FlinkKafkaProducer 时 , partition 设置为 null , 此时会使用 kafka producer 默认分区方式 , 非 key 写入的情况下 , 使用 round-robin 的方式进行分区 , 每个 task 都会轮循的写下游的所有 partition 。 该方式下游的 partition 数据会比较均衡 , 但是缺点是 partition 个数过多的情况下需要维持过多的网络连接 , 即每个 task 都会维持跟所有 partition 所在 broker 的连接 。
-
容错
Flink kafka 09、010 版本下 , 通过 setLogFailuresOnly 为 false , setFlushOnCheckpoint 为 true , 能达到 at-least-once 语义 。 setLogFailuresOnly , 默认为 false , 是控制写 kafka 失败时 , 是否只打印失败的 log 不抛异常让作业停止 。 setFlushOnCheckpoint , 默认为 true , 是控制是否在 checkpoint 时 fluse 数据到 kafka , 保证数据已经写到 kafka 。 否则数据有可能还缓存在 kafka 客户端的 buffer 中 , 并没有真正写出到 kafka , 此时作业挂掉数据即丢失 , 不能做到至少一次的语义 。
推荐阅读
- 小鱼人|如何在新赛季稳定上分?善于抓失误的小鱼人,值得认真练上一波
- 阴阳师|阴阳师SR川猿强度如何 是否值得抽卡 改变斗技环境 大佬的新玩具
- 手机游戏|梦幻西游手游:活力如何换金币 一切都已给出 就看你的选择
- 华佗|三国杀:两位\奶爸\,朱治与华佗比,强度如何呢?
- 亲朋上分|《亲朋上分》266391亲朋下分亲朋上下分永劫无间崔三娘技能介绍 崔三娘如何获得更多技能
- 金铲铲之战|金铲铲之战新赛季最强阵容:学院名流永恩,低分段玩家谨慎使用
- 激战2|MMORPG集体放大招?魔兽、FF14、激战2均使用End迎来主线剧情终章!
- s6|金铲铲之战:S6双城传说如何才能快速上手?基础知识很关键
- |冰雪传奇:平民玩家四转后如何打金
- 穿越火线|CF:传说武器再度上新,那王者、炫金该如何发展?