1、 下面哪个程序负责 HDFS 数据存储。 (C )
A. NameNode B.Jobtracker
C. Datanode D. secondaryNameNode
2、 HDFS 中的 block 默认保存几个备份。 ( A )
A. 3 份 B. 2 份
C. 1 份 D. 不确定
3、 HDFS1.0 默认 Block Size大小是多少。 ( B )
A. 32MB B. 64MB
C. 128MB D. 256MB
4、 下面哪个进程负责 MapReduce 任务调度。 ( B )
A. NameNode B. Jobtracker
C. TaskTracker D. secondaryNameNode
5、 Hadoop1.0默认的调度器策略是哪个。 (A )
A. 先进先出调度器 B. 计算能力调度器
C. 公平调度器 D. 优先级调度器
6、Client 端上传文件的时候下列哪项正确? ( B )
A. 数据经过 NameNode 传递给 DataNode
B. Client 端将文件切分为 Block,依次上传
C. Client 只上传数据到一台 DataNode,然后由 NameNode 负责 Block 复制工作
D. 以上都不正确
7、 在实验集群的master节点使用jps命令查看进程时,终端出现以下哪项能说明Hadoop主节点启动成功? ( D )
A. Namenode,Datanode, TaskTracker
B. Namenode,Datanode, secondaryNameNode
C. Namenode,Datanode, HMaster
D. Namenode,JobTracker, secondaryNameNode
8、 若不针对MapReduce编程模型中的key和value值进行特别设置,下列哪一项是MapReduce不适宜的运算。 ( D )
A. Max B. Min
C. Count D. Average
9、 MapReduce编程模型,键值对<key, value>的key必须实现哪个接口? ( A )
A.WritableComparable B. Comparable
C. Writable D. LongWritable
10、以下哪一项属于非结构化数据。(C)
A. 企业ERP数据 B. 财务系统数据
C. 视频监控数据 D. 日志数据
11、 HBase数据库的BlockCache缓存的数据块中,哪一项不一定能提高效率。 (D )
A. –ROOT-表 B. .META.表
C. HFile index D. 普通的数据块
12、 HBase是分布式列式存储系统,记录按什么集中存放。 (A )
A. 列族 B. 列
C. 行 D. 不确定
13、 HBase的Region组成中,必须要有以下哪一项。 ( B )
A. StoreFile B. MemStore
C. HFile D. MetaStore
14、 客户端首次查询HBase数据库时,首先需要从哪个表开始查找。 ( B )
A. .META. B. –ROOT-
C. 用户表 D. 信息表
15、设计分布式数据仓库hive的数据表时,为取样更高效,一般可以对表中的连续字段进行什么操作。 ( A )
A. 分桶 B. 分区
C. 索引 D. 分表
二、判断题(每题 2 分,共 16 分)
1、 Hadoop 支持数据的随机读写。(hbase支持,hadoop不支持) ( 错 )
2、 NameNode 负责管理元数据信息metadata,client 端每次读写请求,它都会从磁盘中读取或会写入 metadata 信息并反馈给 client 端。(内存中读取) ( 错 )
3、 MapReduce 的 input split 一定是一个 block。 (默认是) ( 错)
4、 MapReduce适于PB级别以上的海量数据在线处理。 (离线) ( 错 )
5、 链式MapReduce计算中,对任意一个MapReduce作业,Map和Reduce阶段可以有无限个Mapper,但Reducer只能有一个。 ( 对 )
6、 MapReduce计算过程中,相同的key默认会被发送到同一个reduce task处理。( 对 )
7、HBase对于空(NULL)的列,不需要占用存储空间。 (没有则空不存储)( 对 )
8、 HBase可以有列,可以没有列族(column family)。 (有列族) ( 错 )
- 以下哪一项不属于Hadoop 可以运行的模式___C___。
A. 单机(本地)模式
B. 伪分布式模式
C. 互联模式
D. 分布式模式 - Hadoop 的作者是下面哪一位__B____。
A. Martin Fowler
B. Doug cutting
C. Kent Beck
D. Grace Hopper - 下列哪个程序通常与NameNode 在同一个节点启动__D___。
A. TaskTracker
B. DataNode
C. SecondaryNameNode
D. Jobtracker - HDFS 默认Block Size的大小是___B___。
A.32MB
B.64MB
C.128MB
D.256M - 下列哪项通常是集群的最主要瓶颈____C__。
A. CPU
B. 网络
C. 磁盘IO
D. 内存 - 下列关于MapReduce 说法不正确的是_____C_。
A. MapReduce 是一种计算框架
B. MapReduce 来源于google 的学术论文
C. MapReduce 程序只能用java 语言编写
D. MapReduce 隐藏了并行计算的细节,方便使用 - HDFS是基于流数据模式访问和处理超大文件的需求而开发的,具有高容错、高可靠性、
高可扩展性、高吞吐率等特征,适合的读写任务是__D____。
A.一次写入,少次读
B.多次写入,少次读
C.多次写入,多次读
D.一次写入,多次读 - HBase 依靠__A____存储底层数据。
A. HDFS
B. Hadoop
C. Memory
D. MapReduce - HBase 依赖___D___提供强大的计算能力。
A. Zookeeper
B. Chubby
C. RPC
D. MapReduce - HBase 依赖___A___提供消息通信机制
A. Zookeeper
B. Chubby
C. RPC
D. Socket - 下面与HDFS类似的框架是___C____?
A. NTFS
B. FAT32
C. GFS
D. EXT3 - 关于SecondaryNameNode 下面哪项是正确的___C___。
A. 它是NameNode 的热备
B. 它对内存没有要求
C. 它的目的是帮助NameNode 合并编辑日志,减少NameNode 启动时间
D. SecondaryNameNode 应与NameNode 部署到一个节点 - 大数据的特点不包括下面哪一项___D___。
A. 巨大的数据量
B. 多结构化数据
C. 增长速度快
D. 价值密度高
HBase测试题 - HBase 来源于哪一项? C
A The Google File System
B MapReduce
C BigTable
D Chubby - 下面对HBase 的描述哪些是正确的? B、C、D
A 不是开源的
B 是面向列的
C 是分布式的
D 是一种NoSQL数据库 - HBase 依靠()存储底层数据A
A HDFS
B Hadoop
C Memory
D MapReduce - HBase 依赖()提供消息通信机制A
A Zookeeper
B Chubby
C RPC
D Socket - HBase 依赖()提供强大的计算能力D
A Zookeeper
B Chubby
C RPC
D MapReduce - MapReduce 与HBase的关系,哪些描述是正确的? B、C
A 两者不可或缺, MapReduce 是HBase可以正常运行的保证
B 两者不是强关联关系,没有MapReduce,HBase可以正常运行
C MapReduce 可以直接访问HBase
D 它们之间没有任何关系 - 下面哪些选项正确描述了HBase的特性? A、B、C、D
A 高可靠性
B 高性能
C 面向列
D 可伸缩 - 下面与Zookeeper 类似的框架是? D
A Protobuf
B Java
C Kafka
D Chubby - 下面与HDFS类似的框架是? C
A NTFS
B FAT32
C GFS
D EXT3 - 下面哪些概念是HBase框架中使用的? A、C
A HDFS
B GridFS
C Zookeeper
D EXT3
第二部分: HBase核心知识点 - LSM 含义是? A
A 日志结构合并树
B 二叉树
C 平衡二叉树
D 基于日志结构的合并树 - 下面对LSM结构描述正确的是? A、C
A 顺序存储
B 直接写硬盘
C 需要将数据Flush 到磁盘
D 是一种搜索平衡树 - LSM 更能保证哪种操作的性能? B
A 读
B 写
C 随机读
D 合并 - LSM 的读操作和写操作是独立的? A
A 是。
B 否。
C LSM并不区分读和写
D LSM中读写是同一种操作 - LSM 结构的数据首先存储在() 。B
A 硬盘上
B 内存中
C 磁盘阵列中
D 闪存中
16 HFile 数据格式中的Data 字段用于() 。A
A 存储实际的KeyValue数据
B 存储数据的起点
C 指定字段的长度
D 存储数据块的起点
17 HFile 数据格式中的MetaIndex 字段用于() 。D
A Meta 块的长度
B Meta 块的结束点
C Meta 块数据内容
D Meta 块的起始点
18 HFile 数据格式中的Magic 字段用于() 。A
A 存储随机数,防止数据损坏
B 存储数据的起点
C 存储数据块的起点
D 指定字段的长度
19 HFile 数据格式中的KeyValue数据格式,下列选项描述正确的是() 。A、D
A 是byte[] 数组
B 没有固定的结构
C 数据的大小是定长的
D 有固定的结构
20 HFile 数据格式中的KeyValue数据格式中Value 部分是()。C
A 拥有复杂结构的字符串
B 字符串
C 二进制数据
D 压缩数据
第三部分: HBase高级应用介绍
31 HBase 中的批量加载底层使用()实现。A
A MapReduce
B Hive
C Coprocessor
D Bloom Filter - HBase 性能优化包含下面的哪些选项? A、B、C、D
A 读优化
B 写优化
C 配置优化
D JVM 优化 - Rowkey 设计的原则,下列哪些选项的描述是正确的? A、B、C
A 尽量保证越短越好
B 可以使用汉字
C 可以使用字符串
D 本身是无序的 - HBase 构建二级索引的实现方式有哪些? A、B
A MapReduce
B Coprocessor
C Bloom Filter
D Filter - 关于HBase二级索引的描述,哪些是正确的? A、B
A 核心是倒排表
B 二级索引概念是对应Rowkey 这个“一级”索引
C 二级索引使用平衡二叉树
D 二级索引使用LSM结构 - 下列关于Bloom Filter 的描述正确的是? A、C
A 是一个很长的二进制向量和一系列随机映射函数
B 没有误算率
C 有一定的误算率
D 可以在Bloom Filter 中删除元素
第四部分: HBase安装、部署、启动 - HBase 官方版本可以安装在什么操作系统上? A、B、C
A CentOS
B Ubuntu
C RedHat
D Windows - HBase 虚拟分布式模式需要()个节点? A
A 1
B 2
C 3
D 最少3 个 - HBase 分布式模式最好需要()个节点? C
A 1
B 2
C 3
D 最少
关于hadoop 的选择题
1、Doug Cutting 所创立的项目的名称都受到其家人的启发,以下项目不是由他
创立的项目是
A. Hadoop
B. Nutch
C. Lucene
D. Solr
答案:D
2、配置Hadoop时,JAVA_HOME 包含在哪一个配置文件中
A. hadoop-default.xml
B. hadoop-env.sh
C. hadoop-site.xml
D. configuration.xsl
答案:B
知识点: hadoop配置
3、Hadoop配置文件中, hadoop-site.xml 显示覆盖hadoop-default.xml 里的内
容。在版本0.20 中, hadoop-site.xml 被分离成三个XML文件,不包括
A. conf-site.xml
B. mapred-site.xml
C. core-site.xml
D. hdfs-site.xml
答案:A
知识点: hadoop配置
4、HDFS默认的当前工作目录是/user/$USER,fs.default.name 的值需要在哪个
配置文件内说明
A. mapred-site.xml
B. core-site.xml
C. hdfs-site.xml
D. 以上均不是
答案:B
知识点: hadoop配置
5、关于Hadoop单机模式和伪分布式模式的说法,正确的是
A. 两者都起守护进程,且守护进程运行在一台机器上
B. 单机模式不使用HDFS,但加载守护进程
C. 两者都不与守护进程交互,避免复杂性
D. 后者比前者增加了HDFS输入输出以及可检查内存使用情况
答案:D
知识点: hadoop配置
6、下列关于Hadoop API 的说法错误的是
A. Hadoop 的文件API 不是通用的,只用于HDFS文件系统
B. Configuration 类的默认实例化方法是以HDFS系统的资源配置为基础的
C. FileStatus 对象存储文件和目录的元数据
D. FSDataInputStream 是java.io.DataInputStream 的子类
答案:A
//HDFS
7、HDFS的NameNode负责管理文件系统的命名空间,将所有的文件和文件夹的
元数据保存在一个文件系统树中,这些信息也会在硬盘上保存成以下文件:
A.日志
B.命名空间镜像
C.两者都是
答案:C
知识点:
8、HDFS的namenode保存了一个文件包括哪些数据块, 分布在哪些数据节点上,
这些信息也存储在硬盘上。
A.正确
B.错误
答案:B
知识点:在系统启动的时候从数据节点收集而成的
9、Secondary namenode就是namenode出现问题时的备用节点
A.正确
B.错误
答案:B
知识点:它和元数据节点负责不同的事情。其主要功能就是周期性将元数据节点
的命名空间镜像文件和修改日志合并, 以防日志文件过大。合并过后的命名空间
镜像文件也在Secondary namenode保存了一份,以防namenode失败的时候,可
以恢复。
10、出现在datanode 的VERSION文件格式中但不出现在namenode的VERSION
文件格式中的是
A. namespaceID
B. storageID
C. storageType
D. layoutVersion
答案:B
知识点:其他三项是公有的。layoutVersion 是一个负整数,保存了HDFS的持
续化在硬盘上的数据结构的格式版本号; namespaceID是文件系统的唯一标识符,
是在文件系统初次格式化时生成的; storageType 表示此文件夹中保存的是数据
节点的类型
11、Client 在HDFS上进行文件写入时, namenode根据文件大小和配置情况, 返
回部分datanode 信息,谁负责将文件划分为多个Block ,根据DataNode的地址
信息,按顺序写入到每一个DataNode块
A. Client
B. Namenode
C. Datanode
D. Secondary namenode
答案:A
知识点: HDFS文件写入
12、HDFS的是基于流数据模式访问和处理超大文件的需求而开发的,默认的最
基本的存储单位是64M,具有高容错、高可靠性、高可扩展性、高吞吐率等特征,
适合的读写任务是
A.一次写入,少次读写
B.多次写入,少次读写
C.一次写入,多次读写
D.多次写入,多次读写
答案:C
知识点: HDFS特性
13、HDFS无法高效存储大量小文件,想让它能处理好小文件,比较可行的改进
策略不包括
A. 利用SequenceFile 、MapFile 、Har 等方式归档小文件
B. 多Master 设计
C. Block 大小适当调小
D. 调大namenode内存或将文件系统元数据存到硬盘里
答案:D
知识点: HDFS特性
14、关于HDFS的文件写入,正确的是
A. 支持多用户对同一文件的写操作
B. 用户可以在文件任意位置进行修改
C. 默认将文件块复制成三份存放
D. 复制的文件块默认都存在同一机架上
答案:C
知识点:在HDFS的一个文件中只有一个写入者,而且写操作只能在文件末尾完
成,即只能执行追加操作。默认三份文件块两块在同一机架上, 另一份存放在其
他机架上。
15、Hadoop fs 中的-get 和-put 命令操作对象是
A. 文件
B. 目录
C. 两者都是
答案:C
知识点: HDFS命令
16、Namenode在启动时自动进入安全模式,在安全模式阶段,说法错误的是
A. 安全模式目的是在系统启动时检查各个DataNode上数据块的有效性
B. 根据策略对数据块进行必要的复制或删除
C. 当数据块最小百分比数满足的最小副本数条件时,会自动退出安全模式
D. 文件系统允许有修改
答案:D
知识点: HDFS安全模式
//MapReduce
17、MapReduce框架提供了一种序列化键/ 值对的方法,支持这种序列化的类能
够在Map和Reduce过程中充当键或值,以下说法错误的是
A. 实现Writable 接口的类是值
B. 实现WritableComparable 接口的类可以是值或键
C. Hadoop 的基本类型Text 并不实现WritableComparable 接口
D. 键和值的数据类型可以超出Hadoop自身支持的基本类型
答案:C
18、以下四个Hadoop预定义的Mapper 实现类的描述错误的是
A. IdentityMapper<K, V> 实现Mapper<K, V, K, V> ,将输入直接映射到输出
B. InverseMapper<K, V> 实现Mapper<K, V, K, V> ,反转键/ 值对
C. RegexMapper实现Mapper<K, Text, Text, LongWritable> ,为每个常
规表达式的匹配项生成一个(match, 1) 对
D. TokenCountMapper实现Mapper<K, Text, Text, LongWritable> ,当输
入的值为分词时,生成(taken, 1) 对
答案:B
知识点: InverseMapper<K, V> 实现Mapper<K, V, V, K>
19、下列关于HDFS为存储MapReduce并行切分和处理的数据做的设计,错误的
是
A. FSDataInputStream 扩展了DataInputStream 以支持随机读
B. 为实现细粒度并行,输入分片(Input Split) 应该越小越好
C. 一台机器可能被指派从输入文件的任意位置开始处理一个分片
D. 输入分片是一种记录的逻辑划分, 而HDFS数据块是对输入数据的物理分割
答案:B
知识点:每个分片不能太小, 否则启动与停止各个分片处理所需的开销将占很大
一部分执行时间
20、针对每行数据内容为” Timestamp Url ”的数据文件, 在用JobConf 对象conf
设置conf.setInputFormat(WhichInputFormat.class) 来读取这个文件时,
WhichInputFormat 应该为以下的
A. TextInputFormat
B. KeyValueTextInputFormat
C. SequenceFileInputFormat
D. NLineInputFormat
答案:B
知识点:四项主要的InputFormat 类。KeyValueTextInputFormat 以每行第一个
分隔符为界,
分隔符前为key,之后为value ,默认制表符为\t
21、有关MapReduce的输入输出,说法错误的是
A. 链接多个MapReduce作业时,序列文件是首选格式
B. FileInputFormat 中实现的getSplits() 可以把输入数据划分为分片, 分片
数目和大小任意定义
C. 想完全禁止输出,可以使用NullOutputFormat
D. 每个reduce 需将它的输出写入自己的文件中,输出无需分片
答案:B
知识点:分片数目在numSplits 中限定,分片大小必须大于mapred.min.size
个字节,但小于文件系统的块
23、以下说法不正确的是
A. Hadoop Streaming 使用Unix 中的流与程序交互
B. Hadoop Streaming 允许我们使用任何可执行脚本语言处理数据流
C. 采用脚本语言时必须遵从UNIX的标准输入STDIN,并输出到STDOUT
D. Reduce 没有设定,上述命令运行会出现问题
答案:D
知识点:没有设定特殊的reducer ,默认使用IdentityReducer
24、在高阶数据处理中, 往往无法把整个流程写在单个MapReduce作业中, 下列
关于链接MapReduce作业的说法,不正确的是
A.Job 和JobControl 类可以管理非线性作业之间的依赖
B.ChainMapper 和ChainReducer 类可以用来简化数据预处理和后处理的构成
C.使用ChainReducer 时,每个mapper和reducer 对象都有一个本地JobConf
对象
D.ChainReducer.addMapper() 方法中, 一般对键/ 值对发送设置成值传递, 性能
好且安全性高
答案:D
知识点:ChainReducer.addMapper() 方法中, 值传递安全性高, 引用传递性能高
25、下面哪个程序负责 HDFS 数据存储。答案C datanode
a)NameNode
b)Jobtracker
c)Datanode
d)secondaryNameNode
e)tasktracker - HDfS 中的 block 默认保存几份? 答案A默认3 分
a)3 份
b)2 份
c)1 份
d) 不确定 - 下列哪个程序通常与 NameNode 在一个节点启动?答案D
a)SecondaryNameNode
b)DataNode
c)TaskTracker
d)Jobtracker - Hadoop 作者答案C Doug cutting
a)Martin Fowler
b)Kent Beck
c)Doug cutting - HDFS 默认 Block Size 答案:B
a)32MB
b)64MB
c)128MB
30、下列哪项通常是集群的最主要瓶颈:答案: C磁盘
a)CPU
b) 网络
c) 磁盘IO
d) 内存 - 关于 SecondaryNameNode 哪项是正确的?答案C
a) 它是 NameNode 的热备
b) 它对内存没有要求
c) 它的目的是帮助 NameNode 合并编辑日志,减少 NameNode 启动时间
d)SecondaryNameNode 应与 NameNode 部署到一个节点。
多选题: - 下列哪项可以作为集群的管理?答案: ABD
a)Puppet
b)Pdsh
c)Cloudera Manager
d)Zookeeper - 配置机架感知的下面哪项正确:答案ABC
a) 如果一个机架出问题,不会影响数据读写
b) 写入数据的时候会写到不同机架的 DataNode 中
c)MapReduce 会根据机架获取离自己比较近的网络数据 - Client 端上传文件的时候下列哪项正确?答案B
a) 数据经过 NameNode 传递给 DataNode
b)Client 端将文件切分为 Block ,依次上传
c)Client 只上传数据到一台 DataNode,然后由 NameNode 负责 Block 复制工
作 - 下列哪个是 Hadoop 运行的模式:答案ABC
a) 单机版
b) 伪分布式
c) 分布式 - Cloudera 提供哪几种安装 CDH 的方法?答案: ABCD
a)Cloudera manager
b)Tarball
c)Yum
d)Rpm
判断题: - Ganglia 不仅可以进行监控,也可以进行告警。( 正确)
- Block Size 是不可以修改的。(错误)
- Nagios 不可以监控 Hadoop 集群,因为它不提供 Hadoop 支持。(错误)
- 如果NameNode 意外终止, SecondaryNameNode 会接替它使集群继续工作。
(错误) - Cloudera CDH 是需要付费使用的。(错误)
- Hadoop 是 Java 开发的,所以 MapReduce 只支持 Java 语言编写。(错误)
- Hadoop 支持数据的随机读写。(错)
- NameNode 负责管理 metadata ,client 端每次读写请求,它都会从磁盘中读
取或则会写入 metadata 信息并反馈 client 端。(错误) - Hadoop 自身具有严格的权限管理和安全措施保障集群正常运行。(错误)
- Slave 节点要存储数据,所以它的磁盘越大越好。( 错误)
- hadoopdfsadmin –report 命令用于检测 HDFS 损坏块。(错误)
- Hadoop 默认调度器策略为 FIFO(正确)
- 集群内每个节点都应该配 RAID,这样避免单磁盘损坏, 影响整个节点运行。
(错误) - 因为 HDFS 有多个副本,所以 NameNode 是不存在单点问题的。(错误)
- 每个 map 槽就是一个线程。(错误)
- Mapreduce 的 input split 就是一个 block 。(错误)
- DataNode 首次加入 cluster 的时候,如果 log 中报告不兼容文件版本,
那需要 NameNode执行“ Hadoop namenode - format ”操作格式化磁盘。(错误) - NameNode 的 Web UI 端口是 50030 ,它通过 jetty 启动的 Web 服务。(错
误) - Hadoop 环境变量中的 HADOOP_HEAPSIZ用E 于设置所有 Hadoop 守护线程
的内存。它默认是 200 GB。( 错误)