hadoop基础

1 什么是hadoop?

hadoop是一个开源框架,用于存储大量数据,并发处理/查询在具有多个商用硬件(即低成本硬件)节点的集群上的那些数据

主要包含以下几块?

HDFS 允许你一种分布式和冗余的方式存储大量数据

MapReduce 一个计算框架,它以分布式和并行的方式处理大量数据

Yarn 用于作业调度和集群资源管理的框架

hadoop生态系统,拥有多种框架和工具,如sqoop flume hive spark impala等,以便将数据摄入HDFS,在hdfs中转移数据(即变换,丰富,聚合等),并查询来自hdfs的数据用于商业智能和分析,某些工具(如pig和hive)是MapReduce上的抽象层,而spark和impala等其他工具则是来自MapReduce的改进架构/设计,用于显著提高延迟以支持近似实时和实时处理

2 请列出正常的hadoop集群中hadoop都分别需要启动那些进程?他们的作用分别是什么?

namenode:负责管理hdfs文件块的元数据,响应客户端请求,管理datanode上文件block的均衡,维持副本数量

Secondname:主要负责做checkpoint操作,也叫做冷备,对一定范围内数据做快照备份

datanode:存储数据块,负责客户端对数据块的io请求

jobtracker:管理任务,并将任务分配给tasktracker

tasktracker:执行jobtracker分配的任务

3 请写出以下的shell命令

(1) 杀死一个job

(2) 删除dfs上的/tmp.aaa目录

答: (1) hadoop job -list 得到job的id,然后执行hadoop job -kill jobid 就可以杀死一个指定jobid的job工作了

     (2) hadoop fs -rmr /tmp/aaa

4 请列出你所知道的hadoop调度器,并简要说明其工作方法

fifo schedular :默认 先进先出原则

capacity schedular:计算能力调度器,选择占用最小,优先级高的先执行

fair schedular:公平调度,所有job具有相同资源

5 hadoop集群的最主要瓶颈:磁盘io

6 hadoop中需要哪些配置文件,其作用是什么?

1) core-site.xml

fs.defaultFs:hdfs://cluster 这里的值指的是默认的hdfs路径

hadoop.tmp.dir:/export/data/hadoop_tmp,这里的路径默认是namenode,datanode

2)hadoop-env.sh:

设置jdk的安装路径 如export java_home=/user/local/jdk

3)hdfs_site.xml

dfs.replication:决定系统里面的文件块的数据备份个数,默认为3

dfs.data.dir:datanode节点存储在文件系统的目录

dfs.name.dir是namenode节点存储hadoop文件系统信息的本地系统路径

4)mapred-site.xml

mapreduce.framework.name:yarn  指定mr运行在yarn 上

原文地址:https://www.cnblogs.com/fengyouheng/p/15416651.html