一、Hadoop介绍
Hadoop是Apache旗下的一个用java语言实现的开源软件框架,是一个开发和运行处理大规模数据的软件平台。允许使用简单的编程模型在大量计算机集群上对大型数据集进行分布式处理
Hadoop核心组件:
- HDFS(分布式文件系统):解决海量数据存储
- YARN(作业调度和集群资源管理的框架):解决资源任务调度
- MAPREDUCE(分布式运算编程框架):解决海量数据计算
二、Hadoop特性优点
- 扩容能力:Hadoop实在可用的计算机集群间分配数据并完成计算任务的,这些集群可用方便的扩展到数以千计的节点中
- 成本低:Hadoop通过普通廉价的机器组成服务器集群来分发以及处理数据,以至于成本很低
- 高效率:通过并发数据,Hadoop可以在节点之间动态并行的移动数据,使得速度非常快
- 可靠性: 能自动的维护数据的多份复制,并且在任务失败后能自动的重新部署计算任务。所以Hadoop的按位存储和处理数据的能力值得人们信赖
三、Hadoop集群简介
Hadoop集群具体来说包含两个集群:HDFS集群和YARN集群,两者逻辑上分离,但物理上常在一起
- HDFS集群负责海量数据的存储,集群中的角色主要有:
- NameNode
- DataNode
- SecondaryNameNode
- YARN集群负责海量数据运算时的资源调度,集群中的角色主要有:
- ResourceManager
- NodeManager
四、Hadoop配置文件
- hadoop-env.sh:Hadoop运行时需要的环境变量
- core-site.xml:hadoop的核心配置文件
- hdfs-site.xml:HDFS的核心配置文件
- mapred-site.xml:MapReduce的核心配置文件
- yarn-site.xml:YARN的核心配置文件
- workers:记录集群主机名
五、Web-UI端口
NameNode:http://nn_host:port/ 默认:9870
ResourceManager:http://rm_host:port/ 默认:8088
JobHistory:http://jh_host:port/jobhistory 默认:19888
六、MapReduce jobHistory
JobHistory用来记录已经finished的mapreduce运行日志,日志信息存放于HDFS目录中,默认情况下没有开启此功能,需要再mapred-site.xml中配置并手动启动
六、HDFS的垃圾桶机制
垃圾桶机制解析
每一个文件系统都会有垃圾桶机制,便于将删除的数据回收到垃圾桶里面去,避免某些误操作删除一些重要文件。回收到垃圾桶里面的资料数据,都可以进行恢复
垃圾桶机制配置
HDFS的垃圾回收的默认配置属性为0,也就是说,如果不小心删除了某个文件,那么这个操作是不可恢复的
修改core-site.xml
可以按照生产上的需求设置回收站的保存时间,这个时间以分钟为单位,例如1440=24h=1天
垃圾桶机制验证
-
如果启用垃圾箱配置,dfs命令删除的文件不会立即从HDFS中删除。相反,HDFS将其移动到垃圾目录(每个用户在
/user/<username>/.Trash
下都有自己的垃圾目录)。只要文件保留在垃圾箱中,文件可以快速恢复 -
使用
skipTrash
选项删除文件,该选项不会将文件发送到垃圾箱。它将从HDFS中完全删除