数据分类
有界数据,无界数据,其实没有必要,分为流数据和静态数据还差不多。
Flink 编程接口
高级语言:SQL
声明式API Table API
核心API DataStream/DateSet API
低级构建模块 Stateful Stream Processing
Flink程序结构
第一步是获取ENV,StreamExecutionEnvironment是流式环境,而ExecutionEnvironment是批处理环境。
有三种获取env的方式,以StreamExecutionEnvironment为例:
// 根据具体的情况,如果是在本地运行则启动本地环境,如果是在集群上则是集群环境
val env = StreamExecutionEnviroment.getExecutionEnviroment
// 指定并行度创建本地环境
val env = StreamExecutionEnvironment.createLocalEnviroment(5)
// 指定远程的JobManagerIP 和 RPC 端口以及运行程序所在jar包以及其他依赖包
val env = StreamExecutionEnvironment.createRemoteEnvironment("填写具体的Jobmanager的IP或者Host",6021,5,"填写jar包路径")
第二步是初始化数据
将数据转换为DataSet 或者 DataStream 数据结构。
第三步是执行Transformation操作
Flink中的Trans