大数据管理日趋重要
随着大数据在不同的领域越来越多的应用场景的发现,如何对数据资产进行管理就变得越来越重要。由此也产生了很多的创业公司和开源项目。
WhereHows
WhereHows是LinkedIn在2016年开源的一套数据目录发现和数据世系管理的平台。可以当作企业的中心元数据管理系统,对接不同的数据存储和数据处理系统,从而能够全面的管理企业数据目录、数据结构以及数据世系。
Alation
Alation是一套企业级的数据管理和数据发现的平台,与WhereHows不同的是Alation并不是一个开源的平台,而是一套商用的平台。除了基础的数据管理、数据发现,这个平台还支持多角色的协作,因为对于数据相关的工作,更好的协作才能提高生产的效率。Alation公司是成立于2012年的一家创业公司,2015年获得了900万美金的A轮融资。
大数据应用平台化
随着大数据处理技术的进一步发展,如何整合大数据不同的底层大数据处理技术,将数据集管理、数据加工流水线、数据应用管理融合在一个统一的平台无疑能够大大降低大数据从数据引入到数据变成有价值的产品的复杂度。
CDAP
CDAP是CASK公司开源的大数据应用平台。通过将数据接入、数据管理、数据处理流水线和数据应用开发管理集成在一个统一的平台,CDAP可以使得企业象开发普通的应用一样开发大数据的应用产品,中国直播网,降低开发的复杂度。如果做一个类比,CDAP的整体思路类似于在J2EE时代的WebLogic,是一个针对数据应用的中间件平台产品。
StreamSets
StreamSets是一个侧重数据集成、数据加工流程构建的平台,也是一个开源的产品。通过StreamSets,用户可以方便的接入不同的数据源,并且完成数据加工流程的构建。SteamSets有可视化的数据流构建工具,并且能够对运行态的数据应用进行监控。相对于CDAP,StreamSets更侧重于数据的接入和数据流的构建、监控和管理。
大数据流式处理成为趋势
在2016年,大数据流式处理技术取得了飞速的发展,并且逐渐的变成了大数据处理的新的趋势。在这个大数据流式处理大潮中,几个关键的开源项目逐渐的取得了更多人的注意。
Flink
Apache Flink并不是一个新的开源项目,但是随着大数据流式处理的日益重要,Flink因为其对流式处理的支持能力,得到了越来越多的人的重视。在2016年,几乎所有的大数据技术大会上,中国直播网,都能够看到Flink的身影。
在Flink的设计理念中,数据流是一等公民,而批量操作仅仅是流式处理的一种特殊形式。Flink的开发接口的设计和Spark非常的相像,支持Java,Scala等编程语言,并且也有支持SQL的Table API,因此有非常好的易用性。另外Flink支持将已经存在的MapReduce任务直接运行在Flink的运行环境上。
同Spark一样,Flink也是期望基于它的核心打造一个大数据的生态系统,它的核心是支持流式的DataStream API和支持批量计算的DataSet API。在上层则是应用层的API,包括:
CEP
在Flink上提供了支持CEP(复杂事件处理)的库,从而使用者可以非常方便的构造基于CEP的应用。
FlinkML
在Flink上提供了机器学习算法库,类似于Spark的MLLib。当前的Flink 1.1版本的机器学习算法库包含了一些主流的机器学习算法的实现,比如SVM,KNN,ALS等等。
Gelly
Gelly是在Flink上支持图计算的API库,类似于Spark上的GraphX。在大数据时代,通过图算法和图分析能够在很多业务场景产生巨大的应用价值,比如在金融领域用图发现羊毛党。我相信Flink正式看中了这一点,在自己的核心之上,发展出来进行图计算的Gelly。
2016年Flink在国内也逐渐的引起了大数据同仁们的重视,阿里巴巴针对Flink对Yarn支持的不足做了很多的优化和修改,开发了Blink,并且积极的与Flink社区进行沟通,希望能够将一些核心的修改merge回社区。
Beam
提到流式处理,不得不提的一个项目是Apache Beam。这是一个仍旧在孵化器中的项目,但是其出发点和背景使得我们不在早期就对它保持持续的关注。Beam本身不是一个流式处理平台,而是一个统一的编程框架。
在大数据处理和计算平台百花齐放的今天,开发者不得不面对Spark, Flink, Storm, Apex等等不同的计算框架,而这些计算框架各自有不同的开发API,如何能够屏蔽底层的差异,使得上层有一个统一的表达,对于大数据应用开发者来讲就变得非常有意义了。
TalkingData在构造自己的Data Cloud的时候就面临这个问题,而这个时候我们发现Beam就给了我们这个答案。Beam系出名门,是由Google开源出来的,并且得到了Spark, Flink等等社区的大力的支持。在Beam中,主要包含两个关键的部分:
Beam SDK
Beam SDK提供一个统一的编程接口给到上层应用的开发者,开发者不需要了解底层的具体的大数据平台的开发接口是什么,直接通过Beam SDK的接口,就可以开发数据处理的加工流程。Beam SDK会有不同的语言的实现,目前提供Java,python的SDK正在开发过程中,相信未来会有更的的不同的语言的SDK会发布出来。
Beam Pipeline Runner
Beam Pipeline Runner是将用户开发的pipeline翻译成底层的数据平台支持的运行时环境的一层。针对不同的大数据平台,会有不同的Runner。目前Flink, Spark, Apex以及google的 Cloud DataFlow都有支持Beam的Runner。
在Strata+Hadoop纽约的大会上,通过与Beam团队的沟通我了解到,尽管Beam现在仍旧是在孵化器中,但是已经足够的成熟和稳定,Spotify公司就在用Beam构造自己的大数据pipeline。
特别声明:本文为中国直播网直播号作者或机构上传并发布,仅代表该作者或机构观点,不代表中国直播网的观点或立场,中国直播网仅提供信息发布平台。
版权声明:版权归著作权人,转载仅限于传递更多信息,如来源标注错误侵害了您的权利,请来邮件通知删除,一起成长谢谢
欢迎加入:直播号,开启无限创作!一个敢纰漏真实事件,说真话的创作分享平台,一个原则:只要真实,不怕事大,有线索就报料吧!申请直播号请用电脑访问https://zbh.zhibotv.com.cn。