大数据应用技术测试习题

1. Impala是哪种处理的查询分析?

A. 实时
B. 内存计算
C. 海量处理
D. 批处理
答案:A
解析:Impala是由Cloudera开发的一个开源并行处理查询工具,它能够在Apache Hadoop上进行实时查询分析。使用Impala,用户可以执行低延迟的SQL查询直接在Hadoop中,而不需要将数据传送到其他系统或使用MapReduce。此外,Impala也支持在Hadoop中存储的多种数据格式,包括Parquet,Avro,RCFile等。所以,Impala主要是用于实时查询处理。虽然Impala也能处理大量的数据,但它并不具备内存计算或批处理的专有特性。
批处理计算 针对大规模数据的批量处理 MapReduce、Spark等。流计算,针对流数据的实时计算,Storm、S4、Flume、Streams、Puma、DStream、Super Mario、银河流数据处理平台等。图计算 针对大规模图结构数据的处理Pregel、GraphX、Giraph、PowerGraph、Hama、GoldenOrb等。查询分析计算 大规模数据的存储管理和查询分析Dremel、Hive、Cassandra、Impala等

2. HiveQL语句“select u.name, o.orderid from order o join user u on o.uid = u.uid; ”是什么操作?

A. 去重
B. 合并
C. 连接
D. 分组
答案:C
解析:这个HiveQL语句是进行"连接"操作。它使用了 SQL 中的 “join” 关键词来连接 “order” 表和 “user” 表。具体地,它根据两个表中的 “uid” 字段进行连接,返回一个新的结果集,包含 “user” 表的 “name” 字段和 “order” 表的"orderid"字段。所以,它并不涉及去重、合并或分组操作,而是在两个表之间进行连接操作。

3. Meta store是管理Hive的什么数据的?

A. 大数据
B. 实际数据
C. 表数据
D. 元数据
答案:D
解析:在Hive中,Meta store是用于管理元数据的。元数据是关于数据的数据,可以包括表的定义、列的数据类型、表的分区信息等。Hive Meta store存储了Hive中所有表的结构信息,包括列、类型、分区等等。所以,Meta store并不直接管理大数据、实际数据或者表数据,而是管理描述这些数据的元数据。

4. Neo4J是哪种数据库

A. 文档数据库
B. 图数据库
C. 键值数据库
D. 列式数据库
答案:B
解析:Neo4J是一种图数据库。图数据库是一种非关系型数据库,它将结构化数据存储为网络而非表格。在图数据库中,数据被保存为节点,节点之间的关系被保存为边。Neo4J就是这种数据库的一个典型代表,它可以高效地处理复杂的网络关系查询。相比之下,文档数据库、键值数据库、列式数据库等都有各自的特性,但Neo4J并不属于这些类型。
文档数据库:MongoDB, CouchDB, RavenDB等。
图数据库:Neo4J, ArangoDB, Amazon Neptune等。
键值数据库:Redis, Memcached, Amazon DynamoDB等。
列式数据库:Cassandra, HBase, Google BigTable等。

5. HBase是哪种数据库

A. 文档数据库
B. 图数据库
C. 键值数据库
D. 列式数据库
答案:D
解析:HBase是一种列式数据库。它是Hadoop生态系统的一部分,并且是Google的BigTable的一个开源实现。在列式数据库中,数据按列存储,这样可以更高效地查询和处理数据。这种存储方式特别适合于需要查询大量相同类型数据的应用,比如大数据和数据挖掘等领域。虽然HBase也采用了一种类型的键值存储模型,但它按照设计和最主要的使用场景,通常被归类为列式数据库。
文档数据库:MongoDB, CouchDB, RavenDB等。
图数据库:Neo4J, ArangoDB, Amazon Neptune等。
键值数据库:Redis, Memcached, Amazon DynamoDB等。
列式数据库:Cassandra, HBase, Google BigTable等。

6. HiveQL语句“select rank, isonline, count(*) from city group by rank, isonline; ”是什么操作?

A. 去重
B. 合并
C. 连接
D. 分组
答案:D
解析:这个HiveQL语句执行的是"分组"操作。这是通过SQL语句中的"group by"关键字实现的。它按照"rank"和"isonline"字段对"city"表中的数据进行分组,然后使用"count(*)"函数计算每个组中的记录数。所以,这并不涉及去重、合并或连接操作,而是分组操作。
去重:这通常是通过使用DISTINCT关键字来实现的。例如,如果你想要从"city"表中获取所有唯一的城市名,你可以使用以下的语句:SELECT DISTINCT cityname FROM city;这条语句会返回所有在"cityname"列中出现的不同的城市名。
合并:在SQL中,我们通常使用UNION或者UNION ALL关键字来实现数据的合并。例如,如果你想要从"city"表和"town"表中获取所有的城市和镇的名字,你可以使用以下的语句:
SELECT cityname FROM city UNION SELECT townname FROM town;
这条语句会返回"city"表中的所有城市名和"town"表中的所有镇名,而且每个名字只会出现一次。如果你想要保留重复的名字,可以使用UNION ALL替换UNION。
连接:这通常是通过使用JOIN关键字来实现的。例如,如果你想要获取每个城市的名称和其对应的国家名,你可以假设有一个"country"表包含城市和国家的映射,然后使用以下的语句: SELECT c.cityname, co.countryname FROM city c JOIN country co ON c.countryid = co.countryid;这条语句会返回一个新的结果集,其中包含每个城市的名称以及该城市对应的国家的名称。

7. Driver是将HQL查询语句转化为什么任务?

A. HQL任务
B. MapReduce任务
C. HDFS任务
D. SQL任务
答案:B
解析:在Hive中,Driver主要负责将HQL(Hive Query Language)查询语句转化为MapReduce任务。这些任务然后可以在Hadoop集群上执行,以处理存储在HDFS(Hadoop Distributed File System)中的大量数据。虽然HQL语句在语法上类似于SQL,但是Hive并不直接执行SQL任务,而是转换成适合在Hadoop上运行的MapReduce任务。所以答案是【MapReduce任务】
AHQL任务:实际上并不存在所谓的"HQL任务"。HQL,即Hive Query Language,是一种SQL-like的查询语言,被设计用于查询存储在Hadoop平台上的数据。HQL语句通过Hive Driver转化为可以在Hadoop上执行的MapReduce任务。
HDFS任务:HDFS,即Hadoop Distributed File System,是一个分布式文件系统,用于存储在Hadoop集群上的数据。然而,"HDFS任务"并不是一个标准术语。Hadoop主要执行的任务类型是MapReduce任务,这些任务可以处理存储在HDFS中的数据。有时候,我们可能会谈论到与HDFS交互的操作,比如文件的读写,但这些通常被看作是MapReduce或其他类型任务的一部分。
SQL任务:SQL是一种用于管理关系数据库的查询语言,SQL任务通常是指在关系数据库(如MySQL、PostgreSQL等)中执行的SQL查询或命令。然而,在Hive的上下文中,虽然我们编写的查询语句类似于SQL(即HQL),但这些语句并不是直接执行的,而是被转化为MapReduce任务在Hadoop上执行。

