Flink
文章平均质量分 75
Flink
响彻天堂丶
那万一赢了呢?
展开
-
Flink 连接流详解
最简单的合流操作,就是直接将多条流合在一起,叫作流的“联合”(union)。联合操作要求必须流中的数据类型必须相同,合并之后的新流会包括所有流中的元素,数据类型不变。这种合流方式非常简单粗暴,就像公路上多个车道汇在一起一样。在代码中,我们只要基于 DataStream 直接调用.union()方法,传入其他 DataStream 作为参数,就可以实现流的联合了;union()的参数可以是多个 DataStream,所以联合操作可以实现多条流的合并。这里需要考虑一个问题。原创 2023-02-14 10:29:12 · 870 阅读 · 0 评论 -
Flink 滚动窗口、滑动窗口详解
滚动窗口有固定的大小,是一种对数据进行“均匀切片”的划分方式。窗口之间没有重叠,也不会有间隔,是“首尾相接”的状态。如果我们把多个窗口的创建,看作一个窗口的运动,那就好像它在不停地向前“翻滚”一样。这是最简单的窗口形式,我们之前所举的例子都是滚动窗口。也正是因为滚动窗口是“无缝衔接”,所以每个数据都会被分配到一个窗口,而且只会属于一个窗口。滚动窗口可以基于时间定义,也可以基于数据个数定义;需要的参数只有一个,就是窗口的大小(window size)。比如我们可以定义一个长度为 1 小时的滚动时间窗口,那么原创 2023-02-10 15:39:28 · 9099 阅读 · 0 评论 -
Flink 归约聚合(reduce)
其实,reduce 的语义是针对列表进行规约操作,运算规则由 ReduceFunction 中的 reduce方法来定义,而在 ReduceFunction 内部会维护一个初始值为空的累加器,注意累加器的类型。将合并的结果看作一个数据、再跟后面的数据合并,最终会将它“简化”成唯一的一个数据,这也就是 reduce“归约”的含义。和输入元素的类型相同,当第一条元素到来时,累加器的值更新为第一条元素的值,当新的元素到来时,新元素会和累加器进行累加操作,这里的累加操作就是 reduce 函数定义的运算规。原创 2023-02-07 16:47:32 · 1724 阅读 · 0 评论 -
Flink 1.15 集群部署
【代码】Flink 1.15 集群部署。原创 2023-02-06 15:08:45 · 395 阅读 · 0 评论 -
Flink 实时计算DIM层实现方案
DIM层设计要点:(1)DIM层的设计依据是维度建模理论,该层存储维度模型的维度表。(2)DIM层的数据存储在 HBase 表中DIM 层表是用于维度关联的,要通过主键去获取相关维度信息,这种场景下 K-V 类型数据库的效率较高。常见的 K-V 类型数据库有 Redis、HBase,而 Redis 的数据常驻内存,会给内存造成较大压力,因而选用 HBase 存储维度数据。(3)DIM层表名的命名规范为dim_表名本层的任务是将业务数据直接写入到不同的 HBase 表中。那么如何让程序知道流中的哪些数据原创 2023-01-18 16:56:28 · 753 阅读 · 1 评论 -
Flink 流处理 【API】 【Source】
【代码】Flink 流处理 【API】 【Source】原创 2023-01-07 15:14:11 · 122 阅读 · 0 评论 -
Flink 运行架构
Flink 运行时架构主要包括四个不同的组件,它们会在运行流处理应用程序时协同工作:作业管理器(JobManager)、资源管理器(ResourceManager)、任务管理器(TaskManager),以及分发器(Dispatcher)。因为 Flink 是用 Java 和 Scala 实现的,所以所有组件都会运行在Java 虚拟机上。原创 2023-01-07 13:52:59 · 321 阅读 · 0 评论 -
Flink WordCount Java 版本
【代码】Flink WordCount Java 版本。原创 2023-01-05 22:49:31 · 167 阅读 · 0 评论