系统架构-大数据架构设计

基础介绍

三大挑战:

  1. 如何处理非结构化和半结构化数据
  2. 如何探索大数据复杂性、不确定性特征描述的刻画方法及大数据的系统建模
  3. 数据异构性与决策异构性的关系对大数据知识发现与管理决策的影响

架构特征:

  1. 鲁棒性(稳定性)和容错性
  2. 低延迟读取和更新能力
  3. 横向扩容
  4. 通用性
  5. 延展性
  6. 即席查询能力(高效的用户查询)
  7. 最少维护能力
  8. 可调试性

Lambda架构

设计目的在于提供一个能满足大数据系统关键性的架构,整合了离线计算与实时计算。

Lambda架构分解为三层:批处理层、加速层和服务层

批处理层(离线):产生批处理结果视图,结果认为是精准且全量的,但处理时延较高

加速层:处理最近的增量数据流。在接收到新的数据后会不断更新视图

服务层:合并批处理层产出的视图和加速层产出的实时视图,最终得到数据集,响应用户的查询请求

优点:容错性好、查询灵活度高、易伸缩、易扩展,读写分离

缺点:全场景覆盖带来的编码开销,针对具体场景的离线处理开销很大

事件溯源与Lambda架构:

  • 整个系统以事件为驱动
  • 事件是核心,事件保存在某种存储上
  • 业务数据 只是一些由事件产生的视图

Kappa架构

在lambda架构的基础上进行优化,删除了Batch Layer(批处理层),将数据通道以消息队列进行替代。当需要进行离线分析或再次计算时,则将数据湖的数据再次经过消息队列重播一次。

优点:将实时和离线代码统一起来,避免了Lambda架构中与离线数据合并的问题

缺点:消息中间件缓存的数据量和回溯数据有性能瓶颈;非常依赖实时计算系统的能力;抛弃了离线计算更加稳定可靠的特定

Kappa+架构:让流计算框架Spark直接读取HDFS(Hadoop)里的数据仓库数据(历史/离线数据),一并实现实时计算和历史数据计算。

相关推荐
掘金-我是哪吒23 分钟前
分布式微服务系统架构第132集:Python大模型,fastapi项目-Jeskson文档-微服务分布式系统架构
分布式·python·微服务·架构·系统架构
源码技术栈36 分钟前
SaaS基于云计算、大数据的Java云HIS平台信息化系统源码
java·大数据·云计算·云his·his系统·云医院·区域his
Elastic 中国社区官方博客41 分钟前
Elasticsearch 索引副本数
大数据·数据库·elasticsearch·搜索引擎·全文检索
Eternity......1 小时前
SparkSQL基本操作
大数据·spark
268572591 小时前
Elasticsearch 初步认识
大数据·elasticsearch·搜索引擎·全文检索·es
python算法(魔法师版)1 小时前
网络编程入门(一)
大数据·网络·网络协议·计算机网络
掘金-我是哪吒2 小时前
分布式微服务系统架构第129集:redis安装部署文档
redis·分布式·微服务·架构·系统架构
caihuayuan53 小时前
生产模式下react项目报错minified react error #130的问题
java·大数据·spring boot·后端·课程设计
兔子坨坨3 小时前
详细了解HDFS
大数据·hadoop·hdfs·big data