实时统计pv、uv是再常见不过的大数据统计需求了,前面出过一篇SparkStreaming实时统计pv,uv的案例,这里用Flink实时计算pv,uv。 我们需要统计不同数据类型每天的pv,uv情况,并且有如下要求. - 每秒钟要输出最新的统计结果; - 程序永远跑着不会停,所以要定期清理内存里的过时数据; - 收到的消息里的时间字段并不是按照顺序严格递增的,所以要有一定的容错机制; - 访问uv并不一定每秒钟都会变化,重复输出对IO是巨大的浪费,所以要在uv变更时在一秒内输出结果,未变更时不输出; Flink数据…

2021-06-10 0条评论 212点热度 0人点赞 柯广 阅读全文

一套Flink入门视频教程。 资料详情 |- 第1章 初识Flink - 文件夹 |- 第2章 快速上手开发第一个Flink应用程序 - 文件夹 |- 第3章 编程模型及核心概念 - 文件夹 |- 第4章 DataSet API编程 - 文件夹 |- 第5章 DataStream API编程 - 文件夹 |- 第6章 Flink Table API & SQL编程 - 文件夹 |- 第7章 Flink中的Time及Windows的使用 - 文件夹 |- 第8章 Flink Connectors - 文件夹 …

2021-05-12 0条评论 219点热度 0人点赞 柯广 阅读全文

一、前言 有状态的计算是流处理框架要实现的重要功能,因为稍复杂的流处理场景都需要记录状态,然后在新流入数据的基础上不断更新状态。下面的几个场景都需要使用流处理的状态功能: 数据流中的数据有重复,想对重复数据去重,需要记录哪些数据已经流入过应用,当新数据流入时,根据已流入过的数据来判断去重。 检查输入流是否符合某个特定的模式,需要将之前流入的元素以状态的形式缓存下来。比如,判断一个温度传感器数据流中的温度是否在持续上升。 对一个时间窗口内的数据进行聚合分析,分析一个小时内某项指标的75分位或99分位的数值。 一个状态…

2021-05-03 0条评论 194点热度 0人点赞 柯广 阅读全文

在上一篇文章中我们介绍了窗口相关的内容,那么问题来了,比如公司组织春游,规定周六早晨8:00 ~ 8:30清查人数,人齐则发车出发,可是总有那么个同学会睡懒觉迟到,这时候通常也会等待20分钟,但是不能一直等下去,如果到了20分钟则认为,想自己在家过周末,不参与春游活动了,不会继续等待了,直接出发。 这种机制跟这里要讲的watermark机制是一个意思。指的是,由于网络延迟等原因,一条数据会迟到计算,比如使用event time来划分窗口,我们知道窗口中的数据是计算一段时间的数据,如果一个数据来晚了,它的时间范围已经…

2021-04-01 0条评论 1385点热度 0人点赞 柯广 阅读全文

关注公众号:Java大数据与数据仓库,回复 "资料",领取大数据资料,学习大数据技术。 窗口 在流处理应用中,数据是连续不断的,因此我们不可能等到所有数据都到了才开始处理。当然我们可以每来一个消息就处理一次,但是有时我们需要做一些聚合类的处理,例如:在过去的1分钟内有多少用户点击了我们的网页。在这种情况下,我们必须定义一个窗口,用来收集最近一分钟内的数据,并对这个窗口内的数据进行计算。 Flink 认为 Batch 是 Streaming 的一个特例,所以 Flink 底层引擎是一个流式引擎,在上面实现了流处理和批…

2021-04-01 0条评论 1297点热度 0人点赞 柯广 阅读全文