大数据基础
概念
大数据(Big Data)指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合,是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。
基础知识
存储单位
bit、Byte、KB、GB、TB、PB、EB、ZB、YB、BB、NB、DB
Hadoop入门
概念
用于解决海量数据的存储和分析计算问题的分布式架构
优势
- 高可靠性:Hadoop底层维护多个数据副本,所以即使Hadoop某个计算元素或存储出现故障,也不会导致数据丢失。
- 高扩展性:在集群件分配任务数据,可方便的扩展数以千计的节点。
- 高效性:在MapReduce的思想下,Hadoop是并行工作的,以加快任务处理速度。
- 高容错性:能够自动将失败的任务重新分配。
版本差异
在Hadoop2.x时代,对耦合性进行了优化,增加了Yarn,Yarn只负责资源调度,MapReduce只负责运算。
HDFS
Namenode:存储文件的元数据,如文件名、文件目录结构,文件属性
Datanode:存储文件块数据,以及块数据的校验和
Secondary Namgenode:用来监控HDFS状态的辅助后台程序,每隔一段时间获取HDFS元数据快照
Yarn
RecourceManager
- 处理客户端请求
- 监控NodeManager
- 启动或监控ApplicationMaster
- 资源的分配与调度
NodeManager
- 管理单个节点资源
- 处理来自RecourceManager的命令
- 处理来自ApplicationMaster的命令
ApplicationMaster
- 负责数据的切分
- 为应用程序申请资源并分配给内部的任务
- 任务的监控和容错
Container
封装单个节点上的多维度资源,如内存、CPU、磁盘、网络等
MapReduce
计算分为两个阶段,Map和Reduce
Map:将输入数据进行切分,并行处理
Reduce:对Map结果进行汇总