Hadoop面试试题
在日复一日的学习、工作生活中,我们会经常接触并使用试题,试题可以帮助学校或各主办方考察参试者某一方面的知识才能。你知道什么样的试题才能切实地帮助到我们吗?以下是小编整理的Hadoop面试试题,仅供参考,欢迎大家阅读。
一、什么是Hadoop?
Hadoop是一个开源软件框架,用于存储大量数据,并发处理/查询在具有多个商用硬件(即低成本硬件)节点的集群上的那些数据。总之,Hadoop包括以下内容:
HDFS(Hadoop Distributed File System,Hadoop分布式文件系统):HDFS允许你以一种分布式和冗余的方式存储大量数据。例如,1 GB(即1024 MB)文本文件可以拆分为16 * 128MB文件,并存储在Hadoop集群中的8个不同节点上。每个分裂可以复制3次,以实现容错,以便如果1个节点故障的话,也有备份。HDFS适用于顺序的“一次写入、多次读取”的类型访问。
MapReduce:一个计算框架。它以分布式和并行的方式处理大量的数据。当你对所有年龄> 18的用户在上述1 GB文件上执行查询时,将会有“8个映射”函数并行运行,以在其128 MB拆分文件中提取年龄> 18的用户,然后“reduce”函数将运行以将所有单独的输出组合成单个最终结果。
YARN(Yet Another Resource ……此处隐藏184个字……安装配置一个apache开源版hadoop,只描述即可,无需列出完整步骤,能列出步骤更好。
1、安装JDK并配置环境变量(/etc/profile);
2、关闭防火墙;
3、配置hosts文件,方便hadoop通过主机名访问(/etc/hosts);
4、设置ssh免密码登录;
5、解压缩hadoop安装包,并配置环境变量;
6、修改配置文件($HADOOP_HOME/conf);hadoop-env.sh core-site.xml hdfs-site.xml mapred-site.xml;
7、格式化hdfs文件系统(hadoop namenode-format);
8、启动hadoop($HADOOP_HOME/bin/start-all.sh);
9、使用jps查看进程。
五、请列出正常工作的hadoop集群中hadoop都分别需要启动那些进程,他们的作用分别是什么,尽可能写的全面些。
1、NameNode: HDFS的守护进程,负责记录文件是如何分割成数据块,以及这些数据块分别被存储到那些数据节点上,它的主要功能是对内存及IO进行集中管理。
2、Secondary NameNode:辅助后台程序,与NameNode进行通信,以便定期保存HDFS元数据的快照。
3、DataNode:负责把HDFS数据块读写到本地的文件系统。
4、JobTracker:负责分配task,并监控所有运行的task。
5、TaskTracker:负责执行具体的task,并与JobTracker进行交互。