学习 Flink(八):Streaming Join

Streaming Join 与 Join 的区别,在于增加了时间维度。 Flink 支持两种类型的 Streaming Join: Window Join 窗口连接 Interval Join 间隔连接 示例数据流: 数据流 L ID NAME TIME 1 L1 12:00 »

学习 Flink(七):Flink on YARN

Flink 支持多种集群部署: Standalone Flink on YARN Flink on Mesos Flink on K8s 等等…… Flink on YARN 支持两种模式: 会话模式(Session Mode),在 YARN 上运行长期运行的 Flink 集群; 任务模式( »

学习 Flink(六):检查点

检查点(Checkpoint)机制是 Flink 实现错误容忍机制的核心。通过持续以异步的方式保存轻量级的镜像,当错误(机器、网络或者软件原因)发生时,系统重启操作并重置操作到最新保存成功的检查点。 Flink 镜像参考论文:Lightweight Asynchronous Snapshots for Distributed Dataflows 前提 Flink 检查点需要两点: 持久化数据源支持重放(Replay)数据,如消息队列( »

学习 Flink(五):状态

Flink 支持有状态的操作和用户方法。例如,窗口操作使用状态维护不断追加的聚合数据,sink 操作使用状态保证一致性提供 exactly-once 语义。 Flink 状态主要分为两种: 操作状态 键状态 Flink 支持三种状态后端: 内存 文件系统 RocksDB 操作状态 操作状态(Operator State),即每个操作状态绑定到一个并发操作实例上。 Flink 提供了以下操作状态: Broadcast State: »

学习 Flink(四):水印

要理解水印(Wartermark),首先需要理解三个时间概念: 事件时间(Event Time) 摄入时间(Ingestion Time) 处理时间(Process Time) 时间 事件时间是每一个独立的事件在产生它的设备中发生的时间。以用户行为分析为例,事件时间就是用户访问页面点击按钮时的时间。 摄入时间是事件进入 Flink 的时间。以用户行为分析为例,摄入时间就是 Flink Kafka Connector 从 Kafaka »