大数据平台架构
文章图片
大数据平台架构大致可分为五个层级。
顶层为应用层,提供数据服务与可视化,解决企业实际问题。
第二层是大数据处理核心,包括数据处理、交互式分析以及机器学习与数据挖掘。
第三层是资源调度,为了充分利用系统资源,提高全系统的资源利用率以及增强系统扩展性,需要进行统一的资源管理与调度。
第四层是数据存储,如何解决海量数据的读写问题,是实现大数据平台的构建的基础。
第五层是数据获取,快速、高效获取到海量信息是大数据的前提。
文章图片
数据获取 数据总体可分为结构化数据和非结构化数据。结构化数据也称作行数据,是由二维表结构来逻辑表达和实现的数据,严格遵循数据的字段类型和长度限制,主要通过关系型数据库进行存储和管理。非结构化数据是指数据结构不规则或不完整,没有预定义的数据模型,不方便用数据库的二维逻辑表来表现的数据。
获取数据所使用的技术主要有:使用浏览器探针采集用户浏览器数据;使用爬虫技术获取网页数据;使用sqoop,canal等工具采集数据库的binlog日志;使用组件flume采集web服务器的日志数据。
数据存储 几年来,尽管硬盘容量在不断提升,但是单一硬盘的读写速度远远跟不上cpu和内存的发展。为了加快对获取到的海量信息的读写效率,采用共享硬盘对数据进行并行读取,并由此引出了硬件故障问题。为了避免某一硬盘故障造成数据丢失,通常有三种做法:
- 复制保存数据的副本,一旦发生故障,立即更换成副本硬盘。
- 使用冗余磁盘阵列(raid)进行存储
- hadoop分布式文件系统(HDFS)
资源管理与调度 资源管理是为了提高集群资源利用率,解决资源共享问题。
YARN是一种hadoop资源管理器,作为通用的资源管理系统,为上层应用提供统一的资源管理和调度服务,将短作业和长服务混合部署到一个集群中,并为集群在资源在资源利用、资源的统一管理、调度和数据共享等方面带来巨大的好处。
数据处理 数据处理按照执行时间的跨度可以分为:离线处理和实时处理
离线处理(批处理):用于处理复杂的批量数据。
早期离线计算主要使用Mapreduce离线分布式计算框架。通过hive这个数据仓库系统提供丰富hive sql(类sql),经过对hive sql语句进行解析和转换,生成一系列mapreduce任务,再集群上执行这些任务从而完成对数据的处理。
后来出现spark内存计算框架以及flink实时计算框架,简化了代码,提升了执行效率,逐步取代了mapreduce。spark和flink同时也支持离线处理,spark core,spark sql,flink dataset等技术都支持离线计算。
实时计算(流处理):用于处理实时数据流,其特点是数据源源不断实时传输。
Spark是基于内存计算的大数据并行计算框架,除扩展了广泛使用的 MapReduce 计算模型,而且高效地支持更多计算模式,包括交互式查询和流处理。Spark 适用于各种各样原先需要多种不同的分布式平台的场景,包括批处理、迭代算法、交互式查询、流处理。
spark streaming是构建再spark上的实时计算框架,能够实施对流数据进行实时处理,并且具有很好的可拓展性,高吞吐量和高容错性。
flink是一个开源、分布式、高性能、高可用的大数据处理引擎,可部署在各种集群环境,对各中大小的数据规模进行快速计算。
Datastream是flink提供给用户使用,用于进行流计算和批处理的API,是对底层流式计算模型的api封装。
交互式分析 交互式分析是基于历史数据的交互式查询,常用于实时报表分析、实时大屏、在线话费查询等。随着数据量增大,大数据领域中的交互式查询采用分布式技术,主要基于sql on hadoop(一般指hadoop框架中支持接口的组件和技术),常见的有hive sql,spark sql
机器学习与数据挖掘 【大数据|大数据生态圈简介】机器学习(Machine Learning)是一门涉及统计学、系统辨识、逼近理论、神经网络、优化理论、计算机科学、脑科学等诸多领域的交叉学科,研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能,是人工智能技术的核心。
数据挖掘(Data Mining,DM),是从大量的、有噪声的、不完全的、模糊和随机的数据中,提取出隐含在其中的、人们事先不知道的、具有潜在利用价值的信息和知识的过程。
MLlib(Machine Learnig lib) 是Spark对常用的机器学习算法的实现库,同时包括相关的测试和数据生成器。
文献参考:
《实战大数据:Hadoop+Spark+Flink:从平台构建到交互式数据分析:离线/实时》 杨俊编著.——北京:机械工业出版社,2021.5
推荐阅读
- #|大数据平台进度,它来了
- big|大数据测试技术与实践之大数据技术生态总览
- AUTOSAR|AUTOSAR架构
- x86架构学习实模式篇|x86架构学习笔记实模式
- 萌新自学笔记|解析漏洞和文件包含漏洞
- 算法|终于来了!这份NLP算法工程师学习路线yyds!
- 大数据|腾讯云云原生数据湖DLC重磅推出免运维、零成本、高性能spark shuffle manager
- mongodb|MongoDB集群和安全
- 大数据|零零信安(0.zone攻击面查询和收敛平台——攻防演练神器)