admin 管理员组

文章数量: 1184232


2024年3月28日发(作者:html右对齐)

题库(第一、三、八章)

第一章

单选题

1、大数据的数据量现在已经达到了哪个级别?( C )

A、GB

B、TB

C、PB

D、ZB

2、2003年,Google公司发表了主要讲解海量数据的可靠存储方法的论文是?

( A )

A、“The Google File System”

B、“MapReduce: Simplified Data Processing on Large Clusters”

C、“Bigtable: A Distributed Storage System for Structured Data”

D、“The Hadoop File System”

3、2004年,Google公司发表了主要讲解海量数据的高效计算方法的论文是?

( B )

A、“The Google File System”

B、“MapReduce: Simplified Data Processing on Large Clusters”

C、“Bigtable: A Distributed Storage System for Structured Data”

D、“The Hadoop File System”

4、2006年,Google公司发表了用来处理海量数据的一种非关系型数据库的论文

是?( C )

A、“The Google File System”

B、“MapReduce: Simplified Data Processing on Large Clusters”

C、“Bigtable: A Distributed Storage System for Structured Data”

D、“The Hadoop File System”

5、对于GFS架构,下面哪个说法是错误的?( A )

A、GFS Master节点管理所有的文件系统所有数据块。

B、GFS存储的文件都被分割成固定大小的块,每个块都会被复制到多个块服务

器上(可靠性)。块的冗余度默认为3。

C、GFS Master还管理着系统范围内的活动,比如块服务器之间的数据迁移等

D、GFS Master与每个块服务器通信(发送心跳包),发送指令,获取状态

6、下面哪个选项不是HDFS架构的组成部分?( D )

A、NameNode

B、DataNode

C、SecondaryNameNode

D、GFS

7、狭义的Hadoop是一个适合大数据分布式存储和分布式计算的平台,不包括下

面哪个组件?( D )

A、HDFS

B、MapReduce

C、Yarn

D、HBase

8、与Hadoop 1.x相比,Hadoop 2.x采用全新的架构,最明显的变化就是增加

了哪个组件?( D )

A、MapReduce

B、Pig

C、HBase

D、Yarn

9、建立在Hadoop文件系统之上的分布式的列式数据库?( A )

A、HBase

B、Hive

C、YARN

D、Mahout

10、下面哪个选项不属于Google的三驾马车?( A )

A、HDFS

B、MapReduce

C、BigTable

D、GFS

多选题

1、下面哪些是大数据的基本特征?( ABCD )

A、数据体量大

B、数据类型多

C、处理速度快

D、价值密度低

2、Hadoop能够使用户轻松开发和运行处理大数据的应用程序,那它主要有下面

哪些特点( ABCD )

A、高可靠性

B、高扩展性

C、高效性

D、高容错性

判断题

( × ) 1、Google的在大数据解决方案是开源的。

( √ ) 2、GFS分布式文件系统有两个基本组成部分,一个是客户端(Client),

一个是服务端(Server)

( √ ) 3、上传的数据块保存在GFS上,在保存过程中需要水平复制,水平复

制需要考虑两个要求:可靠性、可用性

( × ) 4、HDFS的采用了“分而治之”的思想。

( √ ) 5、MapReduce是的最早提出是Google为了解决PageRank的问题

( √ ) 6、Hbase是非关系型数据库,是面向列的。

第三章

单选题

1、HDFS首先把大数据文件切分成若干个小的数据块,再把这些数据块分别写入

不同的节点,这些负责保存文件数据的节点被称为?( B )

A、NameNode

B、DataNode

C、SecondaryNameNode

D、Block

2、名称节点(NameNode)是HDFS的管理者,它的职责有3个方面,下面哪个选

项不是NamdeNode的职责?( D )

A、负责管理和维护HDFS的命名空间(NameSpace)

B、管理DataNode上的数据块(Block)

C、接收客户端的请求

D、负责保存数据块

3、数据节点(DataNode)负责存储数据,一个数据块会在多个DataNode中进行

冗余备份,那么HDFS默认存储几份?( C )

A、1

B、2

C、3

D、5

4、下面哪个选项不属于DataNode的职责?( C )

A、保存数据块

B、启动DataNode线程,向NameNode定期汇报数据块信息

C、管理数据块

D、定期向NameNode发送心跳信息保持联系

5、向HDFS上传文件,正确的shell命令是?( B )

A、hdfs dfs -get

B、hdfs dfs -put

C、hdfs dfs -appendToFile

