
Flink
文章平均质量分 63
Empty-cup
这个作者很懒,什么都没留下…
展开
-
FlinkSQL系列07-表查询
Flink SQL除了支持基本查询外,还支持一些复杂的高阶聚合和关联。原创 2022-09-04 21:53:54 · 1391 阅读 · 0 评论 -
Flink系列-背压(反压)
在流式处理系统中,如果出现下游消费的速度跟不上上游生产数据的速度,就种现象就叫做背压(backpressure,也叫反压)原创 2022-09-02 19:26:26 · 1765 阅读 · 0 评论 -
FlinkSQL系列08-自定义函数
典型的标量函数如:upper(str), lower(str), abs(salary)特点:对输入的数据行(一组)进行持续的聚合,最终对每组数据输出一行或多行(多列)结果。特点:对输入的数据行(一组)进行持续的聚合,最终对每组数据输出一行(多列)结果。特点:运行时每接收一行数据(一个或多个字段),能产出多行、 多列的结果。特点:每次只接收一行的数据,输出结果也是 1 行 1 列。典型的如:explode( ), unnest ( )典型的如:sum( ), max( )...原创 2022-09-01 00:03:18 · 1166 阅读 · 0 评论 -
FlinkSQL系列06-表输出方式
【代码】FlinkSQL系列06-表输出方式。原创 2022-08-31 23:02:05 · 955 阅读 · 0 评论 -
FlinkSQL系列05-表与流
在动态表的概念中,其输出结果不是一个简单的“结果记录”不断追加的状态,而是一个需要对“前序”结果进行修正的状态;为了能向下游传递其输出结果的动态信息,flink 设计了一种 DataStream,叫做changelogStream(改变日志流)changelogStream 的本质。...原创 2022-08-31 22:16:43 · 1426 阅读 · 0 评论 -
FlinkSQL系列04-CDC连接器
CDC,Change Data Capture,变更数据获取的简称,使用 CDC 我们可以从数据库中获取已提交的更改,并将这些更改发送到下游,供下游使用。flink 的 cdc connector,在核心包中是没有集成的, 需要额外引入依赖。在 flinksql 中,cdc 数据几乎等价于 changelog,核心就在对 record 的 rowkind(+I/-U/+U/-D)进行适配。示例:用 flink-mysql-cdc 连接器,映射源表,并进行查询计算写回mysql表。...原创 2022-08-31 21:16:20 · 970 阅读 · 1 评论 -
FlinkSQL系列03-表定义
表名 (catalog_name.database_name.object_name)原创 2022-08-28 23:42:44 · 1568 阅读 · 0 评论 -
FlinkSQL系列02-Table表对象和SQL表视图
Table 对象获取方式解析:从已注册的表// 通过已经在 env 的 catalog 中注册的表名, 获得 Table 对象从 TableDescriptor(连接器/format/schema/options)原创 2022-08-27 19:47:47 · 1933 阅读 · 0 评论 -
FlinkSQL系列01-编程入门
FlinkSQL 是架构在 flink core 之上用 sql 语言方便快捷地进行结构化数据处理的上层库。API 和 SQL 也可以很容易地混合,因为 Table 对象可以和 sql 表进行方便地互转。创建方式二:(便于 sql 和 core 结合编程)创建方式一:(纯粹表环境)...原创 2022-08-27 16:38:45 · 731 阅读 · 0 评论 -
Flink入门系列08-State
算子状态提供的数据结构ListStateunionListState 的快照存储数据,在系统重启后,list数据的重分配模式为: 广播模式;在每个subtask上都拥有一份完整的数据。ListState 的快照存储数据,在系统重启后,list数据的重分配模式为: round-robin;轮询平均分配。键控状态提供的数据结构ValueStateListStateMapState。.........原创 2022-08-26 20:11:01 · 569 阅读 · 0 评论 -
Flink入门系列07-延迟数据处理
【代码】Flink入门系列07-延迟数据处理。原创 2022-08-26 17:29:47 · 1127 阅读 · 0 评论 -
Flink入门系列06-window
在 keyby 后数据分流,window是把不同的key分开聚合成窗口,而 windowall 则把所有的 key 都聚合起来,所以 windowall 的并行度只能为1,而 window 可以有多个并行度。Keyedwindow 重要特性:任何一个窗口,都绑定在自己所属的 key 上,不同 key 的数据肯定不会划分到相同的窗口中去。窗口,就是把无界的数据流,依据一定的规则划分成一段一段的有界数据流。既然划分为有界数据流,通常都是为了”聚合“。window 和 windowAll 区别。.........原创 2022-08-26 17:04:53 · 411 阅读 · 0 评论 -
Flink入门系列05-时间语义
watermark的核心是在数据中周期性地插入一种时间戳单调递增的特殊数据(watermark),是 flink 内部自动产生并插入到数据流的,来不可逆转地在整个数据流中进行时间的推进。在需要指定时间语义的相关操作(如时间窗口)时,可以通过显式的api来使用特定的时间语义。数据在接收处理过程中,数据时间可能存在乱序,所以引入 watermark,就是在事件时间语义中,用于单调递增向前推进时间的一种标记。不从最源头算子开始生成watermark,而是从中间环节的某个算子开始生成watermark。...原创 2022-08-26 14:33:22 · 1354 阅读 · 0 评论 -
Flink入门系列02-编程基础
flink编程基础算子原创 2022-08-24 20:19:03 · 1520 阅读 · 0 评论 -
Flink入门系列04-process function
process function 相对于前文所述的map、flatmap、filter算子来说,最大的区别是开发人员对数据的处理逻辑拥有更大的自由度。同时,ProcessFunction 继承了 RichFunction,因而具备了 open、close、getRuntimeContext等方法。不同类型的datastream上,应用 process function 时,flink 提供了大量不同类型的 process function,让其针对不同的datastrean 拥有更具有针对性的功能。原创 2022-08-25 15:12:41 · 901 阅读 · 0 评论 -
Flink入门系列03-多流操作API
需求: 将行为事件流进行分流。A事件分到一个流,B事件分到另一个流,其他事件保留在主流。可实现两个流的数据进行窗口关联(包含inner ,left, right, outer)只能得到关联上的数据,即 inner join,其他类型join需要使用 coGroup。场景:事实表流数据 和 维度表流数据做关联,此时,一般把维度表流数据转换为广播流。参与 union 的流,必须数据类型一致。原创 2022-08-25 12:56:29 · 787 阅读 · 0 评论 -
Flink入门系列01-概述
Flink是一个分布式、有状态的实时流式处理系统(编程框架)flink 主要是 Java 语言开发而成,但对用户提供了 java、scala、python 编程 API。flink 以流处理方式作为基础,并通过有界流来实现批计算,从而实现批流一体。原创 2022-08-23 17:06:01 · 1172 阅读 · 0 评论 -
flink-1.10.0 源码编译(最详细)
采用maven命令编译源码。0. 机器准备购买某某云主机一台,节点最好选香港、新加坡等地,方便加载jar包。配置至少2核8G,按量付费。1. 环境准备1.1 安装jdkwget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie" "http://download.oracle.co原创 2020-06-10 23:22:55 · 1689 阅读 · 14 评论