惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

I
InfoQ
C
CERT Recently Published Vulnerability Notes
The Last Watchdog
The Last Watchdog
P
Proofpoint News Feed
D
Darknet – Hacking Tools, Hacker News & Cyber Security
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
GbyAI
GbyAI
T
Tenable Blog
博客园 - 三生石上(FineUI控件)
P
Privacy & Cybersecurity Law Blog
Simon Willison's Weblog
Simon Willison's Weblog
Jina AI
Jina AI
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
T
Tor Project blog
博客园_首页
F
Fortinet All Blogs
博客园 - Franky
Latest news
Latest news
Last Week in AI
Last Week in AI
T
Threat Research - Cisco Blogs
Scott Helme
Scott Helme
L
LINUX DO - 热门话题
U
Unit 42
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
Hugging Face - Blog
Hugging Face - Blog
D
Docker
Project Zero
Project Zero
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
MongoDB | Blog
MongoDB | Blog
F
Full Disclosure
D
DataBreaches.Net
Google DeepMind News
Google DeepMind News
Cisco Talos Blog
Cisco Talos Blog
Y
Y Combinator Blog
WordPress大学
WordPress大学
C
Cyber Attacks, Cyber Crime and Cyber Security
H
Help Net Security
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
月光博客
月光博客
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
Blog — PlanetScale
Blog — PlanetScale
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
S
Schneier on Security
C
Cybersecurity and Infrastructure Security Agency CISA
P
Proofpoint News Feed
PCI Perspectives
PCI Perspectives
Cloudbric
Cloudbric
V
Visual Studio Blog
Recorded Future
Recorded Future
人人都是产品经理
人人都是产品经理

博客园 - 飞翔在天

AI 辅助开发 - 整体 反应式编程 【转载】技术方案设计的方法论及案例分享—如何体现技术深度 云原生 性能调优 团队管理 技术管理 【生产案例】日登录用户、月登录用户统计、聚合统计 【生产案例】点赞数、排行榜、未读消息数(含B站方案) 【JVM】类加载器&双亲委派 【架构】单元化架构 【配置项读取】 如何写好代码 【缓存】基本理论 【生产案例】 【架构-案例】聊天系统 【Spring】整体 【JVM】 【Spring-WebFlux】响应式 AI ServiceComb
Lambda架构和Kappa架构
飞翔在天 · 2025-07-07 · via 博客园 - 飞翔在天

Lambda和Kappa都是为了解决大量数据的移动,以实现可靠的在线访问而提出的数据架构。 最受欢迎的架构一直是并将继续是Lambda架构。 然而,随着流式处理变得更容易获得,在不久的将来你也会听到更多关于Kappa架构的消息。

Lambda架构

数据摄取层(Ingestion layer)负责收集原始数据并将其复制以分别进行进一步的实时和批处理。

除了数据摄取层以外,Lambda架构还包含其它三个层:

  1. 速度或流式层(Speed or Stream): 这里的原始数据是实时传入的,由流式处理框架(例如 Flink)处理,然后传递到服务层(Serving layer)以创建实时视图,以实现接近实时数据访问的低延迟。
  2. 批处理层(Batch Layer):使用批处理框架(如 Spark)的对原始数据进行ETL处理,为离线历史数据访问创建可靠的批处理视图。
  3. 服务层(Serving Layer):这是处理后的数据暴露给用户的地方。 最新的实时数据可以从实时视图访问或与批处理视图相结合以获得完整的历史记录。历史数据可以通过批处理视图访问。

在批处理层和流式层中,不同技术的代码处理是重复的,会导致逻辑分歧。两套处理的计算资源重复的,这需要让我们管理两个计算基础设施。

分布式批处理存储是可靠的和可扩展的,即使系统崩溃,它也很容易恢复且没有错误。

Kappa架构

Kappa架构是一种处理大数据的架构,它作为Lambda架构的替代方案出现。Kappa架构的核心思想是简化数据处理流程,通过使用单一的流处理层来同时处理实时和批量数据,从而避免了Lambda架构中需要维护两套系统(批处理层和速度层)的复杂性。

Kappa架构将批处理和实时处理负载都视为流式处理的问题。

使用速度层(Speed Layer)仅为了实时和批处理访问提供数据:

主要包含两个层:

  1. 速度或流式层(Speed or Stream):类似于Lambda架构,但通常会包含分层存储,这意味着所有进入系统的数据都无限期地存储在不同的存储层中。例如,将S3GCS用于历史数据,而磁盘日志用于热数据。
  2. 服务层(Serving Layer):与Lambda架构相同,但所有转换都在速度层(Speed Layer)中执行。

有些转换很难在速度层(Speed Layer)中执行(例如复杂的连接join),最终会被推送到 批处理存储中进行实现。