大数据架构设计(四十五)

大数据架构有Lambda架构和Kappa架构。

大数据可以解决的问题?

  1. 处理非结构化和半结构化数据。
  2. 大数据复杂性、不确定性特征描述和刻画方法以及大数据系统建模。
  3. 数据易构性 与 决策易购性的关系。(数据易构性主要是不同的数据库种类)

大数据处理系统系统特征:

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

Lambda架构设计目的在于提供一个满足大数据系统关键特性的架构。整合离线计算和实时计算,融合不可变性、读写分离和复杂性隔离等原则。

Lambda架构应用场景:机器学习、物联网、流处理。

可分解为三层:

批处理层、加速层和服务层。

批处理层:处理离线数据,历史数据

加速层:实时计算,追加的在线数据

服务层:流处理视图、批处理视图和查询视图。

Hadoop(HDFS)用于存储主数据集,Spark可构成加速度层,HBase作为服务层。

Hadoop是分布式文件系统,存储我们的历史主数据。

Spark是专门大数据处理,快速通用的计算引擎。

Lambda优点:容错性好,查询灵活性,易扩展和易伸缩。

缺点:全场景覆盖代码带来的开销。针对离线的益处不大,可以考虑不需要批处理,只需要实时处理。

Lambda本质是事件溯源(隐式调用)和CQRS 读写分离。

因为lambda是通过消费kafka来存储和计算数据的,以事件驱动为核心,业务数据只是驱动产生的视图,并且 批处理和加速层实现读写分离。写到视图再从视图里面读,并不是实时写和实时读。

Kappa架构的原理

在lambda的基础上进行优化,删除了batch layer批处理层,将数据通道以消息队列进行代替。来了数据直接塞到消息队列,以流处理为主,实时计算没有问题,当需要离线分析的时候,则将数据湖的数据再次通过消息队列重播一次。

Kappa和lambda的区别:

  1. kappa不是lambda的替换架构,而是其简化版,kappa擅长数据增量的写入。
  2. Lambda更适合对历史数据的分析。

Kappa的缺点:

  1. 消息中间件 缓存的数据量和回溯数据有性能瓶颈。通常算法是180天的数据回溯。
  2. 大量不同的实时流进入消息队列,非常依赖计算机系统的能力。
  3. 抛弃了离线数据,所以它离线计算没有lambda稳定。

Kappa+流式数据处理框架,核心思想是读取HDFS里数据仓库数据,一并实现实时计算和历史数据计算。

混合架构系统:

Kappa+flink构件kappa架构,利用Flink来计算,主要解决kappa分析历史数据能力不足问题。

区别:

开发复杂度和维护:

Lambda架构更复杂,开发和维护成本高,需要维护两套。

Kappa架构只需要维护一套,复杂度低,开发、维护成本低。

计算开销:

Lambda需要一直运行批处理,实时计算,计算开销大。

Kappa必要进行全量计算,计算开销相对小。

实时性:

Lambda和kappa都可以满足实时性。

历史数据处理能力:

Lambda批示全量处理,吞吐量大,历史数据处理能力强。

Kappa流式全量处理,吞吐相对较低,历史处理能力弱。

如果业务对Hadoop和spark和strom等关键技术依赖,选择lambda。

如果依赖Flink计算引擎,则kappa更合适。

批处理层每天凌晨将kafka浏览、下单消息同步到HDFS,再将HDFS中的日志解析成Hive表,用hive sql/spark sql计算出分区统计结果hive表,最终hive表导出到mysql服务中。另一方面曝光、点击和花费通过外部数据的第三方api获取,写入mysql表。

相关推荐
YangYang9YangYan14 小时前
2026 校招商品分析岗位 JD 拆解,核心指标、工具与面试考点
大数据·数据库·数据分析
大大大大晴天14 小时前
OpenMetadata VS DataHub VS Atlas VS Gravitino
大数据
Qyr9917 小时前
2026全球汽车碳刷行业发展全景分析报告
大数据
蓝速科技18 小时前
便民服务大厅 AI 数字人一体机场景适配与落地指南丨蓝速科技
大数据·网络·数据结构·人工智能·自然语言处理·数据分析·运维开发
精益数智工坊18 小时前
云计算环境数据怎么同步?云计算集成方案有哪些?
大数据·人工智能·数据挖掘·数据可视化
huashengzsj19 小时前
什么是DMS经销商管理系统?国内经销商管理系统有哪些品牌
大数据
IT毕设梦工厂20 小时前
计算机毕业设计选题推荐:基于大数据的草鱼价格分析与可视化|毕业设计选题|计算机毕设|选题推荐|毕设指导|项目定制|源码|高质量项目
大数据·hadoop·python·数据挖掘·数据分析·课程设计·大数据毕设项目
辛迪聊物业数字化21 小时前
智慧社区物业管理软件新手部署与实操指南
大数据·php
字节跳动数据平台21 小时前
模型再强,为什么 Demo 还是进不了生产?
大数据
南京兴帝文化传媒有限公司21 小时前
本地生活服务GEO优化实战:宁国花店地图关键词布局带来订单翻倍的技术路径
大数据·人工智能·生活·geo 优化·geo优化避坑·ai搜索获客