大数据常用处理架构总结

Lambda 架构
目标是构建一个通用的、健壮的大数据系统,能够同时满足实时查询和历史数据批处理的需求。
Lambda架构总共由三层系统组成:批处理层(Batch Layer),速度处理层(Speed Layer),以及用于响应查询的服务层(Serving Layer)。
批处理层:存储管理主数据集(不可变的数据集)和预先批处理计算好的视图。
速度处理层:会实时处理新来的大数据。
速度层弥补了批处理层所导致的数据视图滞后。
服务层:所有在批处理层和速度层处理完的结果都输出存储在服务层中,服务层通过返回预先计算的数据视图或从速度层处理构建好数据视图来响应查询。
架构问题:
系统复杂度高:需要同时开发和维护批处理系统和流式系统。
通过日志重播实现低延迟查询,会导致数据冗余。
实时视图和批处理视图存在延迟不一致的问题。

Kappa 架构
Kappa架构是对Lambda架构的改进,去除了Lambda架构的批处理层,直接通过流式处理系统实现整个流程。
Kappa架构主要包含两个层:
流式处理层:通过流式处理系统接收所有数据,并进行实时计算,更新存储中的结果视图。
服务层:对外提供查询服务,直接基于流式处理层更新的结果视图进行查询返回。
架构问题:
历史数据分析相对复杂。
需要流式系统保证精确一次语义。

流批一体 架构
流批一体(Unified Batch and Streaming Processing)是指将流式处理和批处理统一在一个运行时框架中,进行一体化的处理。
流批使用同一组数据处理工具和技术,如Apache Spark、Apache Flink等。
流批使用同一套数据处理代码。
流批数据在同一套数据存储系统中,如Apache HBase、Apache Cassandra等。

Dataflow 模型
DataFlow模型是一种用于描述数据处理流程的计算模型,它描述了数据从源头到目的地的流动过程,并指定了数据处理的方式和顺序。
DataFlow 模型常用于并行计算和数据流处理领域,例如流处理框架Apache Flink就是基于DataFlow模型实现的。
数据被视为流动的实体,数据处理被视为一系列的数据转换操作。
数据处理操作通常被描述为有向图中的节点,数据流动则被描述为有向边。

实时数仓
实时数仓具有大数据规模的小数据语义和性能,可以处理实时数据、最新数据和历史数据,并且能够跨数据域进行相关性分析。
实时数仓通常具有四个组件:数据收集层、数据存储层、实时计算层和实时应用层。
这些组件协同工作,以便在事件发生后立即或短时间内支持事件数据的处理和分析。
所有数据处理阶段(数据摄取、丰富、分析、基于AI/ML的分析)都是连续的,具有最小延迟,并且能够实现实时报告和即席分析。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值