Hadoop海量级分布式存储简介

一、Hadoop简介;

1、 大数据略知一二:

1)大数据(big data),指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合,是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产,需要在合理的时间内达到提取、管理、处理、并且整理成为帮助企业运营决策更积极目的的信息;
2)在维克托·迈尔-舍恩伯格及肯尼斯·库克耶编写的《大数据时代》 中大数据指不用随机分析法(抽样调查)这样捷径,而采用所有数据进行分析处理;
3)大数据的5V特点(IBM提出):Volume(大量)、Velocity(高速)、Variety(多样)、Value(低价值密度)、Veracity(真实性)。
总结:大数据(big data)是企业信息资产,处理方法不用随机分析法而是所有数据分析法,特点是大量、高速、多样、低价值密度、真实。
4)案例:
https://www.cnblogs.com/ShaYeBlog/p/5872113.html
https://blog.csdn.net/weixin_41852491/article/details/80525736
https://www.baidu.com/link?url=46yBGguZCTy3Qlz3iTr2YI4biAn66UG4yHiVuYGejxYUN7qxTAl4UG6Xmw8sPHMXTe5fzjvOqE_uDlPGI5ErpmrjfywQhYnPKEI4A-sWoNi&wd=&eqid=d391f07d000176ef000000065bfa6aa3
https://blog.csdn.net/bingdata123/article/details/79564186

2、图解大数据:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
3.Hadoop项目起源:
Hadoop由 Apache Software Foundation (Apache软件基金会,检查ASF)于 2005 年秋天作为Lucene的子项目Nutch的一部分正式引入。它受到最先由 Google Lab (谷歌实验室)开发的 Map/Reduce 和 Google File System(GFS) 的启发。2006 年 3 月份,Map/Reduce 和 Nutch Distributed File System (NDFS) 分别被纳入称为 Hadoop 的项目中。Hadoop是一个能够对大量数据进行分布式处理的软件框架。

在这里插入图片描述 Hadoop 是最受欢迎的在 Internet 上对搜索关键字进行内容分类的工具,但它也可以解决许多要求极大伸缩性的问题。例如,如果您要 grep 一个 10TB 的巨型文件,会出现什么情况?在传统的系统上,这将需要很长的时间。但是 Hadoop 在设计时就考虑到这些问题,采用并行执行机制,因此能大大提高效率。
Hadoop生态圈:
在这里插入图片描述
生态圈的命名:Zookeeper(动物园管理者),之所以这么命名是因为hadoop生态圈中大多以动物命名如hive(蜂箱),hadoop(由开发者小孩的一个小黄象玩具命名),pig(猪)。
https://www.cnblogs.com/gridmix/p/5102694.html

4.hadoop优点:
1)高可靠:在多台廉价商用机器群集上,善于存放超大文件;
2)高扩展性:Hadoop是在可用的计算机集簇间分配数据并完成计算任务的,这些集簇可以方便地扩展到数以千计的节点中。
3)高效性:处理速度较快。
4)高容错性:Hadoop能够自动保存数据的多个副本,并且能够自动将失败的任务重新分配。
5)低成本:hadoop是开源的,项目的软件成本因此会大大降低。
6)Hadoop带有用Java语言编写的框架,因此运行在 Linux 生产平台上是非常理想的。Hadoop 上的应用程序也可以使用其他语言编写,比如 C++。
补充:云计算大数据必会单位(换算为1024=2^10;1B=8b,1汉字=2B)
bit比特|位–byte字节–KB–MB–GB–TB–PB–EB–ZB–YB–BB–NB–DB

5.hadoop缺点:
1)低时间延迟的数据访问:要求在例如几十毫秒内完成数据访问的应用,不适合在HDFS上运行,HDFS虽然有强大的高数据吞吐量,但是以提高时间延迟为代价,可以使用HBase满足低延迟的访问需求;
2)无法高效存储大量小文件:大量小文件会造成整个文件系统的目录树和索引目录相对较大,而这些的元数据都会存放在namenode节点;

二、Hadoop之HDFS存储引擎;

1.HDFS引擎结构:
1)Hadoop Distributed File System(HDFS)引擎:包括namenode(名称空间节点)和datanode(数据节点);

