怎么理解大数据Lambda架构

发布时间:2021-12-31 14:46:24 作者:iii
来源:亿速云 阅读:157

这篇文章主要讲解了“怎么理解大数据Lambda架构”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么理解大数据Lambda架构”吧!

1.大数据处理的挑战

缕一缕it的发展,第一阶段是各大系统各大平台的出现,解决的是线下搬到线上的效率问题,而下一个阶段是数据时代,处理这些各大平台积累的数据,积累的数据,一般比较大,大数据做的是什么,大规模的数据处理,主要是离线为主,所以就出现了hadoop的三大基础组件,分别解决大数据存储,计算,大表存储,这个阶段基本解决了大数据的计算,也即可以编写出程序,完成大数据的大规模运算,后面又出现了实时处理,第一个出现的就是storm,可以处理实时的单个数据,这样就展现了最新的数据,但是同时也看到了,如果既想要最新的又想要历史的,要怎么办呢,所以Storm的作者Nathan Mara提出了Lambda架构,这种架构主要解决离线数据计算结果怎么和实时处理的结果合并提供最后的结果。

 

2.大数据Lambda架构应该有那些特点

首先缕缕需求,我们要的就是一种在线计算结果和离线计算结果合并的架构,试想一种信贷场景,我要得到某个用户交易过的所有贷款机构,假设用这个结果来算多头分,需求场景就是要实时取到最新的数据,比如上一秒交易是A机构,那下一秒交易就得拿到这个机构,那么对于历史数据必然是要存量计算,这种计算必然是需要花费一定时间的,而上一秒交易的A机构,一般在离线仓库里面不会马上放进去,只能将这种数据放到实时处理里边, 细想这种结构,要有下面几个特点,

总的来说本质就是,数据记录 + 查询服务

 

3.大数据Lambda架构简介

前面从需求角度来说明了,一个lambda架构要满足什么特点,我们就得到了数据记录 + 查询服务的这种模式,由于数据记录的写入方式不同,lambda架构里面把写数据记录的曾分为离线批计算层和在线实时计算层

我们得到下面的一个公式

为了方便查询Query又常常作为一个view, 这样的一个lambda架构,其实现方案又很多,比如批计算层,可以使用spark,hive等来计算 离线批大数据,而实时层可以使用程序实时计算,可以选择Flink等框架,如果逻辑不复杂也可以使用程序直接生成,至于存储,又可以将离线计算和实时计算的结果分开存储或者使用时序数据库合并存储,另外对于查询,既可以用程序来合并读全部数据,有可以在视图级别做合并。

 

4.Lambda架构的分层

前面讲到大概lambda架构里面的三个模块,分别为离线计算层,在线计算层,查询服务层

首先是离线计算层,由于历史数据较多,会放到hdfs上面,计算方式,使用mr的模型计算 就可,如果有问题,是支持批量重新计算来修复的。

其次是查询view,对于离线预处理好的数据和在线计算结果进行合并提供服务。

 

5.Lambda架构的实现示例

怎么理解大数据Lambda架构  

这个架构,是一种实现方式,离线计算采用hive和spark,为了和在线计算逻辑对齐,采用相同jar依赖的方式,只不过离线计算的逻辑是在udf里面,同时有个enable_time来区分在线离线数据时间点,eggroll可以理解为类似于hbase的离线kv存储数据库。

 

6.思考Lambda架构的问题

Lambda架构经历多年的发展,其优点是稳定,对于实时计算部分的计算成本可控,批量处理可以用晚上的时间来整体批量计算,这样把实时计算和离线计算高峰分开,这种架构支撑了数据行业的早期发展,但是它也有一些致命缺点,并在大数据3.0时代越来越不适应数据分析业务的需求。缺点如下:

感谢各位的阅读,以上就是“怎么理解大数据Lambda架构”的内容了,经过本文的学习后,相信大家对怎么理解大数据Lambda架构这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!

推荐阅读:
  1. 大数据系统架构怎么理解
  2. 大数据Lambda架构概念及应用的示例分析

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

大数据 lambda

上一篇:苹果面向Mac发布英特尔处理器漏洞缓解措施的实例分析

下一篇:SnapGene for Mac有什么用

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》