D、hdfs dfs -copyToLocal

6、对于HDFS文件读取过程,描述不正确的是?( A )

A、HDFS客户端通过Configuration对象的open()方法打开要读取的文件

B、DistributedFileSystem负责向远程的名称节点(NameNode)发起RPC调用,

得到文件的数据块信息,返回数据块列表

C、通过对数据流反复调用read()方法,把数据从数据节点传输到客户端

D、当客户端读取完数据时,调用FSDataInputStream对象的close()方法关闭

输入流

7、HDFS能够在出错的情况下保证数据存储的可靠性,常见的出错情况不包括?

( D )

A、数据节点(DataNode)出错

B、名称节点(NameNode)出错

C、数据本身出错

D、以上选项都不包括

8、考虑到安全和效率,Hadoop设计了机架感知(rack-aware)功能,下面关于

机架感知说法正确的是?( C )

A、三个冗余备份可在同一个机架上

B、三个冗余备份在不同的机架上

C、三个冗余备份其中有两个在同一个架构上,另外一个备份在不同的机架上

D、上述说法都不对

9、Hadoop类库中最终面向用户提供的接口类是_____。该类是个抽象类,只能

通过类的get方法得到具体类?( B )

A、Configuration类

B、FileSystem类

C、Path类

D、URI类

10、使用HDFS Federation的优点不包括下面哪个选项?( B )

A、NameSpace具有可扩展性

B、DataNode具有可扩展性

C、性能提升。多个NameNode可以提高读写时的数据吞吐量

D、隔离性。使用联邦可隔离不同类型的程序,一定程度上可控制资源的分配

11、当NameNode出错时,下面哪个方案描述正确,且是最佳故障恢复和容错方

案?( B )

A、采用SecondaryName定时备份NameNode的fsimage和edits

B、采用NameNode HA,当一个NameNode出错时,另一个NameNode接管它的工作。

C、采用NameNode Fedaration,多个Namenode一起工作。

D、多增加DataNode

12、关于HDFS回收站描述正确的是?( C )

A、HDFS回收站默认开启

B、HDFS回收站中的文件文件像Windows回收站一样,如果不清空回收站,文件

会一直保留在回收站。

C、HDFS为每一个用户都创建了回收站,这个类似操作系统的回收站。位置是

/user/用户名/.Trash/

D、用户不能手动清空回收站中的内容

13、关于 SecondaryNameNode的描述,哪项是正确的? ( C )

A、它是NameNode的热备

B、它对内存没有要求

C、它的目的是帮助NameNode合并编辑日志,减少NameNode启动时间

D、SecondaryNameNode应与NameNode部署到一个节点

14、HDFS的是基于流数据模式访问和处理超大文件的需求而开发的,具有高容

错、高可靠性、高可扩展性、高吞吐率等特征,适合的读写任务是:( C )

A、一次写入,少次读写

B、多次写入,少次读写

C、一次写入,多次读写

D、多次写入,多次读写

多选题

1、下面属于HDFS的优点的是(ABC)

A、处理超大文件。HDFS能够处理TB级甚至PB级的数据。

B、支持流式数据访问。

C、低成本运行。HDFS可运行在低廉的商用硬件集群上。

D、适合处理低延迟的数据访问

E、适合处理大量的小文件

F、支持多用户写入及任意修改文件

判断题

( √ ) 1、HDFS是整个Hadoop生态圈中的基石

( × ) 2、在HDFS HA集群中,两个NameNode都处于活跃状态,这样其中一

个NameNode故障时,集群仍然可用

( × ) 3、DataNode一旦发生故障将导致整个集群不可用

( √ ) 4、上传到HDFS的一个数据块是1M,那么它在HDFS上占用的内存是

1M

( √ ) 5、NameNode管理了两个文件,其中fsimage体现了其最新的状态

( √ ) 6、安全模式(Safemode)是HDFS所处的一种特殊状态。处于这种状

态时,HDFS只接受读数据请求,不能对文件进行写、删除等操作

( × ) 7、HDFS为每一个用户都创建了类似操作系统的回收站(Trash),当

用户删除文件时,文件马上就会被永久性删除

( × ) 8、hdfs dfsadmin -disallowSnapshot是开启HDFS快照的命令

( √ ) 9、HDFS提供了如下两种配额(Quota)命令(这两种命令是管理命令

——hdfs dfsadmin)

简答题

1、根据要求写出对应的HDFS shell命令

(1) 在HDFS上创建名为test的目录

