文档章节

Apache Beam的架构概览

xiaomin0322
 xiaomin0322
发布于 05/31 11:28
字数 516
阅读 37
收藏 0

 Apache Beam是一个开源的数据处理编程库,由Google贡献给Apache的项目,前不久刚刚成为Apache TLP项目。它提供了一个高级的、统一的编程模型,允许我们通过构建Pipeline的方式实现批量、流数据处理,并且构建好的Pipeline能够运行在底层不同的执行引擎上。刚刚接触该开源项目时,我的第一感觉就是:在编程API的设计上,数据集及其操作的抽象有点类似Apache Crunch(MapReduce Pipeline编程库)项目;而在支持统一数据处理模型上,能够让人想到Apache Flink项目。如果深入了解Apache Beam,你会发现未来Apache Beam很可能成为数据处理领域唯一一个能够将不同的数据应用统一起来的编程库。

 

 

 

 

 

 

Apache Beam架构概览

  Apache Beam目前最新版本为2.1.1-SNAPSHOT,最新的Release版本为2.0.0,很多特性还在开发中。

 

 

 

  在网上找到一个由Andrew Psaltis在2016年6月份演讲的《Apache Beam: The Case for Unifying Streaming API’s》,引用了其中一个Apache Beam的架构图,如下图所示:
    apache-beam-architecture

 

 

上图中,我们可以看到,Apache Beam核心的主要有两层

  • Pipeline构建层

  在Pipeline构建层,针对不同的编程语言,构建一组用于定义Pipeline相关抽象,提供编程API,这一层被称为Beam SDKs。最终的用户(具有不同编程语言技能的人员)可以基于这些抽象的Beam SDK来构建数据处理Pipeline。

  • Runner适配层

  Runner适配层,主要是用来对接底层的计算引擎,用来执行上层用户开发好的Pipeline程序。

本文转载自:https://www.cnblogs.com/zlslch/p/7609594.html

xiaomin0322
粉丝 146
博文 3918
码字总数 199288
作品 0
上海
架构师
私信 提问
Apache Beam 0.5.0 发布,大数据批处理和流处理标准

Apache Beam 0.5.0 发布了,Apache Beam 是 Google 在2016年2月份贡献给 Apache 基金会的项目,主要目标是统一批处理和流处理的编程范式,为无限,乱序,web-scale的数据集处理提供简单灵活,...

王练
2017/02/10
1K
0
Apache Beam 2.0 发布,首个稳定版本

Apache Beam在官方博客上正式发布了Beam 2.0.0。这是Beam有史以来的第一个稳定版本,根据Beam社区的声明,Beam意欲为未来版本发布保持API的稳定性,并让Beam适用于企业的部署。 Beam的第一个...

李玉珏
2017/05/20
2.4K
1
Apache 基金会宣布 Apache Beam 成为顶级项目

1月10日,Apache 软件基金会宣布,Apache Beam 已经成功地从孵化毕业,成为基金会的一个新的顶级项目。 Apache Beam 是 Google 在2016年2月份贡献给 Apache 基金会孵化的项目。项目的名称表明...

王练
2017/01/12
3.5K
1
Apache Beam 0.6.0,大数据批处理和流处理标准

Apache Beam 0.6.0 发布了,该版本为 Python 编程语言引入了一个新的 SDK。 此外,该版本为 Apache HBase 在 Java SDK 中添加了一个新的 IO 链接器,以及一些常见的错误修复和改进。 最后,还...

局长
2017/03/18
948
0
玩转KafkaIO与Flink

随着大数据 2.0 时代悄然到来,大数据从简单的批处理扩展到了实时处理、流处理、交互式查询和机器学习应用。近年来涌现出诸多大数据应用组件,如 HBase、Hive、Kafka、Spark、Flink 等。开发...

微笑向暖wx
2018/09/28
239
0

没有更多内容

加载失败,请刷新页面

加载更多

Qt的MVC设计模式——InterView框架(MVD)

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 本文链接:https://blog.csdn.net/weixin_39743893/article/details/80625759 英雄不问,饮水...

shzwork
24分钟前
4
0
Python 开发植物大战僵尸游戏

作者:楷楷 链接:https://segmentfault.com/a/1190000019418065 开发思路 完整项目地址: https://github.com/371854496/pygame 更多好玩有趣的python,尽在公众号「Python专栏」,后台回复...

上海小胖
今天
12
0
JVM优化之逃逸分析与分配消除

要了解逃逸分析背后的基本原理,我们先来看下这段有问题的C代码——当然这个是没法用Java来写的: 这段C代码在栈上创建了一个int类型的变量,然后把它的指针作为函数的返回值返回了。这样做是...

onedotdot
今天
3
0
最简单的获取相机拍照的图片

  import android.content.Intent;import android.graphics.Bitmap;import android.os.Bundle;import android.os.Environment;import android.provider.MediaStore;import andr......

MrLins
今天
6
0
说好不哭!数据可视化深度干货,前端开发下一个涨薪点在这里~

随着互联网在各行各业的影响不断深入,数据规模越来越大,各企业也越来越重视数据的价值。作为一家专业的数据智能公司,个推从消息推送服务起家,经过多年的持续耕耘,积累沉淀了海量数据,在...

个推
今天
12
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部