8. Redis是哪种数据库

A. 文档数据库
B. 图数据库
C. 键值数据库
D. 列式数据库
答案:C
解析:Redis是一种键值数据库。键值数据库是一种非关系型数据库,其中每一个值都与一个唯一的键相关联。这种数据库适用于存储简单的数据类型,并且需要快速读写操作,例如缓存或者会话信息。Redis是这种数据库的一个非常流行的例子,它支持多种数据结构如字符串、列表、集合、哈希等,并且提供了丰富的操作接口,同时也支持数据的持久化。
文档数据库:MongoDB, CouchDB, RavenDB等。
图数据库:Neo4J, ArangoDB, Amazon Neptune等。
键值数据库:Redis, Memcached, Amazon DynamoDB等。
列式数据库:Cassandra, HBase, Google BigTable等。

9. HiveQL语句“select dealid, count(distinct uid) num from order group by dealid; ”是什么操作?

A. 去重
B. 合并
C. 连接
D. 分组
答案:A
解析:
关键字:
分组:group by
去重:DISTINCT
合并:UNION或者UNION
连接:JOIN

10. HiveQL语言类似哪种查询分析语言?

A. SQL
B. Hadoop
C. Java
D. Python
答案:A
解析:Hive Query Language (HiveQL) 是一种和SQL非常类似的查询语言,它被设计用于在Apache Hive环境中查询和管理大数据。HiveQL支持很多类似于SQL的特性,包括查询表,聚合函数,联接等。然而,不同于标准的SQL,HiveQL还包含了许多适应Hadoop MapReduce模型的特性,如分区等。所以,HiveQL更像是SQL和MapReduce的结合。

11. MongoDB是哪种数据库

A. 文档数据库
B. 图数据库
C. 键值数据库
D. 列式数据库
答案:A
解析:MongoDB是一种文档数据库,这是一类非关系型数据库。与传统的关系型数据库存储表格形式的数据不同,文档数据库如MongoDB存储的是一种类似于JSON的数据格式(BSON),它可以存储更为复杂的数据类型并且提供了丰富的查询语言。在MongoDB中,数据被存储为一系列的文档,每个文档可以有不同的结构。这样的设计使得文档数据库非常适合用于存储复杂和多变的数据。
解析:文档数据库:MongoDB, CouchDB, RavenDB等。
图数据库:Neo4J, ArangoDB, Amazon Neptune等。
键值数据库:Redis, Memcached, Amazon DynamoDB等。
列式数据库:Cassandra, HBase, Google BigTable等。

12. Hive的元数据信息存储在MySQL上,另一部分实际的数据文件存放在哪里?

A. HBase
B. HDFS
C. MySQL
D. SQL Server
答案:B
解析:Hive的元数据信息被存储在关系数据库(如MySQL)中,这部分信息包括表的定义,表的分区以及其他的相关信息。然而,这些表的实际数据被存储在Hadoop Distributed File System (HDFS)上。HDFS是一种分布式文件系统,能够存储和处理大量的数据。当运行Hive查询时,Hive将HQL语句转化为MapReduce任务,这些任务在Hadoop集群上运行,处理存储在HDFS上的数据。
HBase:虽然HBase是Hadoop生态系统中的一部分,并且它也存储在HDFS上,但是它主要被设计为一个大规模的分布式数据库,用于存储和查询大量的结构化数据。Hive和HBase可以进行集成,但在标准配置中,Hive的数据通常不直接存储在HBase中。
MySQL:虽然Hive的元数据信息(例如表定义、分区信息等)被存储在一个关系数据库(例如MySQL)中,但是Hive的实际数据并不存储在MySQL中。这是因为Hive主要被设计为处理大规模数据集,而这些数据集的规模通常超过了MySQL等关系数据库的处理能力。
SQL Server:SQL Server是一种关系数据库,主要用于存储结构化数据。虽然Hive的元数据可以存储在任何支持JDBC的关系数据库中,包括SQL Server,但是Hive的实际数据通常不存储在SQL Server或其他关系数据库中。和MySQL一样,这是因为Hive的设计目标是处理大规模数据集,而这些数据集的规模通常超过了SQL Server等关系数据库的处理能力。

13. SQL数据库有哪些?

A. SQLite
B. HBase
C. Redis
D. MySQL
E. SQL Server
答案:ADE
解析:SQLite,MySQL和SQL Server都是关系数据库,使用SQL(结构化查询语言)作为其主要的查询语言。SQL是为关系数据库设计的标准语言,用于存储、操作和检索数据。
HBase:HBase是一个分布式、版本化、非关系数据库,模型为列式存储,用于处理大规模数据,它是Apache Hadoop生态系统的一部分,不是SQL数据库。
Redis:Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。它通常被称为数据结构服务器,因为值(value)可以是 字符串(String), 哈希(Hash), 列表(list), 集合(sets) 和 有序集合(sorted sets)等类型,不是SQL数据库。

14. SQL的原则包含哪些?

A. CAP原则
B. 高一致性原则
C. ACID(酸)原则
D. BASE(碱)原则
答案:BC
解析:
高一致性原则:这是一种非常重要的数据库原则,强调所有的事务在执行之后必须使数据库处于一致状态。换句话说,对于数据库的修改必须遵守数据库的预定义规则以保持数据的一致性和准确性。例如,数据库中的某项数据可能需要符合某些特定条件(比如,年龄字段的值必须是非负数),在执行事务后,所有这些条件都应当得到满足,否则事务应当被回滚,数据库的一致性就得以保持。
ACID(酸)原则:如之前解释的那样,ACID原则是对于关系型数据库系统(如SQL数据库)最重要的特性,包括原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability)这四个方面。
对于CAP原则 和 BASE(碱)原则,它们主要适用于分布式数据库系统,而并非特指SQL。

