2021年Hadoop面试题目及答案

  • 格式:docx
  • 大小:24.41 KB
  • 文档页数:20

Hadoop面试45个题目及答案1.Hadoop集群可以运营3个模式?单机(本地)模式伪分布式模式全分布式模式2. 单机(本地)模式中注意点?在单机模式(standalone)中不会存在守护进程,所有东西都运营在一种JVM上。

这里同样没有DFS,使用是本地文献系统。

单机模式合用于开发过程中运营MapReduce程序,这也是至少使用一种模式。

3. 伪分布模式中注意点?伪分布式(Pseudo)合用于开发和测试环境,在这个模式中,所有守护进程都在同一台机器上运营。

4. VM与否可以称为Pseudo?不是,两个事物,同步Pseudo只针对Hadoop。

5. 全分布模式又有什么注意点?全分布模式普通被用于生产环境,这里咱们使用N台主机构成一种Hadoop集群,Hadoop 守护进程运营在每台主机之上。

这里会存在Namenode运营主机,Datanode运营主机,以及task tracker运营主机。

在分布式环境下,主节点和从节点会分开。

6. Hadoop与否遵循UNIX模式?是,在UNIX用例下,Hadoop还拥有“conf”目录。

7. Hadoop安装在什么目录下?Cloudera和Apache使用相似目录构造,Hadoop被安装在cd/usr/lib/hadoop-0.20/。

8. Namenode、Job tracker和task tracker端标语是?Namenode,70;Job tracker,30;T ask tracker,60。

9. Hadoop核心配备是什么?Hadoop核心配备通过两个xml文献来完毕:1,hadoop-default.xml;2,hadoop-site.xml。

这些文献都使用xml格式,因而每个xml中均有某些属性,涉及名称和值,但是当下这些文献都已不复存在。

10. 那当下又该如何配备?Hadoop当前拥有3个配备文献:1,core-site.xml;2,hdfs-site.xml;3,mapred-site.xml。

这些文献都保存在conf/子目录下。

11. RAM溢出因子是?溢出因子(Spill factor)是暂时文献中储存文献大小,也就是Hadoop-temp目录。

12. fs.mapr.working.dir只是单一目录?fs.mapr.working.dir只是一种目录。

13. hdfs-site.xml3个重要属性?.dir决定是元数据存储途径以及DFS存储方式(磁盘或是远端)dfs.data.dir决定是数据存储途径fs.checkpoint.dir用于第二Namenode14. 如何退出输入模式?退出输入方式有:1,按ESC;2,键入:q(如果你没有输入任何当下)或者键入:wq(如果你已经输入当下),并且按下Enter。

15. 当你输入hadoopfsck /导致“connection refused java exception’”时,系统究竟发生了什么?这意味着Namenode没有运营在你VM之上。

16. 咱们使用Ubuntu及Cloudera,那么咱们该去哪里下载Hadoop,或者是默认就与Ubuntu一起安装?这个属于Hadoop默认配备,你必要从Cloudera或者Edurekadropbox下载,然后在你系统上运营。

固然,你也可以自己配备,但是你需要一种Linux box,Ubuntu或者是Red Hat。

在Cloudera网站或者是EdurekaDropbox中有安装环节。

17. “jps”命令用处?这个命令可以检查Namenode、Datanode、Task Tracker、Job Tracker与否正常工作。

18. 如何重启Namenode?点击stop-all.sh,再点击start-all.sh。

键入sudo hdfs(Enter),su-hdfs (Enter),/etc/init.d/ha(Enter),及/etc/init.d/hadoop-0.20-namenode start(Enter)。

19. Fsck全名?全名是:File System Check。

20. 如何检查Namenode与否正常运营?如果要检查Namenode与否正常工作,使用命令/etc/init.d/hadoop-0.20-namenode status或者就是简朴jps。

21. mapred.job.tracker命令作用?可以让你懂得哪个节点是Job Tracker。

22. /etc /init.d命令作用是?/etc /init.d阐明了守护进程(服务)位置或状态,其实是LINUX特性,和Hadoop关系不大。

23. 如何在浏览器中查找Namenode?如果你的确需要在浏览器中查找Namenode,你不再需要localhost:8021,Namenode 端标语是50070。

24. 如何从SU转到Cloudera?从SU转到Cloudera只需要键入exit。

25. 启动和关闭命令会用到哪些文献?Slaves及Masters。

26. Slaves由什么构成?Slaves由主机列表构成,每台1行,用于阐明数据节点。

27. Masters由什么构成?Masters同样是主机列表构成,每台一行,用于阐明第二Namenode服务器。

28. hadoop-env.sh是用于做什么?hadoop-env.sh提供了Hadoop中. JAVA_HOME运营环境。

29. Master文献与否提供了各种入口?是你可以拥有各种Master文献接口。

