千锋扣丁学堂大数据培训之Lambda架构详解

2019-06-17 15:11:38 218浏览

今天千锋扣丁学堂大数据培训之大数据Lambda架构详解,首先MathanMarz的大作BigData:Principlesandbestpracticesofscalablereal-timedatasystems介绍了LambdaArchitecture的概念,用于在大数据架构中,如何让real-time与batchjob更好地结合起来,以达成对大数据的实时处理。


大数据平台中包括批量计算的BatchLayer和实时计算的SpeedLayer,通过在一套平台中将批计算和流计算整合在一起。

例如使用HadoopMapReduce、Spark进行批量数据的处理,使用ApacheStorm、SparkStreaming进行实时数据的处理。

这种架构在一定程度上解决了不同计算类型的问题,但是带来的问题是框架太多,会导致平台复杂度过高、运维成功高等。

Lambda架构的主要思想就是将大数据系统构建为多个层次,如下图所示:


我们来梳理一下他们是如何分工协助的:

首先newdata作为整个数据系统的数据源头,BatchLayer作为数据的批处理层次对原始数据进行加工与处理,并且将处理的数据结果的BatchView输入到ServingLayer。(这里对应的是全量数据)

SpeedLayer对于实时增加的数据进行处理,生成对增量数据计算结果的Real-timeView。(这里对应的是增量数据)

最终用户查询是通过BatchView与Real-timeView相结合的形式将最终结果呈现出来。

基于Lambda架构,一旦数据通过Batchlayer进入到Servinglayer,在Real-timeview中的相应结果就不再需要了。

Lambda架构结合了实时处理与批处理的结果,很好的反馈了查询需求,并且在速度和可靠性之间求取了平衡,具有足够的扩展性。理想状态下,所有的查询都可以定位成一个函数:

Query=Function(Data)

但是,若数据达到相当大的一个级别(例如PB),且还需要支持实时查询时,就需要耗费非常庞大的资源。

而Lambda架构将数据和计算系统进行细分:

Query=Batch(Old_Data)+RealTime(New_Data)

但是这种架构同样存在一些问题:需要运维两套不同的计算系统,并且合并查询结果,这一定程序上带来了复杂性的增加。

以上就是关于千锋扣丁学堂大数据培训之Lambda架构的全部内容,想要了解更多关于大数据开发方面内容的小伙伴,请关注扣丁学堂大数据培训官网、微信等平台,扣丁学堂IT职业在线学习教育有专业的大数据讲师为您指导,此外扣丁学堂老师精心推出的大数据视频教程定能让你快速掌握大数据从入门到精通开发实战技能。扣丁学堂大数据学习群:209080834。


扣丁学堂微信公众号                          Python全栈开发爬虫人工智能机器学习数据分析免费公开课直播间


      【关注微信公众号获取更多学习资料】         【扫码进入Python全栈开发免费公开课】



查看更多关于“大数据培训资讯”的相关文章>

标签: 大数据培训 大数据视频教程 大数据分析培训 大数据学习视频 Hadoop生态圈

热门专区

暂无热门资讯

课程推荐

微信
微博
15311698296

全国免费咨询热线

邮箱:codingke@1000phone.com

官方群:148715490

北京千锋互联科技有限公司版权所有   北京市海淀区宝盛北里西区28号中关村智诚科创大厦4层
京ICP备12003911号-6   Copyright © 2013 - 2019

京公网安备 11010802030908号