拓展

b(bit)位 最小数据单位 二进制 (0,1) 0101 4b

B(Byte)字节 1B=8b               汉字(占1-2字节)

KB 千字节    1KB=1024B       一小段文字

MB 兆字节   1MB=1024KB    一首歌(3-5M)

GB 吉字节    1GB=1024MB   一个视频

TB 太字节    1TB=1024GB    数据库(25张高清图片)

PB 拍字节    1PB=1024TB    公司,数据中心(2亿张图片)

EB 艾字节    1EB=1024PB   全球级别(全球天气观测和气候的数据)

ZB 泽字节    1ZB=1024EB   全球数量的总和

YB 尧字节    1YB=1024ZB

1.1 认识大数据

1.1.1 大数据与大模型

大数据大模型之间有着非常紧密的关系。可以说,大数据是大模型发展的基石,而大模型是大数据价值挖掘的重要工具。

1.1.2 大数据的4V特征

多样化(格式多):

结构化数据:固定格式关系型数据库,excel

半结构化数据:具有一定的层次结构,介于结构化数据与非结构化数据之间json文件,xml文件,电子邮件

非结构化数据:无固定格式文本文件,图片,音乐

1.1.3 大数据技术发展

大数据技术要面对的基本问题,也是最核心的问题:就是海量数据如何可靠存储和高效计算

1.2 Google的三驾马车

2003 GFS:The Google File System

2004 MapReduce: Simplified Data Processing on Large Clusters大型集群上的简单数据处理

2006 Bigtable:A Distributed Storage System for Structured Data一个分布式的结构化数据存储系统

1.2.1 GFS分布式文件系统的思想

GFS架构:

(1)GFS Master节点管理所有的文件系统元数据,包括命名空间,访问控制权,文件和块的映射信息以及当前块的位置信息。

(2)GFS存储的文件都被分割成固定大小的块,每个块都会被复制到多个块服务器上(可靠性)。块的冗余度默认为3.

(3)GFS Master还管理着系统范围内的活动,比如块服务器之间的数据迁移等。

(4)GFS Master与每个块服务器通信(发送心跳包),发送指令,获取状态。

 副本的位置选择的策略要满足两个目标:最大化数据的可靠性和可用性。

1.2.2 MapReduce的思想 

 MapReuce采用“分而治之”的思想,把对大规模数据集的操作,分发给一个主节点管理下的各个子书点共同完成,然后整合各个子节点的中间结果,得到最终的计算结果。MapReduce就是“分散任务,汇总结果”。

Map的输出是Reduce的输入

1.2.3 BigTable的思想

1.3 Hadoop的概述

1.3.1 Hadoop是什么?

(1)Hadoop是一个由Apache基金会所开发的分布式计算基础框架

(2)主要解决,海量数据的存储和海量数据的分析计算问题。

(3)广义上来讲,Hadoop通常是指一个更广泛的概念——Hadoop生态圈

1.3.2 Hadoop根据Google三篇论文实现

HDFS→GFS 

MapReduce→MapReduce 

HBase→BigTable

(1)HDFS :Hadoop Distributed File System,是Hadoop项目的核心子项目,是分布式计算中数据存储管理的基础。它是对GFS论文的实现。

(2)MapReduce 和Google MapReduce是一样

(3)HBase

1.3.3 Hadoop的发展简史

Hadoop1.0,Hadoop2.0的区别在于多了YARN

1.3.4 Hadoop优势

高可靠性:Hadoop底层维护多个数据副本,所以即使Hadoop某个计算元素或存储出现故障,也不会导致数据的丢失。

高扩展性:在集群分配任务数据,可方便的扩展数以千计的节点。

高效性:Hadoop是并行工作的,以加快任务处理速度

高容错性:能够自动将失败的任务重新分配

1.3.5 Hadoop的特点

特点:①扩容能力强②成本低③高效率④可靠性

适合场景: 大数据分析;离线分析

不适合场景: 少量数据;复杂数据;在线分析

1.4 Hadoop生态圈

组件 功能
HDFS 分布式文件系统
YARN 资源管理和调度器
MapReduce 分布式并行编程模型
HBase Hadoop上的非关系型的分布式数据库
Hive Hadoop上的数据仓库
Pig

一个基于Hadoop的大规模数据分析平台,

提供类似SQL的查询语言Pig Latin

Flume

一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统

Sqoop 用于在Hadoop与传统数据库之间进行数据传递
Zookeeper 提供分布式协调一致性服务
Spark 类似于Hadoop MapReduce的通用并行框架

1.4.1 HDFS的架构概述

NameNode:存储文件的元数据,如文件名、文件目录结构、文件属性(生成时间、副本数、文件权限),以及每个文件的块列表和块所在的DataNode等。 

DataNode:在本地文件系统存储文件块数据, 以及块数据的校验和。

Secondary NameNode:每隔一段时间对NameNode元数据备份。

1.4.2 Yarn的架构概述

 ResourceManager:整个集群资源(内存、cpu等) 的老大;

NodeManager:单个节点服务器资源老大;

ApplicationMaster:单个任务运行的老大。(1)负责数据的切分(2)为应用程序申请资源并分配给内部任务。(3)任务的监控与容错。 

Container:容器,相当于一台独立的服务器,里面封装了任务运行所需要的资源,如内存、cpu, 磁盘、网络等。

1.4.3 MapReduce的架构概述

 MapReduce将计算过程分为两个阶段:Map和Reduce

Map阶段并行处理输入数据

Reduce阶段对Map结果进行汇总

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