本学习笔记为华为云考试 hccdp - Big Data 工作级认证的学习笔记。
1. 数据级别
GB -> TB -> PB -> EB -> ZB -> YB
2. 数据类型
类型 | 含义 |
---|---|
结构化数据 | 符合关系型数据库表结构的数据 |
半结构化数据 | HTML,XML |
非结构化数据 | 图片、视频、文本 |
HTML(超文本标记语言):一种创建网页的标记语言,展示网页用。
XML(可扩展标记语言):一种用于描述数据的标记语言,主要用来存储和传输数据,比如用来存储一本书的信息。
3. 大数据运用的技术
3.1 数据采集(Python、Flume、Kafka)
Flume 和 Kafka 是两种常用的流数据采集框架:
流数据是一种连续生成、实时、动态变化的数据集合
- Flume:一般用于日志采集。
- Kafka:一般用于日志缓存。
日志多指数据库操作的历史记录
3.2 数据存储(HDFS、HBase)
- HDFS:Hadoop distribute file system,分布式文件系统,将大文件切为多个数据块,并将这些数据块分布存储在多个计算节点上。
- HBase:一个分布式、面向列的 NoSQL 数据库,建立在 HDFS 之上,HBase 负责存储和管理数据。
Hadoop:是一个开源的分布式系统基础架构,旨在解决海量数据的存储和分析计算问题,它提供了一个可靠、可扩展和高效的平台,有许多核心组件比如 HDFS,MapReduce,HBase 等。
分布式:是一种计算和系统架构的方法,指的是将计算任务、数据或服务分散到多个计算机或节点上,这些计算机或节点通过网络进行通信和协作,共同完成某项任务或提供某种服务。
3.3 数据计算引擎(MapReduce、Spark、Storm、Flink)
MapReduce:是一种用于处理大规模数据集的编程模型和计算框架。
Spark:快速、通用的大数据处理引擎,支持批处理、流处理和迭代处理,迭代算法如机器学习和图计算等
Storm:(先不用深入)
Flink:(先不用深入)
从处理时间可以划分为 -> 离线计算和实时计算,从处理的数据量可以划分为 -> 流式计算和批处理(批量)计算。
MapReduce、Spark -> 离线计算、批量计算引擎
Storm、Flink -> 实时计算、流式与批量并存的计算引擎
3.4 数据分析(Python、R 和 Hive)
Python、R(两种常用的编程语言)
Hive:是一个数据仓库工具,提供了类似 SQL 的查询语言(HiveQL),用于在 Hadoop 集群上执行查询和分析大规模结构化数据。
3.5 数据挖掘
数据挖掘:从大量数据中发现模式、关联和趋势的过程。
机器学习:一种基于统计和数学模型的数据分析技术,用于从数据中提取有用的信息和模式。机器学习是数据挖掘的一种工具和方法之一,而数据挖掘则是机器学习的一个应用领域。