CAP原则:CAP原则是一个理论模型,它描述了分布式系统在面临网络分区(Partition tolerance)时,只能保证一致性(Consistency)和可用性(Availability)两项中的一项。具体来说:
一致性(Consistency):在分布式系统中,一致性是指系统中的所有数据副本在同一时刻是否同样的。
可用性(Availability):系统提供的服务必须始终保持可用状态。
分区容错性(Partition tolerance):系统在网络分区出现问题的时候,仍能保证对系统访问的响应。
据此,CAP原则认为在出现网络分区后,系统无法同时满足一致性和可用性。
BASE(碱)原则:BASE原则是对CAP中一致性和可用性权衡的结果,尤其适用于大规模和分布式系统。BASE包括:
基本可用(Basically Available):系统始终提供服务,但在某些情况下可能不会提供一致的响应。
软状态(Soft state):由于网络延迟,系统可能会进入一种中间状态,即状态可能随时间自动更新和改变,即使没有输入。
最终一致(Eventually consistent):系统保证在没有新的更新操作之后,数据最终将达到一致状态。但在达到这个状态之前,系统可能会呈现出不一致的状态。
在设计分布式系统时,CAP原则和BASE原则是两个重要的理论参考,指导着我们如何在系统的一致性、可用性和分区容错性之间进行取舍。

15. 云数据库的特点有哪些?

A. 可以是SQL数据库
B. 可以是NoSQL数据库
C. 容量可大可小
D. 需要安装数据库系统
答案:ABC
解析:解析:

云数据库是一种在云环境中运行的数据库服务,有以下特点:

可以是SQL数据库:云数据库服务可以是基于SQL(结构化查询语言)的关系数据库服务。例如,Amazon RDS、Google Cloud SQL和Azure SQL数据库等都是基于SQL的云数据库服务。

可以是NoSQL数据库:云数据库也可以是非SQL的,也就是NoSQL数据库。这些数据库主要用于处理大规模的数据和提供快速的高并发数据读写。例如,Google Cloud Datastore、Amazon DynamoDB、MongoDB Atlas等都是NoSQL的云数据库服务。

容量可大可小:云数据库的一个主要优点是它的扩展性。用户可以根据自己的需求,轻松地调整数据库的容量大小。这种灵活性使得云数据库成为大量公司和开发者的首选。

需要安装数据库系统:这个选项是错误的。用户不需要在本地安装数据库系统。云数据库服务提供商会处理所有的数据库维护和管理任务,包括备份、复制和补丁管理等,用户只需要通过云服务提供商提供的API或者界面进行数据库操作。

16. NoSQL的CAP原则是什么?

A. AP:放弃C,选择A和P。
B. CAP三个都要
C. CA:放弃P,选择A和C。
D. CP:放弃A,选择C和P。
答案:AD
解析:CAP定理,也被称为布鲁尔定理,描述的是分布式系统不能同时满足一致性(Consistency)、可用性(Availability)和分区容错性(Partition tolerance)这三个基本需求,最多只能同时满足其中的两项。因此,根据这个原则,分布式系统的设计者需要根据系统的具体需求来做出取舍:
AP:一些系统可能会选择放弃一致性(C),而选择可用性(A)和分区容错性(P)。这样的系统通常可以在网络分区发生时继续提供服务,但是可能会返回过时的数据。
CP:一些系统可能会选择放弃可用性(A),而选择一致性(C)和分区容错性(P)。这样的系统在网络分区发生时可能会拒绝部分请求,以保证所有客户端看到的数据是一致的。
在现实中,网络分区是不可避免的,因此分区容错性(P)是必须要满足的。所以实际上,CAP定理常常被解释为在一致性(C)和可用性(A)之间做出选择。
为什么不能选择选项(CA)。
当我们谈论分布式系统时,我们通常意味着有多个节点(或服务器)在一起工作。这些节点可能分布在全球各地。因此,网络分区(Partition)是一种可能会经常遇到的现实情况。网络分区是指网络中的一部分节点(由于网络问题)无法与其他节点通信。
如果我们选择了选项C(CA),也就是说我们选择了一致性和可用性,但放弃了分区容忍性。这意味着当网络分区发生时,我们的系统可能无法正常工作。例如,假设我们有一个电商网站,有一部分服务器在美国,一部分在欧洲。如果网络分区发生,美国和欧洲的服务器可能无法互相通信。如果我们放弃了分区容忍性,那么我们的系统可能会发生错误,比如用户在美国购买了一个商品,但这个信息可能无法传达到欧洲的服务器,导致库存数据不一致。
因此,在实际的分布式系统设计中,我们通常不能放弃分区容忍性(P)。在网络分区发生时,我们需要系统能够继续运行。这就是为什么我们不能选择选项(CA)。

17. Hive数据模型包括哪些?

A. 分区
B. 分桶
C. 数据库
D. 数据表
答案:ABCD
解析:
Hive是一个建立在Hadoop之上的数据仓库工具,可以将结构化数据文件映射为一张数据库表,并提供SQL查询功能。Hive定义了如下的数据模型:
分区(Partition):在Hive中,表可以进一步按照一个或多个键进行分区。每个分区对应于底层文件系统中的一个文件夹,这可以使得Hive在进行查询的时候只扫描满足查询条件的那部分数据,从而大大提高查询效率。
分桶(Bucket):Hive支持将数据进一步划分为桶。这是通过对数据进行hash操作,并将hash结果落入到某个范围之内来实现的。分桶可以让用户在一个大的数据集上进行更精细的控制。
数据库(Database):在Hive中,数据库是表的命名空间。一个数据库可以包含一些表,视图以及它们的相关元数据。
数据表(Table):Hive的表和关系型数据库中的表相似,都是由一系列具有相同模式的行组成的。每一行代表一个记录,由一组字段组成,字段与字段之间是有序的。

18. Hive外部表有哪些特点?

A. 使用External关键字
B. 不使用External关键字
C. 表删除之后元数据不在了
D. 表删除之后实际数据还在
答案:ACD
解析:Hive的外部表(External Table)是Hive的一种特殊类型的表,具有以下特点:

使用External关键字:在创建外部表时,我们使用"CREATE EXTERNAL TABLE"的语句,其中的"EXTERNAL"关键字是必需的。

表删除之后实际数据还在:当我们删除一个外部表时,只有表的元数据(即Hive元数据存储中的信息)会被删除,而表所关联的实际数据文件(在HDFS或其他文件系统中)不会被删除。这与Hive的管理表(Managed Table)不同,删除管理表会同时删除元数据和实际数据。这也是外部表的一个重要特性,因为它允许我们在不影响底层数据的情况下更改表的结构。

19. NoSQL的三大基石是什么?

A. CAP原则
B. 最终一致性原则
C. ACID(酸)原则
D. BASE(碱)原则
答案:ABD
解析:
CAP原则是指在分布式系统中,Consistency(一致性)、Availability(可用性)和Partition tolerance(分区容错性)三个属性。根据CAP原理,这三个属性无法同时达到最优,只能满足其中的两项。

最终一致性原则是指系统最终会达到一致的状态。在短暂的时间内,可能会有一些不一致的情况发生,但最终,系统会自动地修复这些不一致,达到一致的状态。