30. Hadoop-env.sh文献当下位置?hadoop-env.sh当前位于conf。

31. 在Hadoop_PID_DIR中,PID代表了什么?PID代表了“Process ID”。

32. /var/hadoop/pids用于做什么?/var/hadoop/pids用来存储PID。

33. hadoop-metrics.properties文献作用是?hadoop-metrics.properties被用做“Reporting”,控制Hadoop报告,初始状态是“not to report”。

34. Hadoop需求什么样网络?Hadoop核心使用Shell(SSH)来驱动从节点上服务器进程,并在主节点和从节点之间使用password-less SSH连接。

35. 全分布式环境下为什么需求password-less SSH?这重要由于集群中通信过于频繁,Job Tracker需要尽量快给T ask Tracker发布任务。

36. 这会导致安全问题吗?完全不用紧张。

Hadoop集群是完全隔离,普通状况下无法从互联网进行操作。

与众不同配备,因而咱们完全不需要在乎这种级别安全漏洞,例如说通过互联网侵入等等。

Hadoop 为机器之间连接提供了一种相对安全方式。

37. SSH工作端标语是?SSH工作端标语是NO.22,固然可以通过它来配备,22是默认端标语。

38. SSH中注意点还涉及?SSH只是个安全shell通信,可以把它当做NO.22上一种合同,只需要配备一种密码就可以安全访问。

39. 为什么SSH本地主机需要密码?在SSH中使用密码重要是增长安全性,在某些状况下也主线不会设立密码通信。

40. 如果在SSH中添加key,与否还需要设立密码?是,虽然在SSH中添加了key,还是需要设立密码。

41. 如果Namenode中没有数据会怎么样?没有数据Namenode就不能称之为Namenode,普通状况下,Namenode必定会有数据。

42. 当Job Tracker宕掉时,Namenode会发生什么?当Job Tracker失败时,集群依然可以正常工作,只要Namenode没问题。

43. 是客户端还是Namenode决定输入分片?这并不是客户端决定,在配备文献中以及决定分片细则。

44. 与否可以自行搭建Hadoop集群?是,只要对Hadoop环境足够熟悉,你完全可以这样做。

45. 与否可以在Windows上运营Hadoop?你最佳不要这样做,Red Hat Linux或者是Ubuntu才是Hadoop最佳操作系统。

在Hadoop安装中,Windows普通不会被使用,由于会浮现各种各样问题。

因而,Windows 绝对不是Hadoop推荐系统。

第一某些、十道海量数据解决面试题1、海量日记数据,提取出某日访问百度次数最多那个IP。

一方面是这一天,并且是访问百度日记中IP取出来,逐个写入到一种大文献中。

注意到IP 是32位,最多有个2^32个IP。

同样可以采用映射办法,例如模1000,把整个大文献映射为1000个小文献,再找出每个小文中浮现频率最大IP(可以采用hash_map进行频率记录,然后再找出频率最大几种)及相应频率。

然后再在这1000个最大IP中,找出那个频率最大IP,即为所求。

或者如下阐述(雪域之鹰):算法思想:分而治之+Hash1.IP地址最多有2^32=4G种取值状况,因此不能完全加载到内存中解决;2.可以考虑采用“分而治之”思想,按照IP地址Hash(IP)%1024值,把海量IP日记分别存储到1024个小文献中。

这样,每个小文献最多包括4MB个IP地址;3.对于每一种小文献,可以构建一种IP为key,浮现次数为valueHash map,同步记录当前浮现次数最多那个IP地址;4.可以得到1024个小文献中浮现次数最多IP,再根据常规排序算法得到总体上浮现次数最多IP;2、搜索引擎会通过日记文献把顾客每次检索使用所有检索串都记录下来,每个查询串长度为1-255字节。

假设当前有一千万个记录(这些查询串重复度比较高,虽然总数是1千万,但如果除去重复后,不超过3百万个。

一种查询串重复度越高,阐明查询它顾客越多,也就是越热门。

),请你记录最热门10个查询串,规定使用内存不能超过1G。

典型Top K算法,还是在这篇文章里头有所阐述,详情请参见:十一、从头到尾彻底解析Hash表算法。

文中,给出最后算法是:第一步、先对这批海量数据预解决,在O(N)时间内用Hash表完毕记录(之前写成了排序,特此订正。

July、.04.27);第二步、借助堆这个数据构造,找出Top K,时间复杂度为N‘logK。

即,借助堆构造,咱们可以在log量级时间内查找和调节/移动。

因而,维护一种K(该题目中是10)大小小根堆,然后遍历300万Query,分别和根元素进行对比因此,咱们最后时间复杂度是:O(N)+ N’*O(logK),(N为1000万,N’为300万)。

ok,更多,详情,请参照原文。

或者:采用trie树,核心字域存该查询串浮现次数,没有浮现为0。

最后用10个元素最小推来对浮现频率进行排序。