2.基础概念:
1)文件块:Block,datanode中存放数据最小逻辑单元,默认块大小为128M,便于管理,不受磁盘限制,数据可在datanode的总block中进行冗余备份,存储的副本数量要少于datanode节点的数量,当一个或多个块出现故障,用户可以直接去其他地方读取数据副本;
2)NameNode:管理文件系统的命名空间,属于管理者角色,维护文件系统树内所有文件和目录,记录每个文件在各个DataNode上的位置和副本信息,并协调客户端对文件的访问,namenode节点会将所有的元数据写入到内存中,所以namenode节点的内存容量需要得到保障;
3)DataNode:负责处理文件系统客户端的文件读写请求,存储并检索数据块,并定期向NameNode发送所存储的块的列表,属于工作者角色。负责所在物理节点的存储管理,按照一次写入,多次读取的原则,存储文件按照Block块进行存储;
4)Secondary NameNode:相当于NameNode的快照,也称之为二级NameNode,能够周期性的备份NameNode,因为namenode节点的数据完全存放在内存中,所以Secondary namenode节点定期将namenode存放在内存上的数据进行快照到磁盘上;防止NameNode进程出现故障,起到备份作用;

三、Hadoop之MapReduce分布式计算引擎;

1.分布式计算引擎:
云计算:分布式计算
分布式计算原则:移动计算,不移动数据
注解:在分布式存储的基础上,实现了数据存储,但是无法实现数据存储的下一步操作,将已经存储的数据进行统计计算,查找出想要的数据结果,后期交于运营部门分析数据;
所谓运算,如若是单节点计算,无法做到上述数据量的统计计算;
那么分布式计算,是通过主节点将计算任务分布到多台节点,而多台节点通过map函数在进行计算本地的数据,进而将计算结果返回到主节点,主节点再利reduce函数进行归纳,实现分布式计算框架;

2.MapReduce 引擎:是用于并行处理计算大数据集的软件框架,不依靠任何存储或者组件,可单独运行,也可与其他文件系统相互结合,是HDFS(对于本文)的上一层,与hdfs结合工作,将用户的计算任务分发到上千台商用机器组成的集群上。最简单的 MapReduce应用程序至少包含 2个部分:一个 Map (映射)函数、一个 Reduce (归纳)函数,Map负责将任务分解成多个子任务,reduce负责把分解后的多任务的处理结果进行汇总;

JobTrackers(调度管理进程) :是一个master进程,用于作业的调度和管理工作,一个Hadoop集群中只有一台JobTracker;
TaskTrackers(任务处理进程):运行在多个节点上的Slave服务,用于执行任务。TaskTracker需要运行在HDFS的DataNode节点上;
在这里插入图片描述
MapReduce 引擎的缺点:JobTracker单点瓶颈(负责集群心跳信息、作业管理)、JobTracker分配作业延迟高、缺乏灵活性;

3.YARN架构:是MapReduce 引擎的V2版本,解决MapReduce 引擎面临的性能瓶颈问题,将集群资源管理和作业调度进行分离;
ResourceManager(资源管理)进程:管理集群资源的资源管理器,最好将其与namenode节点分离部署;
MapReduce:管理作业任务,将计算任务进行分发调度到各节点;
NodeManager(节点管理):各计算节点上的作业调度管理;
4.Hadoop核心概念注意事项:
1)HDFS把节点分成两类:NameNode和DataNode。NameNode是唯一的,程序与之通信,然后从DataNode上存取文件。这些操作是透明的,与普通的文件系统API没有区别。
2)MapReduce则是JobTracker节点为主,分配工作以及负责和用户程序通信。
3)HDFS和MapReduce实现是完全分离的,并不是没有HDFS就不能MapReduce运算。
4)Hadoop也跟其他云计算项目有共同点和目标:实现海量数据的计算。而进行海量计算需要一个稳定的,安全的数据容器,才有了Hadoop分布式文件系统(HDFS,Hadoop Distributed File System)。
5)60款大数据软件:http://blog.csdn.net/SunWuKong_Hadoop/article/details/53580425
6)Hadoop生态:http://blog.csdn.net/u010270403/article/details/51493191

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值