hadoop面试题及答案解析
1.(Datanode)程序负责HDFS数据存储。
2.HDFS中的block默认保存(3份)。
3.(TaskTracker)程序通常与NameNode在一个节点启动。
分析:hadoop集群是基于master/slave模式,namenode和jobtracker属于master,datanode和tasktracker属于slave,master只有一个,而slave有多个。。
4.hadoop的作者是(Doug cutting)
5.HDFS默认的block size是64MB.
6.磁盘IO通常是集群最主要的瓶颈。
分析:首先集群的目的是为了节省成本,用廉价的PC机取代小型机和大型机(这两者的特点:CPU处理能力强,内存够大),由于大数据面临海量数据,读写数据都要io,然后还有冗余数据,Hadoop一般备份3份数据,所以io就会打折。
7.secondaryNode目的是帮助NameNode合并编辑日志,减少nameNode启动时间。
8.配置机架感知:如果一个机架出问题,不会影响数据读写。写入数据的时候,会写到不同机架的dataNode中。mapReduce会根据机架获取离自己比较近的网络数据。
9.如果nameNode意外终止,SecondaryNameNode会帮助恢复而不是替代。
10.hadoop是java开发的,rhadoop是r开发的,mapreduce是一个框架,可以理解是一种思想,可以使用其他语言开发。
11.client客户端上传文件:
clent向NameNode发起文件写入的请求,NameNode根据文件大小和文件块的配置情况,返回给client它所管理的部分dataNode的信息。client将文件划分成多个block,根据dataNode的地址信息,按顺序写入到每一个dataNode块中。
12.Ganglia不仅可以进行监控,也可以进行告警。
分析:ganglia作为一款Linux环境中的监控软件,最擅长的是从节点中按照用户的需求以较低的代价采集数据,但在预警以及发生时间后通知用户并不擅长。更擅长做预警的是nagios。
通过将两者结合,吧ganglia采集的数据作为nagios的数据源,然后利用nagios发送预警通知,可以完美的实现一整套监控管理的系统。
13.Cloudera Enterpris在美国加州举行的Hadoop大会上公开,以若干私有管理/监控/运行工具加强Hadoop的功能。收费采取合约订购方式,价格随着使用的集群大小变动。
14.lucene是支持随机读写的,而HDFS只是支持随机读,但是HBase可以来补救。HBase提供随机读写,来解决Hadoop不能处理的问题,
15.namenode不需要从磁盘中读取metadata,所有数据都在内存中,硬盘上只是序列化的结果,只有每次namenode启动时才会读取。
hadoop面试题及答案解析的更多相关文章
- PHP面试题及答案解析(8)—PHP综合应用题
1.写出下列服务的用途和默认端口. ftp.ssh.http.telnet.https ftp:File Transfer Protocol,文件传输协议,是应用层的协议,它基于传输层,为用户服务,它 ...
- PHP面试题及答案解析(7)—Linux系统命令
1.请解释下列10个shell命令的用途.top.ps.mv.find.df.cat.chmod.chgrp.grep.wc top:该命令提供了实时对系统处理器状态的监控,它能够实时显示系统中各个进 ...
- PHP面试题及答案解析(5)—数据结构与算法
1.使对象可以像数组一样进行foreach循环,要求属性必须是私有.(Iterator模式的PHP5实现,写一类实现Iterator接口) <?php class Test implements ...
- PHP面试题及答案解析(6)—PHP网络编程
1.禁用COOKIE后SEESION还能用吗? 可以,COOKIE和SESSION都是用来实现会话机制的,由于http协议是无状态的,所以要想跟踪一个用户在同一个网站之间不同页面的状态,需要有这么一个 ...
- PHP面试题及答案解析(4)—PHP核心技术
1.写出一个能创建多级目录的PHP函数. <?php /** * 创建多级目录 * @param $path string 要创建的目录 * @param $mode int 创建目录的模式,在 ...
- PHP面试题及答案解析(3)—MySQL数据库
1.mysql_num_rows()和mysql_affected_rows()的区别. mysql_num_rows()和mysql_affected_rows(),这两个函数都作用于 mysql_ ...
- PHP面试题及答案解析(2)—PHP面向对象
1. 写出 php 的 public.protected.private 三种访问控制模式的区别. public:公有,任何地方都可以访问protected:继承,只能在本类或子类中访问,在其它地方不 ...
- PHP面试题及答案解析(1)—PHP语法基础
1. strlen( )与 mb_strlen( )的作用分别是什么? strlen和mb_strlen都是用于获取字符串长度.strlen只针对单字节编码字符,也就是说它计算的是字符串的总字节数.如 ...
- 2020年大厂Java面试前复习的正确姿势(800+面试题附答案解析)
前言 个人觉得面试也像是一场全新的征程,失败和胜利都是平常之事.所以,劝各位不要因为面试失败而灰心. 丧失斗志.也不要因为面试通过而沾沾自喜,等待你的将是更美好的未来,继续加油! 本篇分享的面试题内容 ...
随机推荐
- Geoserver的跨域问题
使用tomcat访问Geoserver服务的时候,只调服务没问题,但是查询要素属性的时候出现如下“XMLHttpRequest”.“not allowed by Access-Control-Allo ...
- Java开发系列-文件上传
概述 Java开发中文件上传的方式有很多,常见的有servlet3.0.common-fileUpload.框架.不管哪种方式,对于文件上传的本质是不变的. 文件上传的准备 文件上传需要客户端跟服务都 ...
- StringUtils工具
ppublic class StringUtils { private StringUtils() { } /** * 文本左边补零 * * @param maxLength 文本长度 * @para ...
- linux普通用户无法登录mysql
一.前言 本帖方法只适用于普通用户无法登录,但root用户可以登录的情况. 今天将war包放入linux后,运行报错,经过检查发现是数据库连接不上.奇怪的是,用户名和密码都是正确的,所以有了以下发现. ...
- barrel shifter, logarthmic shifter and funnel shifter
1,shifter小集合 (1) simple shift 左移或右移补0 (2) arthmetic shift 左移补0,右移补符号位 (3) barrel shifter 桶型,顾名思义,应该头 ...
- 廖雪峰Java11多线程编程-3高级concurrent包-6ExecutorService
Java语言内置多线程支持: 创建线程需要操作系统资源(线程资源,栈空间) 频繁创建和销毁线程需要消耗大量时间 如果可以复用一个线程 线程池: 线程池维护若干个线程,处于等待状态 如果有新任务,就分配 ...
- 高速网络下的http协议优化
http协议是基于TCP协议,具备TCP协议的所有功能.但是与一般TCP的长连接不同的是http协议往往连接时间比较短,一个请求一个响应了事.但是总所周知,TCP协议除了具备可靠的传输以外,还有拥塞控 ...
- 边缘节点服务ENS重磅升级 阿里云首次定义“边缘云计算”概念层层深入
随着5G.物联网时代的到来以及云计算应用的逐渐增加,传统集中式的云计算技术已经无法满足终端侧“大连接,低时延,大带宽”的需求.结合边缘计算的概念,云计算将必然发展到下一个技术阶段,也就是将云计算的能力 ...
- 洛谷P3376【模板】网络最大流 ISAP
这篇博客写得非常好呀. 传送门 于是我是DCOI这一届第一个网络流写ISAP的人了,之后不用再被YKK她们嘲笑我用Dinic了!就是这样! 感觉ISAP是会比Dinic快,只分一次层,然后不能增广了再 ...
- 33 N皇后问题
原题网址:https://www.lintcode.com/zh-cn/old/problem/n-queens/# n皇后问题是将n个皇后放置在n*n的棋盘上,皇后彼此之间不能相互攻击. 给定一个整 ...