一、大数据概述
- 大数据:主要解决海量数据的采集、存储和分析计算问题
- 存储单位:bit 、Byte、KB、MB、GB、TB、PB、EB、ZB、YB
- 特点:大量、高速、多样、低价值密度
- 应用:广告推荐、零售、物流仓储、保险、金融、房产、人工智能、5G、物联网、VR
二、Hadoop入门
1. 概念
<1>分布式系统基础架构。
<2>解决海量数据的存储和海量数据的分析计算问题。
<3>Hadoop通常指更广泛的概念——Hadoop生态圈。
2. 发展历史
<1>创始人:Doug Cutting。
<2>google 三篇论文
GFS-> HDFS
MapReduce->MR
BigTable->HBase
<3>Hadoop2006年3月诞生
3. 三大发行版本
<1>Apache :最原生的版本,2006
<2>Cloudera :内部集成了很多大数据产品,对应产品CDH,2008
<3>Hortonworks :文档较好,对应产品HDP,2011,被Cloudera收购,推出产品CDP
4. Hadoop的优势
<1>高可靠性: 维护多个数据副本
<2>高扩展性:在集群间分配任务数据,可方便的扩展数以千计的节点
<3>高效性:在MapReduce的思想下,Hadoop是并行工作的,以加快任务处理熟读
<4>高容错性: 自动将失败的任务重新分配
5. Hadoop组成
<1> 1.x
Common 辅助工具
HDFS 数据存储
MapReduce 计算+资源调度
<2> 2.x
Common 辅助工具
HDFS 数据存储
Yarn资源调度
MapReduce 计算
<3> 3.x
在组成上没有变化
<4>HDFS
- 全称:Hadoop Distributed File System
- NameNode: 存储文件的元数据,如文件名,文件目录结构,文件属性以及每个文件的块列表和块所在的DateNode等。
- DataNode:在本地文件系统存储文件块数据,以及块数据的校验和。
- 2NN:SecondaryNameNode每隔一段时间对NameNode元数据备份。
<5>Yarn
- 全称:Yet Another Resource Negotiator资源协调者,Hadoop的资环管理器cpu,内存。
- ResourceManager(RM):整个集群资源的管理者。
- NodeManager(NM):单个节点服务器的管理者。
- ApplicationMaster(AM): 单个任务运行管理者。
- Container:容器,相当一台独立的服务器,里边封装了任务运行需要的资源(cpu,内存,磁盘,网络)任务运行完可以自动释放资源。
- 说明
客户端可以有多个
集群上可以运行多个ApplicationMaster
每个NodeManager上可以有多个Container
<6>MapReduce
- Map 阶段并行处理输入数据。
- Reduce阶段对Map结果进行汇总。