BASE原则是为了克服CAP原则的限制而引入的,其中BASE是指基本可用(Basically Available)、软状态(Soft state)和最终一致性(Eventually consistent)。在一个分布式系统中,应该更注重可用性,因此在某些情况下,系统会放弃强一致性要求,转而使用BASE原则来达成最终一致性。

ACID(Atomicity 原子性, Consistency 一致性, Isolation 隔离性, Durability 持久性)原则通常用于传统的关系型数据库系统,而非NoSQL数据库,因此这不是NoSQL的基石。

20. NoSQL数据库有哪些?

A. Redis
B. MongoDB
C. Neo4J
D. MySQL
E. HBase
答案:ABCE
解析:
Redis是一种键值存储系统,通常被用作缓存和消息代理。它支持多种类型的数据结构,包括字符串、哈希、列表、集合、有序集合等。因此,它是一种NoSQL数据库。

MongoDB是一种面向文档的数据库,用于处理大规模数据集。其灵活的数据模型和水平可扩展性使得MongoDB在处理大量数据和高流量应用中表现出色,因此它也是一种NoSQL数据库。

Neo4J是一种图形数据库,非常适合处理高度连接的数据。它允许用户直接和快速地处理连接数据,而不是通过SQL查询进行间接访问。因此,Neo4J也是一种NoSQL数据库。

MySQL是一种关系型数据库,使用SQL(结构化查询语言)作为其查询语言。关系型数据库如MySQL侧重于数据的一致性和结构,而不是NoSQL数据库所强调的可扩展性和灵活性。因此,MySQL不是NoSQL数据库。

HBase是一个开源的、非关系的、分布式数据库,它是Google的BigTable的Java实现版本。它旨在为大规模数据提供随机、实时读/写访问。因此,HBase是一种NoSQL数据库。

1. HBase的常用命令,创建表的命令关键词是:

A. create
B. get
C. put
D. delete
答案:A
解析:在HBase中,用于创建表的命令关键词是"create"。其基本的使用形式如下:
create ‘

’, ‘’
这里的
代表要创建的表的名称,代表要创建的列族的名称。表和列族都是HBase数据模型的重要部分。在这个命令执行后,HBase会创建一个新的表,并在其中定义一个列族。
其他选项"B. get", “C. put” 和 “D. delete"分别表示获取数据,插入数据和删除数据的操作。所以,正确答案是"A. create”。

2. 不属于Hadoop生态是:

A. Hive
B. Spark
C. Flink
D. Pig
E. HBase
答案:C
解析:Apache Flink并不属于Hadoop生态系统。虽然Flink可以与Hadoop集成,并且可以处理Hadoop的HDFS中的数据,但是它是一个独立的开源流处理框架,用于进行事件驱动的流处理和实时分析。

其他选项,包括Hive, Spark, Pig和HBase,都是Hadoop生态系统的一部分。Hive提供了一个SQL接口,用于查询存储在Hadoop集群上的数据。Spark是一个快速的、通用的集群计算系统,可以用于大规模数据处理。Pig是一个用于分析大数据的平台,它的语言Pig Latin是为并行计算设计的。HBase是一个分布式的、可扩展的大数据存储,它位于Hadoop文件系统(HDFS)上。

因此,答案是"C. Flink"。

3. 每个Region由多个什么构成?它对应一个列族,并由1个MemStore和0个或多个StoreFile组成。

A. Store
B. 列族
C. StoreFile
D. 列
答案:A
解析:在HBase中,每个Region是由多个Store构成的。Store是Region的存储单位,每个Store对应一个列族,并由1个MemStore和0个或多个StoreFile组成。

MemStore是一个写缓存,当数据写入HBase时,它首先会被写入MemStore。当MemStore满了以后,数据会被刷新到磁盘,生成一个StoreFile。

StoreFile是存储在HDFS上的一个文件,它是HBase的实际存储文件,用于存放已经从MemStore刷新到磁盘的数据。

所以,正确答案是"A. Store"。

4. 列式非关系型数据库是哪个?

A. HBase
B. Redis
C. MySQL
D. SQL Server
答案:A
解析:

5. Yarn的哪个节点监控NodeManager,并处理客户端请求?

A. NameNode
B. ResourceManager
C. ApplicationMaste
D. NodeManager
答案:B
解析:在Yarn(Yet Another Resource Negotiator)架构中,ResourceManager是一个全局的资源调度器,它的主要职责是分配计算资源给运行在NodeManager上的应用。同时,ResourceManager也负责监控NodeManager节点的状态,并处理来自客户端的请求。
NameNode: 这是Hadoop HDFS(Hadoop Distributed File System)的组件,主要负责元数据的管理。
ResourceManager: 正确答案。它是YARN的中心节点,主要负责整个集群资源的管理和分配,以及监控NodeManager。
ApplicationMaster: 是YARN中的一个组件,每个应用程序都会有一个ApplicationMaster实例,它负责向ResourceManager请求资源,并和NodeManager协商任务的执行。
NodeManager: 这是YARN的工作节点,负责每个单一计算节点的资源管理和使用,以及运行容器中的任务。

6. 在数据写入到MemStore之前,先把数据更新信息写入到哪里?

A. fsImage
B. Logs
C. Log
D. Hlog
答案:D
解析:在HBase中,数据在写入MemStore之前,会首先把数据的更新信息写入到WAL(Write Ahead Log),在HBase中,这个日志通常被称为HLog。

WAL用于在系统发生故障时恢复数据。当一个写请求到来时,HBase会先把这个请求写入到HLog,然后再写入MemStore。这样,即使在数据写入MemStore后,系统发生故障而数据未能写入硬盘的StoreFile,也能通过重播HLog中的操作来恢复数据。

因此,正确答案是 “D. Hlog”。

7. 以下软件哪个是大数据计算模式之批处理?

A. Hadoop
B. GraphX
C. HBase
D. Flume
答案:A
解析:在Yarn(Yet Another Resource Negotiator)架构中,ResourceManager是一个全局的资源调度器,它的主要职责是分配计算资源给运行在NodeManager上的应用。同时,ResourceManager也负责监控NodeManager节点的状态,并处理来自客户端的请求。
NameNode: 这是Hadoop HDFS(Hadoop Distributed File System)的组件,主要负责元数据的管理。
ResourceManager: 正确答案。它是YARN的中心节点,主要负责整个集群资源的管理和分配,以及监控NodeManager。
ApplicationMaster: 是YARN中的一个组件,每个应用程序都会有一个ApplicationMaster实例,它负责向ResourceManager请求资源,并和NodeManager协商任务的执行。
NodeManager: 这是YARN的工作节点,负责每个单一计算节点的资源管理和使用,以及运行容器中的任务。

8. HBase是Hadoop的数据库,是利用什么作为其协调工具的?

