楼主: a1032077316
789 1

[学习笔记] 【学习笔记】大规模数据处理11:Kappa架构 Lambda架构结合了批处理和流处理的 ... [推广有奖]

  • 4关注
  • 3粉丝

已卖:14份资源

本科生

83%

还不是VIP/贵宾

-

威望
0
论坛币
3130 个
通用积分
112.1189
学术水平
0 点
热心指数
6 点
信用等级
0 点
经验
13150 点
帖子
112
精华
0
在线时间
3 小时
注册时间
2017-1-17
最后登录
2021-11-27

楼主
a1032077316 发表于 2019-7-26 21:39:13 来自手机 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
大规模数据处理11:Kappa架构
Lambda架构结合了批处理和流处理的架构思想,将进入系统的大规模数据同时送入这两套架构层中,分别是批处理层Batch Layer和速度层Speed Layer,同时产生两套数据结果并存入服务层。
Lambda架构具有很好的灵活性,你可以将现有开源生态圈中不同的平台套入到这个架构中。
Lambda架构的不足: 表现在它的维护很复杂。使用Lambda架构时,架构时需要维护两个复杂的分布式系统,并且保证他们逻辑上产生相同的结果输出到服务层中。
在架构中加入批处理层是因为从批处理层得到的结果具有高准确性,而加入速度层是因为它在处理大规模数据时具有低延时性。
Kappa架构就是在改进批处理层系统,使其具有低延时性,改进速度层系统,使其数据视图具有准确性和更加接近历史数据的背景下产生的。
以Kafka为例,讲解Kappa架构:
1.部署Apache Kafka 并设置数据日志的保留期,这里的保留期指的是你希望能够重新处理的历史数据的时间区间
2.如果我们需要改进现有的逻辑算法,那就表示我们需要对历史数据进行重新处理。
我们需要做的就是重新启动一个Kafka作业实例,这个作业实例将重头开始,重新计算保留好的历史数据,并将结果输出到一个新的数据视图中,我们知道kafka的底层使用Log Offset来判断现在已经处理到的哪个数据块了,所以只需要将Log offset设置为0,新的作业实例就会重头开始处理历史数据。
3.当这个新的数据视图处理过的数据进度赶上了旧的数据视图时,我们的应用便可以切换到从新的数据视图中读取。
4.停止旧版本的作业实例,并删除旧的数据视图
因为Kappa架构只保留了速度层而缺少批处理层,在速度层上处理大规模数据可能会有数据更新出错的情况发生,这就需要我们花费更多的时间在处理这些错误异常上面。Kappa架构并不适合于批处理和流处理代码逻辑不一致的场景。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:Lambda kappa lamb 学习笔记 数据处理

已有 1 人评分论坛币 收起 理由
经管之家编辑部 + 100 精彩帖子

总评分: 论坛币 + 100   查看全部评分

沙发
经管之家编辑部 在职认证  发表于 2019-7-27 06:39:19
学习笔记奖!

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
jg-xs1
拉您进交流群
GMT+8, 2026-1-7 06:15