首页   快速返回

大数据处理之Lambda架构和Kappa架构     所属分类 architecture
Lambda 架构

由Storm的作者Nathan Marz提出,设计目的在于提供一个能满足大数据系统关键特性的架构,包括高容错、低延迟、可扩展等。
整合离线计算与实时计算,融合不可变性、读写分离和复杂性隔离等原则,可集成Hadoop, Kafka, Spark,Storm等大数据组件。

可分解为三层Layer,即Batch Layer, Real-Time(Speed) Layer和Serving Layer。


Batch Layer  用于离线计算 
Speed Layer  处理增量数据
Serving Layer 合并Batch和speed layer 中的结果数据集得到最终数据集

speed view    batch view 

适用场景 逻辑比较复杂且要求延迟比较小 ,比如搜索引擎、推荐引擎等




Kappa 架构
由LinkedIn的Jay Kreps提出,用于替换 Lambda 架构
Lambda 架构的问题 需要维护两套代码 批处理 和 流处理 
直接让流系统来处理全量数据 分布式 扩展性

使用流计算对全量数据进行重新计算的过程

1 用Kafka或类似的分布式队列保存历史数据
2 全量计算时,重新起一个流计算实例,从头开始读取数据进行处理,并输出保存结果。
3 当新的实例完成后,停止老的流计算实例,并删除老的结果




上一篇     下一篇
程序员之歌之燃烧我的计算机

IT工程师的八荣八耻

目录大小统计du命令实战

es和关系数据库简单对比

努力做一个懂生活的人

rpm和yum的区别和联系