A. Zookeeper
B. HMaster
C. HDFS
D. MapReduce
答案:A
解析:Zookeeper:正确答案。Zookeeper是一个分布式的、开放源码的分布式应用程序协调服务,它是HBase系统中负责协调和维护主从节点状态信息的组件。Zookeeper为HBase提供了故障恢复、命名服务、状态同步等功能,这样可以确保数据的一致性,以及实现负载均衡和故障转移。

HMaster:HMaster是HBase中的一个重要组件,但它主要负责表的增删改查和region的分配,并不能作为HBase的协调工具。

HDFS:HDFS是Hadoop分布式文件系统,它是HBase存储数据的底层文件系统,而不是协调工具。

MapReduce:MapReduce是一种编程模型,用于处理和生成大数据集。在Hadoop中,它是数据处理和计算的主要模型,但它不是HBase的协调工具。

9. MapReduce采用分而治之的思想,哪个函数将输入的文件块映射为值为1的键值对?

A. Combiner
B. Mapper
C. Patitioner
D. Reducer
答案:B
解析:MapReduce的基本操作包括Map和Reduce两个步骤。Mapper函数(也就是"映射"函数)负责处理输入数据,并将它们转换为一系列的键值对。

在一些基本的MapReduce作业中,例如计数作业,Mapper函数经常将输入的数据映射为值为1的键值对。这样的设计允许Reducer函数能够通过对所有值为1的键进行求和来得到每个键的总计数。

因此,正确答案是 “Mapper”。

10. 准确地说WordCount程序的输入输出数据文件存储在哪里?

A. HDFS
B. 实验桌面
C. 你的电脑上
D. ECS
答案:A
解析:WordCount是Hadoop的一个基础程序,用于统计输入的文本文件中单词出现的频率。Hadoop的数据通常存储在Hadoop Distributed File System(HDFS)上,这是一个分布式文件系统,能提供高吞吐量的数据访问,适合运行在通用硬件上的大规模数据集。所以,WordCount程序的输入输出数据文件通常会存储在HDFS上。

11. HBase创建的表通常放在HDFS的哪个路径下?

A. data
B. hbase/data
C. 根目录
D. hbase
答案:B
解析:在HBase中,创建的表通常存放在HDFS的"/hbase/data"路径下。这是HBase的默认配置。HBase使用HDFS作为其底层存储,表的所有数据都存储在HDFS上,以支持HBase的大规模、分布式特性。

因此,正确答案是 “hbase/data”。

12. 分布式文件系统HDFS,哪个节点负责整个分布式文件系统的元数据(MetaData)管理?

A. NameNode
B. ResourceManager
C. DataNode
D. SecondaryNamenode
答案:A
解析:在HDFS(Hadoop Distributed File System)中,NameNode节点负责整个分布式文件系统的元数据管理。这包括文件系统的名称空间、文件到块的映射,以及文件系统的相关属性等。在HDFS中,DataNode负责存储数据,ResourceManager负责资源调度,SecondaryNamenode则是对主NameNode的辅助,帮助合并编辑日志和文件系统镜像,减轻主NameNode的负担,但并不起到备份的作用。

13. 第二名称节点SecondaryNamenode合并目录文件FsImage和写操作日志EditLog,生成新的什么元数据文件?

A. Edits
B. HA
C. FsImage
D. EditLog
答案:C
解析:SecondaryNamenode负责周期性地合并HDFS的元数据文件FsImage(文件系统镜像)和EditLog(编辑日志),生成新的FsImage。这个过程通常被称为检查点(Checkpoint)。

在Hadoop中,FsImage保存了HDFS的元数据,包括文件系统的命名空间树(Namespace Tree)和文件和目录的属性等信息。EditLog则记录了对文件系统所做的所有更改。SecondaryNamenode通过合并FsImage和EditLog,将文件系统的状态更新到最新,并生成新的FsImage,从而减轻Namenode的压力。

因此,正确答案是 “FsImage”。

14. HDFS读数据是用FileSystem的open()方法创建什么流FSDataInputStream对象?

A. 数据流
B. 输出流
C. 输入流
D. 缓冲流
答案:C
解析:在HDFS中,读取数据使用的是FileSystem的open()方法创建的FSDataInputStream对象。FSDataInputStream是一个输入流对象,用于从HDFS中读取数据。所以,正确答案是输入流。

15. 分布式文件系统HDFS,哪个节点是文件存储节点的冷备份,辅助、分担文件目录管理节点工作量?

A. NameNode
B. ResourceManager
C. DataNode
D. SecondaryNamenode
答案:D
解析:在HDFS(Hadoop Distributed File System)中,SecondaryNamenode节点起到辅助NameNode节点的作用,帮助合并编辑日志和文件系统的镜像,减轻主NameNode的负担。但需要注意的是,SecondaryNamenode并不是NameNode的备份,如果NameNode故障,SecondaryNamenode并不能立即替代它,因此它也并不是"冷备份"。但在选择题的选项中,SecondaryNamenode是最符合题目描述的。

16. HDFS集群的文件目录管理节点是哪个?

A. NameNode
B. ResourceManager
C. DataNode
D. SecondaryNamenode
答案:A
解析:在HDFS(Hadoop Distributed File System)中,NameNode节点是文件目录管理节点。它负责维护文件系统的名称空间和客户端对文件的访问。它保存了所有文件的元数据,包括文件的路径,大小,块的位置,副本的数量等。这使得NameNode成为了集群的"大脑",它决定了数据应该如何分布在集群中,并负责集群中所有的文件读写操作。
ResourceManager:在Hadoop的YARN(Yet Another Resource Negotiator)框架中,ResourceManager是全局资源(例如,内存、CPU等)的管理者。它负责分配计算资源给各个节点。它的主要任务是调度用户应用程序运行的任务。
DataNode:在HDFS中,DataNode是存储数据的节点。它负责存储和检索数据块,当NameNode请求读取或写入数据时,DataNode负责处理这些请求。但是,它并不负责管理文件目录,它只关心存储和处理数据。
SecondaryNamenode:它是辅助NameNode的节点,用于帮助合并编辑日志和文件系统的镜像,以减轻主NameNode的负担。虽然它的名字含有"Namenode",但它并不能替代主NameNode,也不能进行文件目录管理。如果主NameNode宕机,SecondaryNamenode并不能接管其工作。

17. Hadoop 2.X相比1.X增加了一个什么?让资源管理与任务管理分离开来。