hdfs dfs -mkdir test

(2) 将本地的文件file上传至test目录下

hdfs dfs -put file test

或hdfs dfs -copyFromLocal file test

(3) 将本地的文件file1内容追加至test目录下的file中

hdfs dfs -appendToFile file1 test/file

(4) 查看test的目录信息

hdfs dfs -ls test

(5) 将test下的file文件下载至本地

hdfs dfs -get file test

或hdfs dfs -copyToLocal file test

2、HDFS编程:创建文件

public static void main(String[] args) throws Exception{

Configuration conf=new Configuration();

URI uri=new URI("hdfs://XXXXX:XX");

FileSystem fs=(uri,conf,"hadoop");

Path dfs=new Path("/mydir/");

FSDataOutputStream os=(dfs,true);

ytes("hello,hdfs!");

();

();

}

3、请描述HDFS文件读取过程

文字描述:

(1)HDFS客户端通过DistributedFileSystem对象的open()方法打开要读

取的文件。

(2)DistributedFileSystem负责向远程的名称节点(NameNode)发起RPC

调用,得到文件的数据块信息,返回数据块列表。对于每个数据块,NameNode

返回该数据块的DataNode地址。

(3)DistributedFileSystem返回一个FSDataInputStream对象给客户端,

客户端调用FSDataInputStream对象的read()方法开始读取数据。

(4)通过对数据流反复调用read()方法,把数据从数据节点传输到客户端。

(5)当一个节点的数据读取完毕时,DFSInputStream对象会关闭与此数据

节点的连接,连接此文件下一个数据块的最近数据节点。

(6)当客户端读取完数据时,调用FSDataInputStream对象的close()方

法关闭输入流。

4、请描述HDFS文件写入的过程

文字描述:

(1)客户端调用DistributedFileSystem对象的create()方法创建一个文

件输出流对象。

(2)DistributedFileSystem对象向远程的NameNode节点发起一次RPC调

用,NameNode检查该文件是否已经存在,以及客户端是否有权限新建文件。

(3)客户端调用FSDataOutputStream对象的write()方法写数据,数据先

被写入缓冲区,再被切分为一个个数据包。

(4)每个数据包被发送到由NameNode节点分配的一组数据节点的一个节点

上,在这组数据节点组成的管道上依次传输数据包。

(5)管道上的数据节点按反向顺序返回确认信息,最终由管道中的第一个

数据节点将整条管道的确认信息发送给客户端。

(6)客户端完成写入,调用close()方法关闭文件输出流。

(7)通知NameNode文件写入成功。

第八章

单选题

1、以前在传统数据库与Hadoop之间,数据传输没有专门的工具,两者数据的互

导是比较困难的,_____的出现解决了这个问题?( C )

A、Hive

B、Flume

C、Sqoop

D、Zookeeper

2、Sqoop的底层实现是_____?( B )

A、HDFS

B、MapReduce

C、HBase

D、Hadoop

3、将数据从关系型数据库中导出到HDFS上,应当使用命令_____?( A )

A、import

B、export

C、list

D、以上都不对

4、关于Sqoop数据的导入导出描述不正确的是?( B )

A、实现从MySQL到Hive的导入导出

B、实现从MySQL到Oracle的导入导出

C、实现从HDFS到Oracle的导入导出

D、实现从HDFS到MySQL的导入导出

5、列出mysql数据库中的所有数据库sqoop命令是?(A)

A、sqoop list-databases –connect

B、sqoop list-tables –connect

C、sqoop create-hive-table –connect

D、sqoop import –connect

6、对Sqoop描述不正确的是?( C )

A、Sqoop的底层实现是MapReduce

B、Sqoop主要采集关系型数据库中数据,常用于离线计算批量处理

C、Sqoop只支持从关系型数据库导入到HDFS,不支持从HDFS导入到关系型数据

库。

D、Sqoop脚本最终会变成提交到YARN上的一个个map任务

判断题

( √ ) 1、Sqoop充分利用了MapReduce的并行特点,以批处理的方式加快数

据的传输,同时也借助MapReduce实现了容错

( × ) 2、用户的Sqoop脚本最终会变成提交到YARN上的一个个reduce任务

( × ) 3、Sqoop中的export命令是将数据导入到集群中

( √ ) 4、import-all-tables命令的功能是导入某个数据库下所有表到HDFS

( × ) 5、将MySql数据导入到Hadoop集群中不需要任务依赖jar包


本文标签: 数据 文件 节点 数据库 处理