zoukankan      html  css  js  c++  java
  • 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启动时才会读取。

  • 相关阅读:
    美女检测器
    汉字动画程序的原理
    值类型不是值类型(ValueType is NOT a Value Type):闲谈.Net类型
    PowerShell 简介
    Visual Studio 2012 RC 发布
    使用 MvcMiniProfiler 监控EF 4.1 with MySQL Provider
    NuGet安装及简单使用
    发布自己的NuGet程序
    Qizmt 单机及分布式部署注意事项
    JDynamic :支持Json反序列化为Dynamic对象
  • 原文地址:https://www.cnblogs.com/sanmenyi/p/7580532.html
Copyright © 2011-2022 走看看