
Flink
文章平均质量分 80
不断学习的克里斯
人生就是不断学习的过程
展开
-
【Flink】Table API 和 SQL——基本程序框架、聚合查询、TopN查询、自定义函数
Table API 和 SQL——基本程序框架、聚合查询、TopN查询、自定义函数原创 2022-04-16 12:05:53 · 2505 阅读 · 0 评论 -
【Flink】状态编程——值状态、列表状态、映射状态、聚合状态、广播状态(内含编程模板和案例)
状态编程——值状态、列表状态、映射状态、聚合状态、广播状态(内含编程模板和案例)原创 2022-04-16 11:30:48 · 2555 阅读 · 0 评论 -
【Flink】Flink的多流转换——分流、合流、双流联结
多流转换可以分为“分流”和“合流”两大类。目前分流的操作一般是通过侧输出流(side output)来实现,而合流的算子比较丰富,根据不同的需求可以调用 union、connect、join 以及 coGroup 等接口进行连接合并操作。原创 2022-04-04 21:43:14 · 6224 阅读 · 3 评论 -
【Flink】Flink的处理函数、TopN案例和侧输出流
在更底层,我们可以不定义任何具体的算子(比如 map,filter,或者 window),而只是提 炼出一个统一的“处理”(process)操作——它是所有转换算子的一个概括性的表达,可以自 定义处理逻辑,所以这一层接口就被叫作“处理函数”(process function)。 在处理函数中,我们直面的就是数据流中最基本的元素:数据事件(event)、状态(state)以及时间(time)。这就相当于对流有了完全的控制权。一、基本处理函数(ProcessF...原创 2022-04-04 20:34:08 · 2237 阅读 · 0 评论 -
【Flink】Flink中的窗口API、窗口函数以及迟到数据处理问题
在流处理中,我们往往需要面对的是连续不断、无休无止的无界流,不可能等到所有所有数据都到齐了才开始处理。更加高效的做法是,把无界流进行切分,每一段数据分别进行聚合,结果只输出一次。这就相当于将无界流的聚合转化为了有界数据集的聚合,这就是所谓的“窗口”(Window)聚合操作。窗口聚合其实是对实时性和处理效率的一个权衡。原创 2022-04-03 22:49:21 · 2704 阅读 · 0 评论 -
【Flink】Flink 中的时间语义和水位线
水位线是一种特殊的事件,由程序员通过编程插入的数据流里面,然后跟随数据流向下游流动。原创 2022-04-03 08:18:05 · 2630 阅读 · 0 评论 -
【Flink】DataStream API—执行环境、源算子、转换算子、输出算子
DataStream API—执行环境、源算子、转换算子、输出算子包括匿名函数、自定义函数、富函数。原创 2022-04-02 14:11:28 · 1411 阅读 · 0 评论 -
【Flink】Flink的系统架构、作业提交以及一些重要概念
一、系统架构1、整体构成客户端并不是处理系统的一部分,它只负责作业的提交。具体来说,就是调用程序的 main 方法,将代码转换成“数据流图”(Dataflow Graph),并最终生成作业图(JobGraph),一并发送给 JobManager。JobManager 和 TaskManagers 可以以不同的方式启动: (1)作为独立(Standalone)集群的进程,直接在机器上启动 (2)在容器中启动 (3)由资源管理平台调度启动,比如 YARN、K8S 2、JobM原创 2022-04-01 21:21:21 · 1763 阅读 · 0 评论 -
【Flink】Flink的部署模式
一、本地启动 & 集群启动1、本地启动:最简单的启动方式,其实是不搭建集群,直接本地启动。本地部署非常简单,直接解压安装包就可以使用,不用进行任何配置;一般用来做一些简单的测试。 启动成功后,访问 http://hadoop102:8081,可以对 flink 集群和任务进行监控管理2、集群启动:如果我们想要扩展成集群,其实启动命令是不变的,主要是需要指定节点之间的主从关系。Flink 是典型的 Master-Slave 架构的分布式数据处理框架,其中 Master 角色对应着JobMa原创 2022-04-01 20:25:39 · 1596 阅读 · 0 评论 -
【Flink】Flink的wordCount——批处理和流处理
一、批处理public class wordCount { public static void main(String[] args) throws Exception { // 创建执行环境 ExecutionEnvironment env = ExecutionEnvironment.getExecutionEnvironment(); // 从文件中读取数据 String inputPath = "data//hello.原创 2022-04-01 19:31:16 · 803 阅读 · 0 评论 -
【Flink】Flink概念、应用场景、特点以及与Spark的对比
一、概述1、什么是Flink?Flink 是一个流式大数据处理引擎,执行的是数据流上的有状态计算。2、流处理和批处理对于具体应用来说,有些场景数据是一个一个来的,是一组有序的数据序列,我们把它叫作“数据流”;而有些场景的数据,本身就是一批同时到来,是一个有限的数据集,这就是批量数据(有时也直接叫数据集)。 二、Flink的应用场景1. 电商和市场营销 举例:实时数据报表、广告投放、实时推荐2. 物联网(IOT) 举例:传感器实时数据...原创 2022-04-01 19:10:49 · 3555 阅读 · 1 评论 -
【Flink】FlinkSQL代码格式问题
发现问题执行以下SQL查询:报错,第54行出现问题:分析问题1、一开始以为是字母没有大写的问题,于是将所有关键字都改为大写,但仍然报同样的错误。2、检查SQL语句的语法,也没有问题,标点符号也都没有问题3、将分段多句写为一句,终于发现问题了,原因是“from table”前面没有空格,这是由于换行导致的疏忽。总结1、避免SQL语句冗长,通常会采用分段编写的格式,但要注意标点符号和空格。2、关键字的大小写并不会导致错误,也不会影响结果,例如group by和GR原创 2022-03-27 11:26:03 · 1528 阅读 · 0 评论 -
【Flink】Flink中的泛型擦除问题
The return type of function 'main(Transformation_returnType.java:23)' could not be determined automatically, due to type erasure. You can give type information hints by using the returns(...) method on the result of the transformation call, or by letting y原创 2022-03-22 15:35:55 · 3771 阅读 · 0 评论