1.大数据系统架构
大数据系统是一个复杂的、为数据提供其生命周期(从数据的产生到消亡)的不同阶段数据处理功能的系统。系统架构是指大数据系统的各子系统之间的相互关系,是所有大数据系统的基本技术。从层次结构的角度来看,大数据系统能够从四个层次上进行理解,包括:基础设施层、存储层、计算层以及应用层。
![大数据系统架构 大数据系统架构](//ziboxinyan.com/FileUpload/ueditor_s/upload/2022-8/17/63796333889863.jpg)
基础设施层:是其他三个层次的基础,为大数据系统提供硬件基础,包括服务器和物理主机等。
存储层:为处理层和应用层提供基础,可实现大批量数据的采集、存储和管理。当前主要包括HDFS、HBase、DB
等组件。不同数据的存储要求不同,适合存储在不同类型的数据库中。数据管理是指针对分式文件系统、SQL关系型数据库或No
SQL非关系型数据库等提供数据的高效管理和持久存储的工具和机制。
计算层:包括多种计算分析组件和大数据计算框架。具有代表性的包括编程模型等。编程模型为数据分析的应用提供便利,同时实现了应用逻辑的抽象。Map
Reduce,SparkRDD编程模型,Dryad,Pregel和Dremel是几个典型的编程模型。
应用层:用各种协议的方式对外部应用提供的编程接口。通过编程模型提供的接口能够达到对数据进行处理以及分析等很多的作用,包括对数据进行查看、处理等,同时,还可以进行信息比对,路径优化等。同时利用组合基本的分析方法可开发不同领域的相关应用。
2.大数据系统功能模块
大数据系统应包含的功能模块,首先是能够从多种数据源获取数据的功能,数据的预处理(例如,清洗,验证等),存储数据,数据处理、数据分析等(例如做预测分析,生成在线使用建议等等),最后呈现和可视化的总结、汇总结果。
(1)数据源
当今的IT生态系统,需要对各种不同种类来源的数据进行分析。这些来源可能是从在线Web应用程序,批量上传或feed,流媒体直播数据,来自工业、手持、家居传感的任何东西等等。
显然从不同数据源获取的数据具有不同的格式、使用不同的协议。例如,在线的Web应用程序可能会使用SOAP/XML格式通过HTTP发送数据,feed可能会来自于CSV文件,其他设备则可能使用MQTT通信协议。
由于这些单独的系统的性能是不在大数据系统的控制范围之内,并且通常这些系统都是外部应用程序,由第三方供应商或团队提供并维护,所以本文将不会在深入到这些系统的性能分析中去。
(2)数据采集
获取数据。这个过程包括分析,验证,清洗,转换,去重,然后存到适合你们公司的一个持久化设备中(硬盘、存储、云等)。
(3)存储数据
一旦数据进入大数据系统,清洗,并转化为所需格式时,这些过程都将在数据存储到一个合适的持久化层中进行。
(4)数据处理和分析
在这一阶段中的一部分干净数据是去规范化的,包括对一些相关的数据集的数据进行一些排序,在规定的时间间隔内进行数据结果归集,执行机器学习算法,预测分析等。
(5)数据的可视化和数据展示
最后,展示经过各个不同分析算法处理过的数据结果。该步骤包括从预先计算汇总的结果(或其他类似数据集)中的读取和用一种友好界面或者表格(图表等等)的形式展示出来。这样便于对于数据分析结果的理解。
以上梳理了大数据系统的架构及功能,希望对你有所帮助,如果你想了解更多相关内容,敬请关注三个皮匠报告的行业知识栏目。
推荐阅读:
什么是大数据营销系统?有哪些?排名一览
大数据分析是什么?方法有哪些?
什么是大数据存储?与传统数据存储的区别分析