网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
大数据处理系统架构主要包括以下几个方面:
-
数据采集层:数据采集是大数据系统中非常重要的一步。大数据处理系统可以通过数据传感器、日志、文件等多种方式采集数据。数据采集层需要考虑数据的格式、容量、采集周期等因素。
-
数据存储层:数据存储是大数据系统中非常重要的一部分。大数据处理系统可以使用多种存储方式,如HDFS、NoSQL数据库、关系型数据库等。数据存储层需要考虑数据的安全性、可扩展性、高可用性等因素。
-
数据处理层:数据处理是大数据系统中最复杂的一部分。大数据处理系统可以使用多种处理方式,如MapReduce、Spark、Flink等。数据处理层需要考虑数据处理的速度、可扩展性、容错性、计算能力等因素。
-
数据查询层:数据查询是大数据系统中非常重要的一部分。大数据处理系统可以使用多种查询方式,如Hive、Presto、Drill等。数据查询层需要考虑查询的效率、可扩展性、数据精确性等因素。
-
数据可视化与分析层:大数据处理系统可以使用多种数据可视化工具,如Tableau、Power BI等。数据可视化与分析层需要考虑用户体验、数据分析的精准性等因素。
综上所述,大数据处理系统架构需要根据实际需求和情况综合考虑以上因素,构建一个高效可靠的大数据处理系统。
大数据处理系统而临挑战
-
如何利用信息技术等手段处理非结构化和半结构化数据
-
如何探索大数据复杂性、不确定性特征描述的刻画方法及大数据的系统建模
-
数据异构性与决策异构性的关系对大数据知识发现与管理决策的影响
大数据处理系统架构特征
1 . 鲁棒性和容错性( Robust and Fault-tolerant )
2.低延迟读取和更新能力( Low Latency Reads and Updates )
-
横向扩容( Scalable )
-
通用性( General )
-
延展性( Extensible )
6 . 即席查询能力( Allows Ad Hoc Queries )
7 . 最少维护能力( Minimal Maintenance )
- 可调试性( Debuggable )
Lambda 架构
Lambda架构对大数据处理系统的理解
Lambda 是用于同时处理离线和实时数据的,可容错的,可扩展的分布式系统。它具备强鲁棒性,提供低延迟和持续更新。
Lambda架构应用场景
-
机器学习中的Lambda 架构
-
物联网的Lambda 架构
-
流处理和Lambda 架构挑战
Lambda架构介绍
Lambda 架构可分解为三层,即批处理层、加速层和服务层。
Batch Layer 有两个核心功能: 存储数据集和生成Batch View.
主数据集中的数据必须具有以下三个属性:
( 1 ) 数据是原始的.
( 2 ) 数据是不可变的.
(3 ) 数据永远是真实的.
( 1) Speed Layer 处理的数据是最近的增量数据流, Batch Layer 处理的全体数据集。
(2) Speed Layer 为了效率,接收到新数据时不断更新Realtime View,而Batch Layer 根据全体离线数据集直接得到Batch View 。
Lambda 架构将数据处理分解为Batch Layer 和Speed Layer 有如下优点:
· 容错性。
· 复杂性隔离。
· Scalable (横向扩容) :当数据量/负载增大时,可扩展性的系统通过增加更多的机器资源来维持性能。
Lambda架构的实现
Lambda架构优缺点
- 优点
(1)容错性好。Lambda 架构为大数据系统提供了更友好的容锚能力,一旦发生错误,我们可以修复算法或从头开始重新计算视图。
(2) 查询灵活度高。批处理层允许针对任何数据进行临时查询。
(3)易伸缩。所有的批处理层、加速层和服务层都很容易扩展。因为它们都是完全分布式的系统,我们可以通过增加新机器来轻松地扩大规模。
( 4 ) 易扩展。添加视图是容易的,只是给主数据集添加几个新的函数。
2 . 缺点
(1)全场景覆盖带来的编码开销。
(2) 针对具体场景重新离线训练一遍益处不大。
(3)重新部署和迁移成本很高。
Lambda与其他架构模式对比
事件溯源( Event Sourcing )与Lambda 架构
CQRS 与Lambda 架构
Kappa 架构
Kappa架构下对大数据处理系统的理解
数据的特性
数据的存储
Kappa架构介绍
Kappa 架构的原理就是:在Lambda 的基础上进行了优化,删除了Batch Layer 的架构,将数据通道以消息队列进行替代。
从使用场景上来看, Kappa 架构与Lambda 相比,主要有两点区别:
( 1) Kappa 不是Lambda 的替代架构,而是其简化版本, Kappa 放弃f 对批处理的支持,更擅长业务本身为增量数据可入场景的分析需求,例如各种时序数据场景, 天然在在时间窗口的概念,流式计算直接满足其实时计算和历史补偿任务需求:
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
点,真正体系化!**
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新