Lambda架构概述
大数据Lambda架构
Lambda体系架构简介
Lambda体系架构是一种开部署模型,主要用流处理来补充批处理,以解决实时大数据问题。理想情况下,我们扫描整个数据来达到用户的某个查询需求,而实际上访问如此海量的数据必然使得响应过慢。一般公司对可用性的要求比一致性要高,简言之即服务的可用性更为重要。选择高用性而不是一致性必然会导致较弱的一致性级别。写后读可能不会返回预期的响应。如果不进行读取修复,数据可能会一直损坏。而系统性的更新会埋下数据无法恢复的隐患。
为了解决这些问题,Lambda体系结构使用不可变的数据流,并在流计算的组合中利用预计算的批处理视图。不可变地存储数据消除了数据损坏的可能性,然而,不变的数据会导致更复杂的计算。
。Lambda架构为计算查询提供三层架构:批处理层、速度层和服务层。新传入的数据流进批处理层和速度层,服务层通过整合批处理层和速度层来响应用户的查询。
Batch Layer 批处理层
批处理层接收不可变的记录流并把它们持久化到存储系统里(如HDFS),存储层用来保存主数据。任何因为数据状态的改变(更新)都会在持久层里重新计算。同时它也为服务层的视图生成任务。与加速层相比批处理层耗时较多。它能修复加速层的计算缺陷,因为它拥有全量的数据。批处理层定期重新计算视图,并将结果输出到只读存储器。
Speed Layer 加速层
加速层主要负责动态计算实时视图。它能接受一个或多个数据源并从流数据里生成实时视图。一旦计算出视图,加速层将输出到可接受随机写的数据存储系统内。、
通常,在加速层应用流处理器Flink、Storm而Redis和Apache Cassandra适合实时视图的存储。
Serving Layer 服务层
服务层负责整合实时和批处理视图即它通过获取最新的加速层和批处理层数据并做整合最终输出汇聚后的视图。服务层的关键是保证给定查询的响应时间最短,
因此,服务层可以并行化视图的查询。当两个结果都完成时,它可以生成一个聚合视图。
Lambda架构概述相关推荐
- 一篇搞懂大数据Lambda架构及实践
一.概述: 在聊lambda之前,首先要聊聊大数据中的一个痛点:如何在海量数据里做即时查询? 其实最简单的解决方法就是直接对海量数据做计算做查询,但是效率可想而知,有些计算可能需要几个小时甚至几天来完 ...
- Apache OpenWhisk架构概述
本文讲的是Apache OpenWhisk架构概述[编者的话]Apache OpenWhisk是一个开源FaaS平台.现在,AWS Lambda是FaaS最流行的实现. 在开源组件的选择中,OpenW ...
- 1小时学会:最简单的iOS直播推流(二)代码架构概述
最简单的iOS 推流代码,视频捕获,软编码(faac,x264),硬编码(aac,h264),美颜,flv编码,rtmp协议,陆续更新代码解析,你想学的知识这里都有,愿意懂直播技术的同学快来看!! 源 ...
- NR 5G 安全架构概述
安全架构概述 安全域 安全体系结构概述 该图说明了以下安全域: 网络接入安全性(I):一组安全功能,使UE能够安全地通过网络进行身份验证和接入服务,包括3GPP接入和非3GPP 接入,特别是防止对(无 ...
- Lambda架构在有赞广告平台的应用与演进
https://tech.youzan.com/lambda/ 有赞广告平台依托于有赞微商城,帮助商家投放广告.通过有赞广告平台,商家可以在腾讯广点通.云堆.小博无线等流量渠道投放广告. 对于有赞广告 ...
- Lambda架构与推荐在电商网站实践
王富平 现为1号店搜索与精准化部门架构师,之前在百度从事数据挖掘相关工作,对实时处理有着深刻的研究.一直从事大数据相关研发工作,2013年开发了一款SQL实时处理框架,致力于建设高可用的大数据业务系 ...
- netty系列之:netty架构概述
文章目录 简介 netty架构图 丰富的Buffer数据机构 零拷贝 统一的API 事件驱动 其他优秀的特性 总结 简介 Netty为什么这么优秀,它在JDK本身的NIO基础上又做了什么改进呢?它的架 ...
- Java生鲜电商平台-微服务架构概述
Java生鲜电商平台-微服务架构概述 单体架构存在的问题 在传统的软件技术架构系统中,基本上将业务功能集中在单一应用内,或者是单一进程中.尽管现代化的软件架构理论以及设计原则已推广多年,但实际技术衍化 ...
- hadoop lambda_Delta架构:统一Lambda架构并利用Hadoop / REST中的Storm
hadoop lambda 最近,一群人要求我详细介绍我为我们的书<分布式实时计算的风暴蓝图>撰写的Druid / Storm集成. 德鲁伊很棒. 风暴很棒. 两者一起解决了实时维查询/聚 ...
最新文章
- 前台传list到后台_实学:Java开发自己的博客系统-第十八篇(后台侧边栏菜单)...
- JQUERY使选定DOM元素还原end
- markdown居中文本 - 代码篇
- mysql命令大全_Keeplived+mysql双master高可用如何实现?
- 华为云优秀伙伴展示--2020-08-12
- 给妹子讲python-S01E01好用的列表
- Algs4-1.2.8引用型变量赋值-数组复制
- primefaces教程_Primefaces BlockUI组件示例教程
- yv12转nv12,nv12转I420
- 超过千字的文章,才统计勤写标兵
- adminlte php,adminLTE 教程 -1 基础
- STM32 Keil安装和配置
- html css 实现发票(付款申请书)模板
- matlab读取yuv420文件,基于matlab的YUV420播放器程序
- sublime出现中文乱码
- 计算机硬盘图标怎么更改,硬盘图标变了怎么办?WinXP电脑硬盘图标变了怎么改回来?...
- 投入产出与投入占用产出技术在经济分析中的应用(指标计算和投入产出分析)...
- win7远程服务器管理工具
- BTC的历史背景及历程
- wps里有project吗_甘特图是什么?-如何用WPS表格做甘特图
热门文章
- Solrj实现增删改查
- Java 虚拟机内存分配与回收策略
- JavaScript实现sieveOfEratosthenes埃拉托色尼筛选法算法(附完整源码)
- wxWidgets:wxWizard类用法
- boost::mpl::string相关的测试程序
- boost::function模块boost::ref的测试程序
- boost::posix_time和boost::date_time杂项的测试程序
- GDCM:gdcm::DICOMDIR的测试程序
- boost::allocator_value_type的实例
- ITK:遍历具有成形邻域的图像区域