一、简介

Lambda架构(Lambda Architecture)是由Twitter工程师南森·马茨(Nathan Marz)提出的大数据处理架构。

这一架构的提出基于马茨在BackType和Twitter上的分布式数据处理系统的经验。

Lambda架构使开发人员能够构建大规模分布式数据处理系统。它具有很好的灵活性和可扩展性,也对硬件故障和人为失误有很好的容错性。

Lambda 架构总共由三层系统组成:批处理层(Batch Layer),速度处理层(Speed Layer),以及用于响应查询的服务层(Serving Layer)。

1.  Lambda架构定义了一套面向大数据应用的模式和准则。更重要的是,它允许同时查询历史数据和实时新增的数据,并且获得期望的分析视图。

2. 处理历史数据(批处理)和实时数据。

3. 技术无关和通用性。Lambda架构是一种通用的模式,完全不依赖于任何技术,而且任何技术只要能满足需求,都可以在 Lambda架构中应用。

4. Lambda架构清楚地把责任划分到不同的功能模块/层中。它按照层来划分职责,完美地遵循了设计模式中的关注点分离原则。

5. 与领域无关。作为一种通用的模式, Lambda架构可以应用于不同的业务领域。

二、Lambda的命名由来

我们通常认为这个希腊字母与这一模式相关联是因为数据来自两个地方。

批量数据和快速的流式数据代表Lambda符号的弯曲部分,然后通过服务层(线段与曲线部分合并)合并,如图所示。

三、详细介绍

在 Lambda 架构中,每层都有自己所肩负的任务。
1、批处理层
存储管理主数据集(不可变的数据集)和预先批处理计算好的视图。
批处理层使用可处理大量数据的分布式处理系统预先计算结果。
它通过处理所有的已有历史数据来实现数据的准确性。
这意味着它是基于完整的数据集来重新计算的,能够修复任何错误,然后更新现有的数据视图。
输出通常存储在只读数据库中,更新则完全取代现有的预先计算好的视图。
 
2、速度处理层
会实时处理新来的大数据。
速度层通过提供最新数据的实时视图来最小化延迟。
速度层所生成的数据视图可能不如批处理层最终生成的视图那样准确或完整,但它们几乎在收到数据后立即可用。
而当同样的数据在批处理层处理完成后,在速度层的数据就可以被替代掉了。
本质上,速度层弥补了批处理层所导致的数据视图滞后。
比如说,批处理层的每个任务都需要 1 个小时才能完成,而在这 1 个小时里,我们是无法获取批处理层中最新任务给出的数据视图的。
而速度层因为能够实时处理数据给出结果,就弥补了这 1 个小时的滞后。
 
3、服务层
所有在批处理层和速度层处理完的结果都输出存储在服务层中,服务层通过返回预先计算的数据视图或从速度层处理构建好数据视图来响应查询。
 
 
原文链接:https://cloud.tencent.com/developer/article/2103250

