Flink
文章平均质量分 90
以实战为主,理论为辅,给大家分享流行流处理组件Flink的实战干货。
IT大狮兄
数据开发,数据治理,数据分析,架构设计
展开
-
Flink EOS--整合MySQL验证2PC
一、前言 假设当前Flink应用已实现EOS(即 Exactly-Once Semantics)语义,现在需要增加Flink处理数据持久化到MySQL,前提条件不能打破Flink EOS的生态。官方提供的flink-connector-jdbc并没有提供事务和checkpoint的相关操作,自定义sink需要考虑和CheckPoint复杂的配合。参考Flink EOS如何防止外部系统乱入,可自定义实现TwoPhaseCommitSinkFunction类,完成MySQL外部系统组件的完美嵌入。 本次模拟原创 2021-08-09 20:52:27 · 608 阅读 · 0 评论 -
Flink EOS如何防止外部系统乱入--两阶段提交源码
一、前言 根据维基百科的定义,两阶段提交(Two-phase Commit,简称2PC)是巨人们用来解决分布式系统架构下的所有节点在进行事务提交时保持一致性问题而设计的一种算法,也可称之为协议。 在Flink 1.4版本中,社区将两阶段提交协议中的公共逻辑进行提取和封装,发布了可供用户自定义实现特定方法来达到flink EOS特点的TwoPhaseCommitSinkFunction。本文基于Flink 1.12.4,和大家一起拜读Flink两阶段提交的源码。 二、2PC简介 1. 定义 根据维基百科的原创 2021-08-08 23:19:08 · 153 阅读 · 0 评论