大数据Lambda架构「建议收藏」

蓮花仙者
发布: 2025-08-28 09:59:12
原创
216人浏览过

大家好,很高兴再次与大家见面,我是全栈君。

1 Lambda架构介绍 Lambda架构被划分为三层,分别是批处理层、服务层和加速层。

实现的最终效果,可以用下面的表达式来描述:

query = function(alldata)

大数据Lambda架构「建议收藏」

1.1 批处理层(Batch Layer, Apache Hadoop) 批处理层主要由Hadoop实现,负责数据的存储和生成任意视图数据。

计算视图数据是一个持续的过程,因此,当新数据到达时,使用MapReduce迭代地将数据聚合到视图中。

通过集中计算得到的视图,这使得视图不会被频繁更新。根据数据集的大小和集群的规模,无论什么样的迭代转换计算大约需要几个小时。

1.2 服务层(Serving layer, Cloudera Impala) 服务层由Cloudera Impala框架实现,总体来说,使用了Impala的主要特性。从批处理输出的原始文件中包含了预计算的视图数据。服务层负责建立索引和呈现视图,以便它们可以被轻松查询到。

由于批处理视图是静态的,服务层只需要提供批量更新和随机读取,而Cloudera Impala正好满足我们的需求。为了使用Impala呈现视图,整个服务层就是在Hive元数据中创建一个表,这些元数据指向HDFS中的文件。随后,用户可以立即使用Impala查询到视图。

Hadoop和Impala是批处理层和服务层的优秀工具

ListenLeap
ListenLeap

AI辅助通过播客学英语

ListenLeap 101
查看详情 ListenLeap

Hadoop可以存储和处理千兆字节(petabytes)的数据,而Impala可以快速且交互式地查询这些数据。然而,仅靠批处理和服务层无法满足实时需求。原因是MapReduce在设计上具有很高的延迟,它需要花费几个小时才能将新数据展现到视图中,然后通过媒介传递给服务层。

这就是我们需要加速层的原因。

1.3 加速层 (Speed layer, Storm, Apache HBase) 本质上,加速层与批处理层类似,都是从接收到的数据中计算出视图。加速层是为了弥补批处理层的高延迟问题,通过Storm框架计算实时视图来解决。实时视图仅包括数据结果以补充批处理视图。同时,批处理的设计是持续从获取的数据中计算批处理视图,而加速层使用的是增量模型,这是因为实时视图是增量的。加速层的高明之处在于实时视图作为临时量,只要数据传播到批处理中,服务层中对应的实时视图结果就会被丢弃。这被称为“完全隔离”,意味着架构中的复杂部分被推送到结构层中,而结构层的结果是临时的,大大方便了持续处理视图。

令人困惑的部分是如何呈现实时视图,以便它们可以被查询,以及如何使用批处理视图合并来获得所有结果。

由于实时视图是增量的,加速层需要同时进行随机读取和写入。为此,我将使用Apache HBase数据库。

HBase提供了对Storm持续进行增量化实时视图的能力,同时,为Impala提供查询经过批处理视图合并后得到的结果。Impala查询存储在HDFS中的批处理视图和存储在HBase中的实时视图,这使得Impala成为相当完美的工具。

大数据Lambda架构「建议收藏」

Lambda抽象架构也可以这样描述:

大数据Lambda架构「建议收藏」

发布者:全栈程序员栈长,转载请注明出处:https://www.php.cn/link/7d6a26f69db148bf93e86f57aec926af 原文链接:https://www.php.cn/link/c8377ad2a50fb65de28b11cfc628d75c

以上就是大数据Lambda架构「建议收藏」的详细内容,更多请关注php中文网其它相关文章!

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号