本文为<Flink大数据项目实战>学习笔记,想通过视频系统学习Flink这个最火爆的大数据计算框架的同学,推荐学习课程: Flink大数据项目实战:http://t.cn/EJtKhaz 1. DataStream Transformation 1.1 DataStream转换关系 上图标识了DataStream不同形态直接的转换关系,也可以看出DataStream主要包含以下几类: 1.keyby就是按照指定的key分组 2.window是一种特殊的分组(基于时间) 3.coGroup 4.…
Apache Flink学习笔记 简介 大数据的计算引擎分为4代 第一代:Hadoop承载的MapReduce.它将计算分为两个阶段,分别为Map和Reduce.对于上层应用来说,就要想办法去拆分算法,在上层应用实现多个Job串联,完成一个完整算法.例如:迭代计算 第二代:支持DAG框架的计算引擎,如Tez以及更上层的Oozie. 第三代:Spark为代表的计算引擎.特点是Job内部的DAG支持(不跨越Job),以及强调的实时计算. 第四代:Flink对流计算的支持,也可以支持Batch任务以及…
本文为<Flink大数据项目实战>学习笔记,想通过视频系统学习Flink这个最火爆的大数据计算框架的同学,推荐学习课程: Flink大数据项目实战:http://t.cn/EJtKhaz 1. Process Function 1.1分层API Flink提供三层API. 每个API在简洁性和表达之间提供不同的权衡,并针对不同的用例 1.SQL/Table API (dynamic tables) 2.DataStream API(streams, windows) 3.ProcessFunc…
本文为<Flink大数据项目实战>学习笔记,想通过视频系统学习Flink这个最火爆的大数据计算框架的同学,推荐学习课程: Flink大数据项目实战:http://t.cn/EJtKhaz 1. Window CoGroup与Join 1.1回顾RDBMS各种join 假设有两个表A和B 1.CROSS JOIN(AB的笛卡尔积/交叉联接) 省略写法为join,由于其返回的结果为被连接的两个数据表的乘积,因此当有WHERE, ON或USING条件的时候一般不建议使用,因为当数据表项目太多的时候,…
本文为<Flink大数据项目实战>学习笔记,想通过视频系统学习Flink这个最火爆的大数据计算框架的同学,推荐学习课程: Flink大数据项目实战:http://t.cn/EJtKhaz 1. Time三兄弟 1.1 DataStream支持的三种time DataStream有大量基于time的operator,windows操作只是其中一种. Flink支持三种time: 1.EventTime 2.IngestTime 3.ProcessingTime 1.2三个时间的比较 EventT…
说明:本文为<Flink大数据项目实战>学习笔记,想通过视频系统学习Flink这个最火爆的大数据计算框架的同学,推荐学习课程: Flink大数据项目实战:http://t.cn/EJtKhaz 1.4 JobGraph -> ExecutionGraph 1.5 ExecutionGraph 从JobGraph转换ExecutionGraph的过程中,内部会出现如下的转换. 1.ExecutionJobVertex <- JobVertex:JobVertex转换为Executio…
说明:本文为<Flink大数据项目实战>学习笔记,想通过视频系统学习Flink这个最火爆的大数据计算框架的同学,推荐学习课程: Flink大数据项目实战:http://t.cn/EJtKhaz 新一代Flink计算引擎 (1) Flink概述 目前开源大数据计算引擎有很多的选择,比如流处理有Storm.Samza.Flink.Spark等,批处理有Spark.Hive.Pig.Flink等.既支持流处理又支持批处理的计算引擎只有Apache Flink和Apache Spark. 虽然Spar…
本文为<Flink大数据项目实战>学习笔记,想通过视频系统学习Flink这个最火爆的大数据计算框架的同学,推荐学习课程: Flink大数据项目实战:http://t.cn/EJtKhaz 1. 继续侃Flink编程基本套路 1.1 DataSet and DataStream DataSet and DataStream表示Flink app中的分布式数据集.它们包含重复的.不可变数据集.DataSet有界数据集,用在Flink批处理.DataStream可以是无界,用在Flink流处理.它们…
本文为<Flink大数据项目实战>学习笔记,想通过视频系统学习Flink这个最火爆的大数据计算框架的同学,推荐学习课程: Flink大数据项目实战:http://t.cn/EJtKhaz 1.执行计划Graph Flink 通过Stream API (Batch API同理)开发的应用,底层有四层执行计划,我们首先来看Flink的四层执行计划如下图所示. 通过Stream API开发的Flink应用,底层首先转换为StreamGraph,然后再转换为JobGraph,接着转换为Executio…
说明:本文为<Flink大数据项目实战>学习笔记,想通过视频系统学习Flink这个最火爆的大数据计算框架的同学,推荐学习课程: Flink大数据项目实战:http://t.cn/EJtKhaz split 1.DataStream → SplitStream 2.按照指定标准将指定的DataStream拆分成多个流用SplitStream来表示 select 1.SplitStream → DataStream 2.跟split搭配使用,从SplitStream中选择一个或多个流 案例: pu…