- 博客(4)
- 收藏
- 关注
原创 Flink整体概述
在某些情况下,由于数据产生的比较少,导致一段时间内没有数据产生,进而就没有水印的生成,导致下游依赖水印的一些操作就会出现问题,比如某一个算子的上游有多个算子,这种情况下,水印是取其上游两个算子的较小值,如果上游某一个算子因为缺少数据迟迟没有生成水印,就会出现eventtime倾斜问题,导致下游没法触发计算。但是有最大失败率限制。使用去获取流并生成带有时间戳的元素和 watermark 的新流时,如果原始流已经具有时间戳或 watermark,则新指定的时间戳分配器将覆盖原有的时间戳和 watermark。
2023-03-11 15:15:55
375
1
原创 Flink SQL
在流处理应用中,数据是连续不断的,因此我们不可能等到所有数据都到了才开始处理。当然我们可以每来一个消息就处理一次,但是有时我们需要做一些聚合类的处理,例如:在过去的1分钟内有多少用户点击了我们的网页。在这种情况下,我们必须定义一个窗口,用来收集最近一分钟内的数据,并对这个窗口内的数据进行计算。Flink 认为 Batch 是 Streaming 的一个特例,所以 Flink 底层引擎是一个流式引擎,在上面实现了流处理和批处理。而窗口(window)就是从 Streaming 到 Batch 的一个桥梁。
2023-03-11 09:15:17
440
1
原创 hive的窗口函数详解 DW(数仓)和RDBS的行转列,列转行总结
lag(col, n, DEFAULT) :统计往前n行的col值, n可选, 默认为1, DEFAULT往上第n行为NULL时,取默认值,如不指定,则为NULL。lead(col, n, DEFAULT):统计往后n行的col值, n可选, 默认为1, DEFAULT往下第n行为NULL时,取默认值,如不指定,则为NULL。语法: substr(string A, int start, int len),substring(string A, int start, int len)
2023-03-04 19:29:19
303
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人