什么是Lambda架构?的更多相关文章

  1. 大数据Lambda架构

    1 Lambda架构介绍 Lambda架构划分为三层.各自是批处理层,服务层,和加速层.终于实现的效果,能够使用以下的表达式来说明. query = function(alldata) 1.1 批处理 ...

  2. 大数据平台Lambda架构详解

    Lambda架构由Storm的作者Nathan Marz提出.旨在设计出一个能满足.实时大数据系统关键特性的架构,具有高容错.低延时和可扩展等特. Lambda架构整合离线计算和实时计算,融合不可变( ...

  3. Others-大数据平台Lambda架构浅析(全量计算+增量计算)

    大数据平台Lambda架构浅析(全量计算+增量计算) 2016年12月23日 22:50:53 scuter_victor 阅读数:1642 标签: spark大数据lambda 更多 个人分类: 造 ...

  4. Lambda架构

    转载:https://blog.csdn.net/brucesea/article/details/45937875 1.Lambda架构背景介绍 Lambda架构是由Storm的作者Nathan M ...

  5. 【大数据】大数据处理-Lambda架构-Kappa架构

    大数据处理-Lambda架构-Kappa架构 elasticsearch-head Elasticsearch-sql client NLPchina/elasticsearch-sql: Use S ...

  6. lambda架构简介

    1.Lambda架构背景介绍 Lambda架构是由Storm的作者Nathan Marz提出的一个实时大数据处理框架.Marz在Twitter工作期间开发了著名的实时大数据处理框架Storm,Lamb ...

  7. 带有Apache Spark的Lambda架构

    欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 目标 市场上的许多玩家已经建立了成功的MapReduce工作流程来每天处理以TB计的历史数据.但是谁愿意等待24小时才能获得最新的分析结果? ...

  8. 大数据处理中的Lambda架构和Kappa架构

    首先我们来看一个典型的互联网大数据平台的架构,如下图所示: 在这张架构图中,大数据平台里面向用户的在线业务处理组件用褐色标示出来,这部分是属于互联网在线应用的部分,其他蓝色的部分属于大数据相关组件,使 ...

  9. 深入理解大数据架构之——Lambda架构

    目录 传统系统的问题 Lambda架构简介 Lambda架构关键特性 数据系统的本质 Lambda的三层架构 Lambda架构组件选型 总结 原文链接:https://jiang-hao.com/ar ...

  10. 聊聊Lambda架构

    定义 在数据分析场景中,我们可能会遇到这样的问题.例如,我们要做一个推荐系统,如果我们用批处理任务去做,一天或者一小时的推荐频次明显延迟太大.如果用流处理任务,虽然延迟的问题解决了,然而只用实时数据而 ...

随机推荐

  1. Java单例对象同步问题探讨

    在本文中,作者向大家讲述了Single Call 模式的原理,同时也介绍了Single Call 模式的实现问题.  评论: 邓明 (dengming@cn.ibm.com), 高级信息系统工程师, ...

  2. mysql5.7之JSON数据类型

    1.json对象 1.1.方法 使用对象操作的方法进行查询:字段->'$.json属性' 使用函数进行查询:json_extract(字段, '$.json属性') 获取JSON数组/对象长度: ...

  3. Mongodb4.4安装与使用

    MongoDB是一个高性能,开源,无模式的文档型数据库,是当前NoSql数据库中比较热门的一种.MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能 最丰富,最像关系数 ...

  4. spring 使用 事件机制

    概述 在编写代码的时候,比如我删除一篇文章,这个时候,如果我想做些额外的逻辑,这是就需要修改删除部分的代码.spring 提供了事件机制更优雅的实现这个,用户只需要实现事件监听即可. 代码实现 注入发 ...

  5. 算法(第四版)C# 习题题解——3.2

    写在前面 整个项目都托管在了 Github 上:https://github.com/ikesnowy/Algorithms-4th-Edition-in-Csharp 查找更方便的版本见:https ...

  6. 李世铭SFE|销售的四种境界-与之匹配的CRM功能

    销售有四种境界,与之匹配的也应有四种不同的CRM系统的功能. 1.服务型销售 这类销售代表人数最为众多,超过半数的销售代表皆属于服务型.他们主要基于客户的需求,来提供相应的解决方案,或者公司所规定的某 ...

  7. VTK 正交投影 透视投影

    VTK默认透视投影(近大远小),如果想改成正交投影(平行投影,远近一样): 1.调用vtkCamera的ParallelProjectionOn函数开启 2.通过vtkCamera的SetParall ...

  8. GooseFS透明加速能力,助力加速 CosN 访问 COS 的性能

    01 前言 原生的对象存储接口协议并不兼容HDFS文件语义,因此对象存储COS提供了COSN工具这一的标准的 Hadoop 文件系统实现,可以为 Hadoop.Spark 以及 Tez 等大数据计算框 ...

  9. IOS多线程之NSOperation(3)

    IOS多线程之NSOperation(3) 操作优先级和服务质量 可以通过QueuePriority属性来设置operation在队列中的执行优先级 public enum QueuePriority ...

  10. go编译可以指定os和arch

    是的,Go 编译器支持通过环境变量来指定目标操作系统(OS)和架构(Arch).这允许你为不同的平台交叉编译 Go 程序.你可以使用 GOOS 和 GOARCH 环境变量来指定目标系统. 例如,如果你 ...