Kappa架构

1.Kappa架构介绍

Kappa架构由Jay Kreps提出,不同于Lambda同时计算和批计算并合并视图,Kappa只会通过流计算一条的数据链路计算并产生视图。Kappa同样采用了重新处理事件的原则,对于历史数据分析类的需求,Kappa要求数据的长期存储能够以有序日志流的方式重新流入流计算引擎,重新产生历史数据的视图。本质上是通过改进Lambda架构中的Speed Layer,使它既能够进行实时数据处理,同时也有能力在业务逻辑更新的情况下重新处理以前处理过的历史数据。

Kappa架构的原理就是:在Lambda的基础上进行了优化,删除了Batch Layer的架构,将数据通道以消息队列进行替代。因此对于Kappa架构来说,依旧以流处理为主,但是数据却在数据湖层面进行了存储,当需要进行离线分析或者再次计算的时候,则将数据湖的数据再次经过消息队列重播一次则可。

2.Kappa架构的优缺点

Kappa架构的优点在于将实时和离线代码统一起来,方便维护而且统一了数据口径的问题,避免了Lambda架构中与离线数据合并的问题,查询历史数据的时候只需要重放存储的历史数据即可。而Kappa的缺点也很明显:

(1)消息中间件缓存的数据量和回溯数据有性能瓶颈。通常算法需要过去180天的数据,如果都存在消息中间件,五一有非常大的压力。同时,一次性回溯订正180天级别的数据,对实时计算的资源消耗也非常大。

(2)在实时数据处理时,遇到大量不同的实时留进行关联时,非常依赖实时计算系统的能力,很可能因为数据流先后顺序问题,导致数据丢失。

(3)Kappa在抛弃了离线数据处理模块的时候,同时抛弃了离线计算更叫稳定可靠的特点。Lambda虽然保证了离线计算的稳定性,但双系统的维护成本高且两套代码带来后期运维困难。

相关推荐
lzb_kkk13 分钟前
【Redis】redis5种数据类型(list)
开发语言·数据库·redis
一勺菠萝丶2 小时前
深入理解Elasticsearch的`_source`字段与索引优化
大数据·elasticsearch·jenkins
MXsoft6182 小时前
数据中心服务器与存储运维的深度实践与挑战
数据库
Fireworkitte3 小时前
MySQL常用的函数
数据库·mysql
qq_200337393 小时前
可以从以下几个方面判断一个 SQL 查询是否需要优化:
数据库
乐容3 小时前
14,子查询语句嵌套
数据库
cyt涛3 小时前
Redis访问工具
数据库·redis·spring cache·注解·客户端·lettuce·redistemplae
AllWe$4 小时前
九、Redis 的实际使用与Redis的设计
数据库·redis·缓存
Tinalee-电商API接口呀4 小时前
python爬虫爬取淘宝商品比价||淘宝商品详情API接口
大数据·开发语言·人工智能·爬虫·python·json
u0133087094 小时前
大模型训练数据库Common Crawl
数据库·语言模型