A. MapReduce
B. Hbase
C. HDFS
D. Yarn
答案:D
解析:在Hadoop 2.x中,增加了YARN(Yet Another Resource Negotiator)这个组件。在Hadoop 1.x中,资源管理和任务管理是由同一个组件(MapReduce)完成的。但在2.x版本中,通过引入YARN,资源管理和任务管理被分离开来。其中,YARN负责资源管理,而MapReduce变成了一个运行在YARN之上的应用程序,主要负责任务的处理和计算。这使得Hadoop能够更好地扩展,也使得其他类型的应用程序能运行在Hadoop集群上。

18. HBase是Hadoop的数据库,是利用Hadoop的什么作为其文件存储系统?

A. Zookeeper
B. HMaster
C. HDFS
D. MapReduce
答案:C
解析:HBase是一个分布式、可扩展、大数据存储系统,它是基于Google的BigTable设计的,并且是Apache Hadoop项目的一部分。HBase使用Hadoop的HDFS(Hadoop Distributed File System)作为其文件存储系统,存储数据和元数据。这使得HBase能够处理Hadoop处理的PB级别的大数据,并提供实时的读写能力。它使用Hadoop的这使得它非常适合HBase这种需要处理大量数据的数据库系统。
Zookeeper主要负责协调和管理Hadoop集群中的各种服务和节点。
HMaster是HBase的主服务器,负责协调和管理RegionServer。
MapReduce是Hadoop的一种编程模型,用于处理和生成大数据集,它不是文件存储系统。

19. HBase 中通过行键、列族、列确定的一个存储单元称为 Cell,每个 Cell 都保存着同一份数据的多个版本,版本号也叫:

A. 坐标
B. 数据表
C. 时间戳
D. 单元格
答案:C
解析:在HBase中,每个Cell中的不同版本通过时间戳进行区分。当我们向Cell中写入数据时,HBase会自动附加当前的时间戳。当我们查询数据时,可以指定特定的时间戳,以便获取Cell在该时间点的数据版本。时间戳在HBase中,除了作为版本号外,还可以被用来支持数据的历史版本查询和数据的版本控制。

20. Hadoop 2.X相比1.X,HDFS HA提供了高可用性的名称结点的热备份,解决什么问题?HDFS联邦的多个命名空间也提高了集群的可扩展性、系统整体性能和隔离性。

A. 单点故障
B. 一致性
C. 高可用性
D. 容错性
答案:A
解析:Hadoop 1.X版本中的主要问题是NameNode的单点故障问题。在Hadoop 1.X中,整个HDFS的元数据信息都是由一个单一的NameNode节点来管理的,这使得NameNode成为了一个单点故障。一旦NameNode发生故障,整个Hadoop集群将无法提供服务。而Hadoop 2.X版本引入的HDFS HA(High Availability)功能,通过提供NameNode的热备份来解决这个单点故障问题,使得整个系统的可用性大大提高。同时,HDFS联邦(Federation)引入多个命名空间,可以进一步提高集群的可扩展性、系统整体性能和隔离性。

21. HBase是Hadoop的数据库,是利用Hadoop的什么来处理Hbase中的海量数据的?

A. Zookeeper
B. HMaster
C. HDFS
D. MapReduce
答案:D
解析:HBase是Hadoop的NoSQL数据库,它利用Hadoop的MapReduce来处理HBase中的海量数据。MapReduce是一种用于大数据集的并行处理技术。HBase与MapReduce集成,可以将HBase作为MapReduce任务的输入源和输出目标,从而进行大规模的数据处理和分析。
Zookeeper在HBase中主要是用来协调和管理服务器,而不是处理数据。
HMaster是HBase的主服务器,负责协调和管理RegionServer,而非处理数据。
HDFS是Hadoop的分布式文件系统,它是HBase数据的存储系统,但处理数据主要是通过MapReduce实现。

22. HBase的体系结构也是一个主从式的结构,哪个是主节点?负责为从节点HRegionServer分配region,并管理HRegionServer运行。

A. Zookeeper
B. HMaster
C. HDFS
D. MapReduce
答案:B
解析:在HBase的体系结构中,HMaster是主节点。HMaster负责管理和协调从节点(HRegionServer)。其主要职责包括为HRegionServer分配region,负责HBase集群的加载均衡,处理服务器故障,以及执行管理操作,如创建、修改和删除表。
Zookeeper在HBase中主要用来做系统的协调工作,如保持HBase的主-从架构状态,以及在HMaster故障时执行故障转移。
HDFS是Hadoop的分布式文件系统,是HBase的底层数据存储,但不负责分配和管理region。
MapReduce是Hadoop的数据处理模型,它用于执行大数据计算任务,但在HBase的架构中并不负责分配和管理region。

23. 以下软件哪个是大数据计算模式之图计算?

A. Hadoop
B. GraphX
C. HBase
D. Flume
答案:B
解析:GraphX是Apache Spark的一个API,用于图(网络)计算,所以它是大数据计算模式之图计算的一种实现。
Hadoop是一个分布式处理大规模数据的框架,包括HDFS和MapReduce等组件,但它本身并不是图计算框架。
HBase是一个分布式、面向列的数据库,适合于大量数据的存储和随机访问,但并非图计算模式。
Flume是一个分布式的、可靠的、可用的用于收集、汇总和移动大量的日志数据的系统,它并不支持图计算模式。

24. 以下软件哪个是大数据计算模式之查询分析?

A. Hadoop
B. GraphX
C. HBase
D. Flume
答案:C
解析:HBase是Hadoop生态系统中的一个重要组件,它是一个分布式的、可扩展的、大规模的非关系型数据库,可以用于存储大量的数据,并且提供了灵活的数据查询分析功能。
Hadoop是一个用于分布式处理和存储大规模数据的框架,虽然它支持数据分析,但它本身并不特定于查询分析。
GraphX是Apache Spark的一个API,用于图(网络)计算,并不直接提供查询分析功能。
Flume是一个用于收集、汇总和移动大量的日志数据的系统,它主要用于数据收集和数据流传输,并没有提供查询分析功能。

25. MapReduce采用分而治之的思想,哪个函数对所有键值对进行合并、归约?

A. Combiner
B. Mapper
C. Patitioner
D. Reducer
答案:D
解析:在MapReduce模型中,Reducer函数负责对所有的键值对进行合并和归约。更具体地说,它接收来自Mapper的输出(键和值的集合),然后将相同键的所有值合并在一起。Reducer函数的输出是一个键和归约后的值集合。
Combiner是一个可选的组件,它可以作为局部的Reduce过程在Map阶段后进行预处理,以减少网络传输。
Mapper函数负责将输入的数据集转化为一系列的键值对。
Partitioner负责决定Reduce任务的数量以及每个Reduce任务处理的键值对范围。

26. 以下软件哪个是大数据计算模式之流计算?

