当前位置: 首页 > article >正文

HDFS单元测试

1. 下面哪个程序负责 HDFS 数据存储?DataNode

2. HDFS 中的 block 默认保存几份?(3)

3.  HDFS 默认 BlockSize 是(64MB)

2.7.3版本开始,block size由64 MB变成了128 MB的。

4. Client 端上传文件的时候下列哪项正确?(BC)

A.数据经过NameNode传递DataNode
B.Client端将文件切分为Block,依次上传
C.Client只上传数据到一台DataNode,然后由NameNode负责Block复制工作

5. 下列哪个程序通常与 NameNode 在一个节点启动?(JobTracker)

A.SecondaryNameNode
B.DataNode
C.TaskTracker
D.JobTracker

hadoop的集群是基于master/slave模式,namenode和jobtracker属于master,datanode和tasktracker属于slave,master只有一个,而slave有多个

SecondaryNameNode内存需求和NameNode在一个数量级上,所以通常secondary NameNode(运行在单独的物理机器上)和NameNode运行在不同的机器上。
JobTracker和TaskTracker
JobTracker  对应于 NameNode
TaskTracker 对应于 DataNode
DataNode 和NameNode 是针对数据存放来而言的
JobTracker和TaskTracker是对于MapReduce执行而言的

mapreduce中几个主要概念,mapreduce整体上可以分为这么几条执行线索:
jobclient,JobTracker与TaskTracker。
1、JobClient会在用户端通过JobClient类将应用已经配置参数打包成jar文件存储到hdfs,
并把路径提交到Jobtracker,然后由JobTracker创建每一个Task(即MapTask和ReduceTask)
并将它们分发到各个TaskTracker服务中去执行
2、JobTracker是一个master服务,软件启动之后JobTracker接收Job,负责调度Job的每一个子任务task运行于TaskTracker上,
并监控它们,如果发现有失败的task就重新运行它。一般情况应该把JobTracker部署在单独的机器上。
3、TaskTracker是运行在多个节点上的slaver服务。TaskTracker主动与JobTracker通信,接收作业,并负责直接执行每一个任务。
TaskTracker都需要运行在HDFS的DataNode上

6. 配置机架感知的下面哪项正确

A.如果一个机架出问题,不会影响数据读写
B.写入数据的时候会写到不同机架的 DataNode 中
C.MapReduce 会根据机架获取离自己比较近的网络数据

7. 下列哪项不可作为集群的管理(Cloudera Manager)

A.Puppet
B.Pdsh
C.Cloudera Manager
D.Zookeeper

8.hadoop一键关闭包括hdfs和yarn集群的脚本命令(stop-all.sh)

关于 SecondaryNameNode 哪项是正确的?(帮助 NameNode)

a)它是 NameNode 的热备
b)它对内存没有要求
c)它的目的是帮助 NameNode 合并编辑日志,减少 NameNode 启动时间
d)SecondaryNameNode 应与 NameNode 部署到一个节点。

下列哪项通常是集群的最主要瓶颈(磁盘IO)

a)CPU
b)网络
c)磁盘IO 
d)内存

首先集群的目的是为了节省成本,用廉价的pc机,取代小型机及大型机。小型机和大型机有什么特点?
1.cpu处理能力强
2.内存够大
所以集群的瓶颈不可能是a和d
3.网络是一种稀缺资源,但是并不是瓶颈。
4.由于大数据面临海量数据,读写数据都需要io,然后还要冗余数据,hadoop一般备3份数据,所以IO就会打折扣。

Block Size 是不可以修改的(x)

它是可以被修改的。Hadoop的基础配置文件是hadoop-default.xml,默认建立一个Job的时候会建立Job的Config,Config首先读入hadoop-default.xml的配置,然后再读入hadoop-site.xml的配置(这个文件初始的时候配置为空),hadoop-site.xml中主要配置需要覆盖的hadoop-default.xml的系统级配置。

如果 NameNode 意外终止,SecondaryNameNode 会接替它使集群继续工作。(x)

SecondaryNameNode是帮助恢复,而不是替代

NameNode 负责管理 metadata,client 端每次读写请求,它都会从磁盘中读取或则会写入 metadata 信息并反馈 client 端。(x)

NameNode 不需要从磁盘读取 metadata,所有数据都在内存中,硬盘上的只是序列化的结果,只有每次 namenode 启动的时候才会读取。
1)文件写入
Client向NameNode发起文件写入的请求。
NameNode根据文件大小和文件块配置情况,返回给Client它所管理部分DataNode的信息。
Client将文件划分为多个Block,根据DataNode的地址信息,按顺序写入到每一个DataNode块中。

2)文件读取
Client向NameNode发起文件读取的请求。

NameNode 本地磁盘保存了 Block 的位置信息。(√)

DataNode 通过长连接与 NameNode 保持通信。(?)

这个有分歧

(1)长连接
Client方与Server方先建立通讯连接,连接建立后不断开,然后再进行报文发送和接收。这种方式下由于通讯连接一直存在,此种方式常用于点对点通讯。

(2)短连接
Client方与Server每进行一次报文收发交易时才进行通讯连接,交易完毕后立即断开连接。此种方式常用于一点对多点通讯,比如多个Client连接一个Server.

Slave 节点要存储数据,所以它的磁盘越大越好。(x)

一旦Slave节点宕机,数据恢复是一个难题

hadoop dfsadmin –report 命令用于检测 HDFS 损坏块。(x)

因为 HDFS 有多个副本,所以 NameNode 是不存在单点问题的。(x)

NameNode 的 Web UI 端口是 50030,它通过 jetty 启动的 Web 服务。(x)


http://www.kler.cn/news/350827.html

相关文章:

  • 如何将rust日志输出到android终端
  • 养狗为什么需要宠物空气净化器?宠物空气净化器排行榜公布!
  • C++常用函数定义解释
  • Windows 使用命令行开启热点(无线网卡连接下)
  • k8s-service详解
  • 探索人工智能在自然语言处理中的应用
  • 曲线的弧长与曲率
  • 1.3.ReactOS系统宏函数ASSERT的实现
  • 【SAM模型应用于遥感影像|论文解读3】突破边界与一致性:SAM模型革新遥感影像语义分割
  • 大模型入门到精通!大模型应用开发极简入门(含PDF)
  • 信息安全工程师(52)网络安全审计系统组成与类型
  • 第3篇:传输层协议
  • Spark高级用法-数据源的读取与写入
  • Centos 7.5上配置mailx发送邮件
  • 《C++开发 AR 游戏:开启未来娱乐新潮流》
  • 六、IPD 方法论框架(IPD的核心流程)
  • UPDATE 更新数据
  • 【FP60】林业害虫数据集——目标检测、图像分类
  • 微软十月补丁星期二发现了 118 个漏洞
  • windows性能调优--基本性能优化
  • 传感器应用注意事项
  • PDF-XChange PRO v10.4.2.390 x64 已授权中文特别版
  • C++面试速通宝典——29
  • java代码生成器集成dubbo,springcloud详解以及微服务遐想
  • 【Golang】Go语言Web开发之模板渲染
  • Tortoise SVN 安装汉化教程(乌龟SVN)