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虽然保证了离线计算的稳定性,但双系统的维护成本高且两套代码带来后期运维困难。

相关推荐
liulilittle4 分钟前
LwIP协议栈MPA多进程架构
服务器·开发语言·网络·c++·架构·lwip·通信
Lear6 分钟前
Redis 持久化机制
数据库
儒道易行17 分钟前
【攻防实战】Redis未授权RCE联动metasploit打穿三层内网(上)
数据库·redis·网络安全·缓存
小宁爱Python39 分钟前
从零搭建 RAG 智能问答系统 6:Text2SQL 与工作流实现数据库查询
数据库·人工智能·python·django
yjsstar41 分钟前
数据库MySQL基础
数据库·mysql
云边有个稻草人41 分钟前
KingbaseES数据库性能调优指南:从理论到实践的全链路解析
数据库·金仓数据库
运维行者_1 小时前
AWS云服务故障复盘——从故障中汲取的 IT 运维经验
大数据·linux·运维·服务器·人工智能·云计算·aws
nianniannnn1 小时前
Qt布局管理停靠窗口QDockWidget类
开发语言·数据库·c++·qt·qt5·qt6.3
TDengine (老段)1 小时前
TDengine 配置参数作用范围对比
大数据·数据库·物联网·时序数据库·tdengine·涛思数据
幼儿园老大*2 小时前
什么是分布式数据库?有什么优势?
数据库·分布式