A. Hadoop
B. GraphX
C. HBase
D. Flume
答案:D
解析:Flume是一个分布式、可靠的、可用的用于收集、汇总和移动大量的日志数据的系统,主要用于实时的流数据处理。但要注意,Flume主要负责数据流的采集和传输,而真正的流式计算任务通常由其他专门的框架(如Apache Storm、Apache Flink、Apache Samza等)来执行。
Hadoop是一个用于处理和存储大规模数据的框架,但它主要是批量处理,而非流计算模式。
GraphX是Apache Spark的一个API,用于图(网络)计算,它并不是流计算模式。
HBase是一个分布式的、面向列的数据库,用于大规模的数据存储和随机访问,也并非流计算模式。

27. HDFS写数据是用FileSystem的create()方法创建什么流FSDataOutputStream对象?

A. 数据流
B. 输出流
C. 输入流
D. 缓冲流
答案:B
解析:在HDFS中,使用FileSystem的create()方法可以创建FSDataOutputStream对象,这个对象是一个输出流,用于向HDFS中写入数据。在Java中,输出流用于向数据源(如文件、网络连接等)写入数据。因此,答案是输出流。
数据流是一种通用的术语,可以包括输入流和输出流,但在这里我们需要的是一个更具体的答案。
输入流用于从数据源读取数据,在这个情况下,我们正在讨论的是写入数据,所以输入流不适用。
缓冲流在Java中通常用于提高输入/输出性能,但在这个情况下,我们正在讨论的是向HDFS写入数据,所以缓冲流不是最好的答案。

28. 访问Hadoop网页,要放通ECS安全组的哪些端口?

A. 50070
B. 8088
C. 22
D. 61010
答案:ABC
解析:在使用Hadoop时,通常需要访问两个重要的web界面,分别是HDFS的管理界面和YARN的管理界面。这两个界面的默认端口分别是50070和8088。22是SSH服务的默认端口,如果你需要通过SSH进行远程登录到ECS(Elastic Compute Service,即弹性计算服务)来进行Hadoop的管理和操作,那么你确实需要在安全组中放通这个端口。所以,为了访问Hadoop的Web界面和进行远程管理,你需要放通50070,8088和22这三个端口

29. HBase 三级寻址,要想确定HRegion存放位置,需要获取哪两个表的位置?

A. Table
B. META
C. ROOT
D. Region
答案:BC
解析:在HBase的三级寻址机制中,客户端想要找到某个Region的位置,需要进行两次查找,即在 ".META."表和 "hbase:namespace"表中进行查找。
早期的HBase版本使用了三层结构:ROOT, META, 和 Region,然而在HBase 0.96+版本之后,ROOT层级被移除,使得寻址过程变成了两步。首先,客户端会查询"hbase:namespace"表以获取 ".META.“表的位置,然后再查询”.META.“表以获取具体的Region的位置。
因此,要确定HRegion的存放位置,需要获取”.META."表的位置。至于Table和Region,他们是HBase数据模型的组成部分,而非寻址过程的一部分。在HBase早期版本中,我们需要通过访问ROOT表来获取META表的位置,然后再通过META表来确定HRegion的位置。但请注意,在HBase的新版本(0.96及以上)中,ROOT表已经被移除,这样就直接通过META表来获取HRegion的位置。不过在这个问题的上下文中,如果我们考虑HBase的早期版本,答案应该是B和C,即META表和ROOT表。

30. Hadoop的配置文件core-site.xml主要配置什么?

A. Hadoop的临时路径
B. HDFS的临时路径
C. 副本数
D. HDFS的URL
答案:AD
解析:解析:core-site.xml文件是Hadoop配置中的一部分,它主要用于配置Hadoop的核心设置。其中包括:
Hadoop的临时路径:这是Hadoop用于存储临时数据的文件系统路径。对应的配置项是hadoop.tmp.dir。
HDFS的URL:这是指定Hadoop文件系统的URI,如HDFS的默认文件系统路径。对应的配置项是fs.defaultFS。
【HDFS的临时路径】是不正确的,因为HDFS的临时路径并不是通过core-site.xml配置的。选项C也是不正确的,HDFS的副本数是在hdfs-site.xml中配置的。

31. 大数据的关键技术包含哪些?

A. 存储与管理
B. 处理与分析
C. 隐私与安全
D. 数据挖掘
E. 数据的采集
答案:ABCE
解析:存储与管理:因为大数据的量非常庞大,所以需要有效的存储和管理方法。这通常涉及分布式存储系统,例如Hadoop的HDFS、Google的Bigtable等。
处理与分析:除了存储数据,我们还需要能够处理和分析这些数据。对于这个问题,出现了一些如Hadoop的MapReduce、Apache Spark等大数据处理框架。
隐私与安全:随着大数据的使用,数据的隐私和安全问题也越来越引起人们的关注。因此,如何在收集和使用大数据的同时保护用户的隐私和数据的安全,也是大数据技术的一个重要组成部分。
数据挖掘:数据挖掘是从大数据中提取有用信息和模式的过程,它包括了如机器学习、统计分析等一系列技术。
数据的采集:大数据的来源多种多样,如何有效地从各种来源采集数据,也是大数据技术的关键之一,涉及到的技术包括网络爬虫、数据接口(API)等。

32. 启动Hadoop后能够看到哪些节点?

A. SecondaryNamenode
B. ResourceManager
C. NodeManager
D. NameNode
E. DataNode
答案:ABCDE
解析:SecondaryNamenode:Hadoop中的一个守护进程,其主要任务是协助主节点(NameNode)。它并非备份节点,而是定期合并EditLog,减轻NameNode的压力。
ResourceManager:这是YARN(Yet Another Resource Negotiator)的一个组成部分,负责整个集群的资源管理和调度。
NodeManager:这也是YARN的一个组成部分,它运行在所有的数据节点上,负责单个节点上的资源管理,同时也负责管理和监控应用程序的运行情况。
NameNode:在Hadoop的分布式文件系统(HDFS)中,NameNode是主节点,负责管理文件系统的命名空间以及客户端对文件的访问。
DataNode:在Hadoop的分布式文件系统(HDFS)中,DataNode是工作节点,负责存储和检索数据块,同时也报告给NameNode关于它们所存储的数据块的信息。

33. 数据采集对数据源采集到的数据进行哪些操作步骤?

A. 集成
B. 加载到数据库里
C. 清洗
D. 转换
答案:ABCD
解析:集成:数据集成是将从多个数据源采集到的数据组合到一起的过程。这是必要的步骤,因为数据通常分布在不同的地方,而我们需要把它们放在一起进行分析。
加载到数据库里:数据加载是将采集到的数据存储到数据库或数据仓库中的过程。这样,数据可以在需要的时候进行访问和处理。
清洗:数据清洗是在数据被加载到数据库或数据仓库之前或之后进行的过程,以消除重复数据、纠正错误和解决不一致性。
转换:数据转换是将数据从一种格式或结构转换为另一种格式或结构的过程。这是一个重要的步骤,因为不同的应用可能需要不同的数据格式。

