首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

系统架构设计师:大数据架构设计理论与实践--Lambda架构应用场景

Lambda架构对大数据处理系统的理解Lambda架构由 Storm的作者Nathan Marz提出,其设计目的在于提供一个能满足大数据系统关键特性的架构,包括高容错、低延迟、可扩展等。其整合离线计算与实时计算,融合不可变性、读写分离和复杂性隔离等原则,可集成Hadoop、Kafka、Spark、Storm等各类大数据组件。Lambda是用于同时处理离线和实时数据的,可容错的,可扩展的分布式系统。它具备强鲁棒性,提供低延迟和持续更新。

1.机器学习中的Lambda架构

在机器学习领域,数据量无疑是多多益善的。但是,对于机器学习应用算法、检测模式而言,它们需要以一种有意义的方式去接收数据。因此,机器学习可以受益于由 Lambda架构构建的数据系统、所处理的各类数据。据此,机器学习算法可以提出各种问题,并逐渐对输入到系统中的数据进行模式识别。

2.物联网的Lambda架构

如果说机器学习利用的是Lambda架构的输出,那么物联网则更多地作为数据系统的输入。设想一下,一个拥有数百万辆汽车的城市,每辆汽车都装有传感器,并能够发送有关天气、空气质量、交通状况、位置信息以及司机驾驶习惯等数据。这些海量数据流,会被实时馈入Lambda体系架构的批处理层和速度层,进行后续处理。可以说,物联网设备是适合作为大数据源的绝佳示例。

3.流处理和Lambda架构挑战

速度层也被称为“流处理层”。其目的是提供最新数据的低延迟实时视图。虽说,速度层仅关心自完成最后一组批处理视图以来导入的数据,但事实上它不会存储这些小部分的数据。这些数据在流入时就会被立即处理,且在完成后被立即丢弃。因此,我们可以认为这些数据是尚未被批处理视图所计入的数据。

Lambda体系架构在其原始理论中,提到了最终精度(eventual accuracy)的概念。它是指:批处理层更关注精确计算,而速度层则关注近似计算。此类近似计算最终将由下一组视图所取代,以便系统向“最终精度”迈进。

在实际应用中,由于实时处理流以毫秒为单位,持续产生用于更新视图的数据流,是一个非常复杂的过程。因此,将基于文档的数据库、索引以及查询系统配合在一起使用,是一种比较好的选择。

整理不易动动你发财的小手点个“在看”哦!

您的支持是我坚持的动力,谢谢

  • 发表于:
  • 原文链接https://page.om.qq.com/page/OjLcOUH5veHzUDesn1dv2Efw0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券