Flink初探
编程模型应该说Flink的编程编程模型和Spark Streaming的DStream还是非常相似的,也是抽象出了Stream概念来表示没有边界的数据流,针对Stream所施加的操作被称之为”transformation”,它会把一个流转换成另一个流作为转换的输出。与很多流计算模型一样,流的起点往往是数据的输入源,被称之为”source”,流的终点是数据的输出目的地,被成为“sink”。下 图形象地展示了Flink的流计算编程模型: 窗口计算Flink同样支持窗口计算,并且提供多种不同的时间概念供开发者选择,这些时间概念包括:
这是我们第一次系统地梳理流计算时关于”时间”的概念,在前面介绍Spark Streaming时我们提到了事件时间,大多数时候,事件时间总是更具有实际参考价值,但是全面了解一下这三种时间的定义还是很有必要的,Flink正好给我们总结归纳好了: 批处理与更多的编程模型Flink确实走了一条“不寻常”的路,它以它的流计算内核为基础,将数据处理能力从流计算拓展到了批处理,进而又在更上层提供了面向不同的计算需求的”上层库”,下图展示了Flink整体的架构和编程接口: 在流处理方面,Flink以DataStream API为基础,向上封装了两个DSL的库,一个是面向复杂事件处理的库:FlinkCEP,另一个是面向结构化数据操作的Table/SQL引擎。在批处理方面,Flink提供了一组专门面向批处理的API- DataSet,然后以这个批处理平台为支撑,向上又分装了机器学习库FlinkML,图计算库Gelly以及Table /SQL引擎。所以说,Flink并不是一个单纯的流计算引擎,而是和Spark一样,以一个核心的库或底层运行时为基础,同时提供流计算和批处理引擎,然后再向上分装各类应用库,进而形成了一个大的生态系统。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 是否可以在Windows中的另一个应用程序中嵌入一个应用程序?
- windows-10 – 无法连接虚拟设备sata0:1,因为主机上没有相
- 关闭Windows框C#
- 远程访问Windows Vista到Mac OSX?
- windows-server-2003 – 从桌面删除的文件不会转到回收站
- Windows认证为基于Java的Web应用程序,如何?
- 脚本 – 以一个步骤(在windows上使用7zip)以编程方式提取ta
- 如何在Windows中为npm运行脚本设置shell
- 如何从Microsoft Access VBA中的SQL查询中获取数据?
- 使用带有Ionic 2 Typescript的windows.plugins