34. 启动HBase后多出来哪些节点?

A. Zookeeper
B. HQuorumPeer
C. HRegionServer
D. HMaster
答案:BCD
解析:启动HBase后,通常可以看到以下节点:
HQuorumPeer:这是Zookeeper的一部分,Zookeeper是HBase中用于提供分布式协调服务的组件。HQuorumPeer是Zookeeper服务器的实例,参与了选举Master和跟踪集群状态等。
HRegionServer:在HBase中,HRegionServer是工作节点,它负责对数据进行读写操作。一个HBase集群可以包含多个HRegionServer。
HMaster:在HBase中,HMaster是主节点,它负责协调和管理HRegionServer,包括进行负载均衡和元数据操作等。
Zookeeper并非HBase启动后“多出来”的节点,而是HBase依赖的一个重要组件,通常在HBase启动前就需要启动。
所以,启动HBase后,“多出来”的节点通常是HQuorumPeer(如果Zookeeper没有在HBase启动前启动)、HRegionServer和HMaster。

35. MapReduce计算模型包含哪些过程?

A. 合并
B. 分区
C. 化简
D. 拆分
E. 映射
答案:ABCDE
解析:MapReduce是一种编程模型,用于处理和生成大数据集。它的主要步骤包括:
拆分(Split):首先,输入数据会被拆分成多个独立的块,这些块可以并行地进行处理。
映射(Map):然后,Map函数会接受输入数据的一个块,并产生一些中间键值对。
分区(Partition):中间键值对被分配到各个Reduce任务。通常,这是通过一个哈希函数实现的,可以保证所有的相同键值对都会被送到同一个Reduce任务。
化简(Reduce):Reduce函数接受同一个中间键的所有值,并将它们合并成一个更小的值集。
合并(Combine):在某些实现中,MapReduce还可以包括一个可选的“Combine”阶段,这是在Map阶段和Reduce阶段之间进行的。Combine阶段可以处理Map阶段的输出,将具有相同中间键的数据在本地进行一次合并,以减少网络传输的数据量。
因此,MapReduce计算模型可以包括拆分、映射、分区、化简和合并这几个步骤。

36. 关于大数据的特点以下说法哪些是正确的?

A. Value是指数据都是有价值的
B. Velocity是指数据产生、数据处理的速度快
C. On-Line是指数据都是在线的,才能够联机、处理
D. Volume是指各种各样的数据种类很多
E. Variety是指数据量很大
答案:BC
解析:大数据通常被描述为具有四个或五个“V”的特性,这些特性包括:
Value(价值):虽然通过对大数据的分析,可以得出有价值的信息和洞见,但并非所有的数据都具有价值,需要通过分析和处理才能发现其价值。因此,A选项的表述并不准确。
Velocity(速度):大数据的速度是指数据的生成和处理速度。在现代社会,数据正在以极快的速度产生,同时我们也需要在较短的时间内处理这些数据,这是正确的。
On-Line:虽然不是大数据的标准“V”特性,但在线数据处理(On-Line Data Processing)是大数据处理的重要组成部分,指的是数据可以实时或近实时地被处理和分析。

D选项中的Volume(体积)应该是指数据的数量或大小,而非数据的种类。Volume指的是我们现在处理的数据量非常庞大,这是大数据的一个关键特性。

E选项中的Variety(多样性)应该是指数据类型的多样性,包括结构化数据,半结构化数据和非结构化数据等,而非数据量的大小。Variety指的是我们现在处理的数据类型非常多样,不再仅仅是传统的文本数据,还可能包括图像、音频、视频等多种类型的数据。
所以,正确的答案是B和C。

37. HBase配置文件hbase-site.xml主要配置什么?

A. 是否为分布式集群
B. JAVA的HOME路径
C. 数据库
D. HBase存储在HDFS上的URL
答案:AD
解析:HBase的配置文件hbase-site.xml用于设置HBase的配置参数,包括但不限于:

是否为分布式集群:可以设置HBase运行模式,例如,它可以是单节点模式(standalone mode)或者分布式模式(distributed mode)。
HBase存储在HDFS上的URL:例如,可以设置HBase使用的HDFS的文件系统URI(如 “hbase.rootdir” 参数)。

【JAVA的HOME路径】选项中,JAVA的HOME路径通常在环境变量中设置,而不是在HBase的配置文件中。

【数据库】选项中,数据库通常不是在HBase配置文件hbase-site.xml中设置的,HBase本身就是一个数据库,它的数据存储在HDFS上。

因此,正确答案是A和D。

38. Hadoop的配置文件hdfs-site.xml主要配置什么?

A. Hadoop的临时路径
B. HDFS的临时路径
C. 副本数
D. HDFS的URL
答案:BC
解析:hdfs-site.xml是Hadoop Distributed File System (HDFS)的主要配置文件,包含了HDFS的各种配置信息。在这个文件中,我们可以配置副本数 ©,这决定了HDFS中每个数据块的副本数量。同样,这个文件也可以配置HDFS的临时路径(B),指定了HDFS在运行过程中的临时存储位置。所以选项B和C是正确的。对于A和D选项,Hadoop的临时路径通常在core-site.xml文件中设置,而HDFS的URL不是在hdfs-site.xml中设置的,因此它们不正确。

39. 关于本课程的学习,正确的说法有哪些?

A. 课外作业是对课堂内容的巩固和延申,还有小组协作能力的考核。
B. 期末考试只占总成绩的40%,还有课堂考核、课外作业和单元测试一起构成课程总成绩。
C. 单元测试和期末考试都是闭卷,内容包括理论和实验。
D. 课堂考核主要考核实验完成情况,不考核口头讲述能力。
答案:ABC
解析:

40. 谷歌的三驾马车包括:

A. Google BigTable
B. Google File System
C. HDFS
D. Google MapReduce
答案:ABD
解析:谷歌的“三驾马车”是指谷歌开发的三种重要的大数据处理技术:
Google BigTable:这是谷歌开发的一种分布式存储系统,用于处理结构化数据。
Google File System (GFS):这是谷歌开发的一个分布式文件系统,用于在大规模数据中心环境中存储大量的数据。
Google MapReduce:这是谷歌开发的一个编程模型和相关实现,用于处理和生成大数据集。
C选项中的HDFS(Hadoop Distributed File System)并不是谷歌开发的,而是Apache开源社区为Hadoop项目开发的一个分布式文件系统,它是受到Google File System的启发而开发的。

猜你喜欢

转载自blog.csdn.net/weixin_44893902/article/details/131347110