《大数据开发技术(上)》课程期末复习资料
《大数据开发技术(上)》课程讲稿章节目录:
第1章 大数据概述
(1)了解大数据时代背景
(2)了解大数据的影响与应用
(3)了解大数据的关键技术
(4)了解大数据产业及其相关技术
第2章 大数据处理架构Hadoop
(1)了解Hadoop概述
(2)掌握Hadoop项目结构
(3)掌握Hadoop的安装与使用
(4)掌握Hadoop集群的部署与使用
第3章 分布式文件系统HDFS
(1)了解分布式文件系统简介
(2)了解HDFS简介
(3)掌握HDFS相关概念
(4)掌握HDFS体系结构
(5)掌握HDFS存储原理
(6)掌握HDFS数据读写过程
(7)掌握HDFS编程实践
第4章 分布式数据库HBase
(1)了解HBase概述
(2)掌握HBase数据模型(上)
(3)掌握HBase数据模型(下)
(4)掌握HBase的实现原理
(5)掌握HBase运行机制
(6)掌握HBase应用方案
(7)掌握HBase编程实践
第5章 NoSQL数据库
(1)了解NoSQL概述
(2)掌握NoSQL与其他数据库
(3)掌握NoSQL的四大类型
(4)掌握NoSQL的三大基石
(5)掌握文档数据库MongoDB
第6章 云数据库
(1)了解云数据库概述(上)
(2)了解云数据库概述(下)
(3)掌握云数据库系统架构(上)
(4)掌握云数据库系统架构(下)
(5)了解AWS和云数据库
(6)了解微软云数据库SQL Azure
(7)掌握云数据库实践
第7章 MapReduce
(1)了解MapReduce概述
(2)掌握MapReduce工作流程
(3)掌握实例分析:WordCount
(4)了解MapReduce的具体应用
(5)掌握MapReduce编程实践
第8章 流计算
(1)了解流计算概述
(2)掌握流计算处理流程
(3)了解流计算应用
(4)掌握流计算开源框架Storm(1)
(5)掌握流计算开源框架Storm(2)
(6)掌握流计算开源框架Storm(3)
第9章 图计算
(1)了解图计算简介
(2)掌握Pregel图计算模型
(3)掌握Pregel的C++ API
(4)掌握Pregel的体系结构
(5)掌握Pregel的应用实例
(6)掌握Pregel和MapReduce实现PageRank算法的对比
第10章 数据可视化
(1)了解可视化概述
(2)了解可视化工具
(3)了解可视化典型案例
(4)了解可视化工具实践(1)
(5)了解可视化工具实践(2)
(6)了解可视化工具实践(3)
一、客观部分:(单项选择、多项选择、不定项选择、判断)
(一)、判断部分
1、数据产生方式的运营式系统阶段的数据产生方式是主动的。
答案: 错
★难度:中
参见章节:第1章 第1节
考核知识点:大数据时代背景
试题解析:应为被动的
2、感知式系统的广泛使用
人类社会数据量第三次大的飞跃最终导致了大数据的产生。
答案: 对
★难度:中
参见章节:第1章 第1节
考核知识点:大数据时代背景
试题解析:
3、数据产生方式的用户原创内容阶段的数据产生方式是主动的。
答案: 对
★难度:易
参见章节:第1章 第1节
考核知识点:大数据时代背景
试题解析:
4、数据仓库、专家系统产生于大数据发展的成熟期
答案: 错
★难度:难
参见章节:第1章 第1节
考核知识点:大数据时代背景
试题解析:第一阶段:萌芽期
5、Hadoop平台在大数据发展的成熟期时开始大行其道
答案: 对
★难度:中
参见章节:第1章 第1节
考核知识点:大数据时代背景
试题解析:
6、大数据虽然商业价值高,但是其价值密度低。
答案: 对
★难度:易
参见章节:第1章 第1节
考核知识点:大数据时代背景
试题解析:
7、大数据决策逐渐成为一种新的决策方式,大数据应用有力促进了信息技术与各行业的深度融合,大数据开发大大推动了新技术和新应用的不断涌现。
答案: 对
★难度:易
参见章节:第1章 第2节
考核知识点:大数据的影响与应用
试题解析:
8、大数据开发的两大核心技术是Hadoop和MapReduce
答案: 错
★难度:易
参见章节:第1章 第3节
考核知识点:大数据的关键技术
试题解析:HDFS和MapReduce
9、Hive提供了大数据批处理计算功能。
答案: 错
★难度:中
参见章节:第1章 第3节
考核知识点:大数据的关键技术
试题解析:MapReduce
10、MapReduce和Spark都属于大数据批处理计算的产品。
答案: 对
★难度:易
参见章节:第1章 第3节
考核知识点:大数据的关键技术
试题解析:
11、大数据计算处理方法主要分为两种方法,即批处理方法和流处理方法。
答案: 对
★难度:易
参见章节:第1章 第3节
考核知识点:大数据的关键技术
试题解析:
12、Facebook主要将Hadoop平台用于日志处理、推荐系统等方面
答案: 对
★难度:易
参见章节:第2章 第1节
考核知识点:Hadoop概述
试题解析:
13、Pig是Hadoop项目中一种数据仓库工具。
答案: 错
★难度:易
参见章节:第2章 第2节
考核知识点:Hadoop项目结构
试题解析:一个基于Hadoop的大规模数据分析平台,提供类似SQL的查询语言Pig Latin
14、Ambari通过Web进行Hadoop集群的管理配置。
答案: 对
★难度:中
参见章节:第2章 第2节
考核知识点:Hadoop项目结构
试题解析:
15、Linux系统中只有Ubuntu可以安装Hadoop。
答案: 错
★难度:易
参见章节:第2章 第3节
考核知识点:Hadoop的安装与使用
试题解析:CentOS也可以
16、在伪分布式模式中,NameNode和DataNode是同一个节点。
答案: 对
★难度:易
参见章节:第2章 第3节
考核知识点:Hadoop的安装与使用
试题解析:
17、Hadoop安装时要配置SSH,这是由于Hadoop数据节点需要启动集群中所有机器的Hadoop守护进程,这个过程需要通过SSH登录来实现。
答案: 错
★难度:难
参见章节:第2章 第3节
考核知识点:Hadoop的安装与使用
试题解析:名称节点
18、Hadoop可以在单节点上以伪分布式的方式运行,Hadoop进程以分离的Java进程来运行,节点既作为NameNode也作为DataNode,同时,读取的是HDFS中的文件。
答案: 对
★难度:中
参见章节:第2章 第3节
考核知识点:Hadoop的安装与使用
试题解析:
19、Hadoop伪分布式配置中需将副本数量调成1
答案: 对
★难度:中
参见章节:第2章 第3节
考核知识点:Hadoop的安装与使用
试题解析:
20、”hadoop dfs”和”hdfs dfs”两条命令都只是用于HDFS文件系统
答案: 对
★难度:易
参见章节:第2章 第3节
考核知识点:Hadoop的安装与使用
试题解析:
21、”hadoop dfs”和”hadoop fs”两条命令适用于任何不同的文件系统
答案: 错
★难度:易
参见章节:第2章 第3节
考核知识点:Hadoop的安装与使用
试题解析:hdfs dfs跟hadoop dfs的命令作用一样,也只能适用于HDFS文件系统
22、在分布式文件系统中,如果一个文件小于一个数据块的大小,它会占用整个数据块的存储空间。
答案: 错
★难度:易
参见章节:第3章 第1节
考核知识点:分布式文件系统简介
试题解析:在分布式文件系统中,如果一个文件小于一个数据块的大小,它并不占用整个数据块的存储空间。
23、文件块的大小和副本个数只能由系统指定。
答案: 错
★难度:易
参见章节:第3章 第1节
考核知识点:分布式文件系统简介
试题解析:文件块的大小和副本个数通常可以由用户指定。
24、分布式文件系统中文件块会被复制为多个副本,存储在不同的节点上,而且,存储同一文件块的不同副本的各个节点,会分布在不同的机架上。
答案: 对
★难度:易
参见章节:第3章 第1节
考核知识点:分布式文件系统简介
试题解析:
25、HDFS 在设计上采取了多种机制保证在硬件出错的环境中实现数据的完整性。
答案: 对
★难度:易
参见章节:第3章 第2节
考核知识点:HDFS简介
试题解析:
26、HDFS只允许一个文件有一个写入者,不允许多个用户对同一个文件执行写操作
答案: 对
★难度:易
参见章节:第3章 第2节
考核知识点:HDFS简介
试题解析:
27、在传统的文件系统中,为了提高磁盘读写效率,一般以数据块为单位
答案: 对
★难度:易
参见章节:第3章 第3节
考核知识点:HDFS相关概念
试题解析:
28、HDFS在块的大小的设计上明显要小于普通文件系统,可以最小化寻址开销
答案: 错
★难度:易
参见章节:第3章 第3节
考核知识点:HDFS相关概念
试题解析:HDFS在块的大小的设计上明显要大于普通文件系统,可以最小化寻址开销
29、HDFS中的NameNode的EditLog用于维护文件系统树以及文件树中所有的文件和文件夹的元数据
答案: 错
★难度:中
参见章节:第3章 第3节
考核知识点:HDFS相关概念
试题解析:FsImage用于维护文件系统树以及文件树中所有的文件和文件夹的元数据
操作日志文件EditLog中记录了所有针对文件的创建、删除、重命名等操作
30、HDFS中的NameNode的操作日志文件EditLog中记录了所有针对文件的创建、删除、重命名等操作
答案: 对
★难度:中
参见章节:第3章 第3节
考核知识点:HDFS相关概念
试题解析:
31、FsImage文件记录了文件包含哪些块以及每个块存储在哪个数据节点。
答案:
★难度:难
参见章节:第3章 第3节
考核知识点:HDFS相关概念
试题解析:FsImage文件没有记录文件包含哪些块以及每个块存储在哪个数据节点,而是由名称节点把这些映射信息保留在内存中。
32、HDFS中数据节点会根据客户端或者是名称节点的调度来进行数据的存储和检索,并且向名称节点定期发送自己所存储的块的列表
答案: 对
★难度:易
参见章节:第3章 第3节
考核知识点:HDFS相关概念
试题解析:
33、HDFS每个DataNode中的数据会被保存NameNode中
答案:
★难度:易
参见章节:第3章 第3节
考核知识点:HDFS相关概念
试题解析:每个数据节点中的数据会被保存在各自节点的本地Linux文件系统中
34、HDFS集群中的数据节点一般是一个节点运行多个数据节点进程,负责处理文件系统客户端的读/写请求。
答案: 错
★难度:中
参见章节:第3章 第4节
考核知识点:HDFS体系结构
试题解析:集群中的数据节点一般是一个节点运行一个数据节点进程
35、HDFS使用的是传统的分级文件体系,因此,用户可以像使用普通文件系统一样,创建、删除目录和文件,在目录间转移文件,重命名文件等
答案: 对
★难度:易
参见章节:第3章 第4节
考核知识点:HDFS体系结构
试题解析:
36、HDFS中客户端在读取到数据后,不用对数据块进行校验,也可确定正确性
答案: 错+B14A147:J147
★难度:中
参见章节:第3章 第5节
考核知识点:HDFS存储原理
试题解析:md5、sha1校验
37、HDFS读数据过程中读取请求获得的输入流是FSInputStream
答案: 错
★难度:易
参见章节:第3章 第6节
考核知识点:数据读写过程
试题解析:FSDataInputStream
38、HBase只有一个索引——行键,通过巧妙的设计,HBase中的所有访问方法,或者通过行键访问,或者通过行键扫描,从而使得整个系统不会慢下来
答案: 对
★难度:易
参见章节:第4章 第1节
考核知识点:HBase概述
试题解析:
39、在HBase中,更新操作会用最新的当前值去替换记录中原来的旧值,旧值被覆盖后就不会存在
答案: 错
★难度:中
参见章节:第4章 第1节
考核知识点:HBase概述
试题解析:在关系数据库中,更新操作会用最新的当前值去替换记录中原来的旧值,旧值被覆盖后就不会存在。而在HBase中执行更新操作时,并不会删除数据旧的版本,而是生成一个新的版本,旧有的版本仍然保留
40、HBase中包含了丰富的操作,其中会涉及复杂的多表连接。
答案: 错
★难度:中
参见章节:第4章 第1节
考核知识点:HBase概述
试题解析:关系数据库中包含了丰富的操作,其中会涉及复杂的多表连接。HBase操作则不存在复杂的表与表之间的关系,只有简单的插入、查询、删除、清空等,因为HBase在设计上就避免了复杂的表和表之间的关系。
41、Hbase中列族支持动态扩展,可以很轻松地添加一个列族或列
答案: 对
★难度:易
参见章节:第4章 第2节
考核知识点:HBase数据模型(上)
试题解析:
42、Hbase中表在水平方向由一个或者多个列族组成,一个列族中可以包含任意多个列,同一个列族里面的数据存储在一起
答案: 对
★难度:易
参见章节:第4章 第2节
考核知识点:HBase数据模型(上)
试题解析:
43、Hbase中表在垂直方向由一个或者多个列族组成,一个列族中可以包含任意多个列,同一个列族里面的数据存储在一起
答案: 错
★难度:易
参见章节:第4章 第2节
考核知识点:HBase数据模型(上)
试题解析:Hbase中表在水平方向
44、HBase中执行更新操作时,并不会删除数据旧的版本,而是生成一个新的版本,旧有的版本仍然保留
答案: 对
★难度:易
参见章节:第4章 第2节
考核知识点:HBase数据模型(上)
试题解析:
45、在HBase 的概念视图中, 一个表可以视为一个稀疏、多维的映射关系。
答案: 对
★难度:易
参见章节:第4章 第3节
考核知识点:HBase数据模型(下)
试题解析:
46、从物理存储层面, HBase 中的每个表是由许多行组成的
答案: 错
★难度:易
参见章节:第4章 第3节
考核知识点:HBase数据模型(下)
试题解析:从概念视图层面, HBase 中的每个表是由许多行组成的
47、在概念视图层面, HBase 中的每个表是采用了基于列的存储方式
答案: 错
★难度:易
参见章节:第4章 第3节
考核知识点:HBase数据模型(下)
试题解析:在物理存储层面, HBase 中的每个表是采用了基于列的存储方式
48、Hbase和传统数据库一样都是行式数据库
答案: 错
★难度:易
参见章节:第4章 第3节
考核知识点:HBase数据模型(下)
试题解析:HBase 是面向列的存储,也就是说, HBase 是一个”列式数据库” 。
而传统的关系数据库采用的是面向行的存储,被称为”行式数据库” 。
49、Hbase和传统数据库一样都是列式数据库
答案: 错
★难度:易
参见章节:第4章 第3节
考核知识点:HBase数据模型(下)
试题解析:HBase 是面向列的存储,也就是说, HBase 是一个”列式数据库” 。
而传统的关系数据库采用的是面向行的存储,被称为”行式数据库” 。
50、HBase中包含一个Region服务器和许多个Master服务器
答案: 错
★难度:易
参见章节:第4章 第4节
考核知识点:Hbase的实现原理
试题解析:一个Master主服务器,许多个Region服务器
51、Hbase中为每个Region服务器配置了一个HLog文件,它是一种后写式日志
答案: 错
★难度:中
参见章节:第4章 第5节
考核知识点:Hbase运行机制
试题解析:为每个Region服务器配置了一个HLog文件,它是一种预写式日志
52、Hbase中每个Region 使用一个Hlog
答案: 错
★难度:中
参见章节:第4章 第5节
考核知识点:Hbase运行机制
试题解析:HBase 系统中,每个Region 服务器只需要维护一个HLog 文件,所有Region 对象共用一个HLog ,而不是每个Region 使用一个HLog
53、关系数据库的关键特性包括完善的事务机制和高效的查询机制
答案: 对
★难度:易
参见章节:第5章 第1节
考核知识点:NoSQL概述
试题解析:
54、NoSQL数据库可以完全取代关系数据库
答案: 错
★难度:易
参见章节:第5章 第2节
考核知识点:NoSQL与其他数据库
试题解析:
55、CAP理论告诉我们,一个分布式系统可以同时满足一致性、可用性和分区容忍性这三个需求
答案: 错
★难度:易
参见章节:第5章 第4节
考核知识点:NoSQL的三大基石
试题解析:CAP理论告诉我们,一个分布式系统不可能同时满足一致性、可用性和分区容忍性这三个需求,最多只能同时满足其中两个
56、云数据库不可以满足大企业的海量数据存储需求
答案: 错
★难度:易
参见章节:第6章 第2节
考核知识点:云数据库概述(下)
试题解析:云数据库可以满足大企业的海量数据存储需求
57、云数据库可以满足中小企业的低成本数据存储需求
答案: 对
★难度:易
参见章节:第6章 第2节
考核知识点:云数据库概述(下)
试题解析:
58、云数据库不可以满足企业动态变化的数据存储需求
答案: 错
★难度:易
参见章节:第6章 第2节
考核知识点:云数据库概述(下)
试题解析:云数据库可以满足企业动态变化的数据存储需求
59、UMP系统中的Mnesia不错支持事务
答案: 错
★难度:难
参见章节:第6章 第3节
考核知识点:云数据库系统架构(上)
试题解析:Mnesia支持事务
60、UMP集群中各个节点之间的通信,需要建立专门的连接
答案:
★难度:难
参见章节:第6章 第3节
考核知识点:云数据库系统架构(上)
试题解析:UMP集群中各个节点之间的通信,不需要建立专门的连接,都是通过读写队列消息来实现的
61、UMP系统采用数据访问IP黑名单确保安全性
答案: 错
★难度:易
参见章节:第6章 第4节
考核知识点:云数据库系统架构(下)
试题解析:白名单
62、亚马逊的云服务提供了多达几十种服务,涵盖了IaaS、PaaS、SaaS这三层
答案: 对
★难度:易
参见章节:第6章 第5节
考核知识点:AWS和云数据库
试题解析:
63、阿里云RDS中一个实例可以创建多个数据库,在实例内数据库命名唯一,所有数据库都会共享该实例下的资源,如CPU、内存、磁盘容量等
答案: 对
★难度:易
参见章节:第6章 第7节
考核知识点:云数据库实践
试题解析:
64、Map函数的任务就是将输入的一系列具有相同键的键值对以某种方式组合起来,输出处理后的键值对,输出结果会合并成一个文件。
答案: 错
★难度:易
参见章节:第7章 第1节
考核知识点:MapReduce概述
试题解析:这是Reduce的任务
65、MapReduce中TaskTracker使用“slot”等量划分本节点上的资源量。
答案: 对
★难度:易
参见章节:第7章 第1节
考核知识点:MapReduce概述
试题解析:
66、MapReduce中Client会跟踪任务的执行进度、资源使用量等信息
答案: 错
★难度:易
参见章节:第7章 第1节
考核知识点:MapReduce概述
试题解析:JobTracker的任务
67、MapReduce中一个执行Reduce任务的Worker,可能会从多个Map机器上领取数据
答案: 对
★难度:难
参见章节:第7章 第3节
考核知识点:实例分析:WordCount
试题解析:
68、MapReduce处理分组聚合操作时,在Map过程中,选择关系的某一宇段的值作为键,其他字段的值作为与键相关联的值;Reduce过程,输出为<键,聚合运算结果〉。
答案: 对
★难度:中
参见章节:第7章 第4节
考核知识点:MapReduce的具体应用
试题解析:
69、MapReduce执行程序时可以直接运行.class文件
答案: 错
★难度:易
参见章节:第7章 第5节
考核知识点:MapReduce编程实践
试题解析:
70、Hadoop是典型的实时处理模型
答案: 错
★难度:易
参见章节:第8章 第1节
考核知识点:流计算概述
试题解析:批处理模型
71、Hadoop是典型的批处理模型
答案: 对
★难度:易
参见章节:第8章 第1节
考核知识点:流计算概述
试题解析:
72、传统的数据处理流程,需要先采集数据并存储在关系数据库等数据管理系统中,之后由用户通过查询操作和数据管理系统进行交互
答案: 对
★难度:易
参见章节:第8章 第2节
考核知识点:流计算处理流程
试题解析:
73、数据实时计算阶段对采集的数据进行实时的分析和计算。流处理系统接收数据采集系统不断发来的实时数据,实时地进行分析计算,不需要反馈实时结果。
答案: 错
★难度:易
参见章节:第8章 第2节
考核知识点:流计算处理流程
试题解析:数据实时计算阶段对采集的数据进行实时的分析和计算,并反馈实时结果。
74、传统数据处理流程,用户需要主动发起查询或者定时查询;流处理流程中,可以实时查询。
答案: 对
★难度:易
参见章节:第8章 第2节
考核知识点:流计算处理流程
试题解析:
75、分布式离线分析可以实现秒级别的实时分析响应。
答案: 错
★难度:易
参见章节:第8章 第3节
考核知识点:流计算应用
试题解析:
76、Storm框架是实时计算系统,所以不能使用数据库。
答案: 错
★难度:易
参见章节:第8章 第4节
考核知识点:流计算开源框架Storm(1)
试题解析:Storm框架可以方便地与数据库系统进行整合,从而开发出强大的实时计算系统
77、早期对于流计算的研究多数是基于对传统数据库处理的流式化,即实时数据库,很少研究流计算框架
答案: 对
★难度:易
参见章节:第8章 第4节
考核知识点:流计算开源框架Storm(1)
试题解析:
78、Yahoo! S4和Twitter Storm开发实时应用时既要关注处理逻辑,还要解决实时数据获取、传输、存储
答案: 错
★难度:易
参见章节:第8章 第4节
考核知识点:流计算开源框架Storm(1)
试题解析:不需要
79、Storm中的Tuple是一个Key-Value的Map,但也可以填入一个Value-List。
答案: 对
★难度:易
参见章节:第8章 第5节
考核知识点:流计算开源框架Storm(2)
试题解析:
80、Storm中Bolt可以执行过滤、函数操作、Join、操作数据库等任何操作。
答案: 对
★难度:易
参见章节:第8章 第5节
考核知识点:流计算开源框架Storm(2)
试题解析:
81、大型图计算通常是由一个集群完成的,集群环境中执行远程数据读取会有较高的延迟
答案: 对
★难度:易
参见章节:第9章 第2节
考核知识点:Pregel图计算模型
试题解析:
82、Pregel的消息模式采用异步和批量的方式传递消息,却无法缓解远程读取的延迟
答案: 错
★难度:中
参见章节:第9章 第2节
考核知识点:Pregel图计算模型
试题解析:Pregel的消息模式采用异步和批量的方式传递消息,因此可以缓解远程读取的延迟
83、默认情况下,Pregel计算框架会开启Combiner功能
答案: 错
★难度:中
参见章节:第9章 第3节
考核知识点:Pregel的C++ API
试题解析:默认情况下,Pregel计算框架并不会开启Combiner功能
84、Pregel中无论在哪台机器上,都可以简单根据顶点ID判断出该顶点属于哪个分区,即使该顶点可能已经不存在了
答案: 错
★难度:易
参见章节:第9章 第4节
考核知识点:Pregel的体系结构
试题解析:
85、在Pregel中, “标志位”和输入消息队列是分开保存的
答案: 对
★难度:中
参见章节:第9章 第4节
考核知识点:Pregel的体系结构
试题解析:
86、对于每个顶点而言,Pregel只保存一份顶点值和边值,但是,会保存两份“标志位”和输入消息队列,分别用于当前超步和下一个超步
答案: 对
★难度:中
参见章节:第9章 第4节
考核知识点:Pregel的体系结构
试题解析:
87、Pregel将PageRank处理对象看成是连通图,而MapReduce则将其看成是键值对
答案: 对
★难度:易
参见章节:第9章 第6节
考核知识点:Pregel和MapReduce实现PageRank算法的对比
试题解析:
88、Pregel将计算细化到顶点,同时在顶点内控制循环迭代次数,而MapReduce则将计算批量化处理,按任务进行循环迭代控制
答案: 对
★难度:易
参见章节:第9章 第6节
考核知识点:Pregel和MapReduce实现PageRank算法的对比
试题解析:
89、图算法如果用MapReduce实现,需要一系列的MapReduce的调用。从一个阶段到下一个阶段,它需要传递整个图的状态,会产生大量不必要的序列化和反序列化开销。而Pregel使用超步简化了这个过程
答案: 对
★难度:易
参见章节:第9章 第6节
考核知识点:Pregel和MapReduce实现PageRank算法的对比
试题解析:
(二)、选择部分
1、信息技术发展史上的第三次信息化浪潮解决的问题是什么()。
A.信息处理
B.信息增长
C.信息爆炸
D.信息传输
答案: C
★难度:易
参见章节:第1章 第1节
考核知识点:大数据时代背景
试题解析:
2、以下哪种不属于为大数据时代提供关键技术支撑的信息科技变化()。
A.网络宽带不断增加
B.存储设备容量不断增加
C.CPU处理能大幅提升
D.存储设备尺寸不断减小
答案: D
★难度:易
参见章节:第1章 第1节
考核知识点:大数据时代背景
试题解析:
3、大数据的特征是()。
A.数据体量大
B.数据产生速度快
C.数据种类多
D.数据计算快
E.数据价值高
答案: A B C E
★难度:中
参见章节:第1章 第1节
考核知识点:大数据时代背景
试题解析:
4、1秒定律体现了大数据的哪个特征()。
A.数据量大
B.数据产生速度快
C.数据存储快
D.数据计算快
答案: B
★难度:易
参见章节:第1章 第1节
考核知识点:大数据时代背景
试题解析:
5、大数据摩尔定律体现了大数据的哪个体征()。
A.数据体量大
B.数据产生速度快
C.数据种类多
D.数据计算快
E.数据价值高
答案: A
★难度:难
参见章节:第1章 第1节
考核知识点:大数据时代背景
试题解析:
6、在做人口调查时,采用对一个总样本为1亿人口的数据随机抽取1000人进行抽样调查体现了大数据的哪种思维方式()。
A.相关而非因果
B.全样而非抽样
C.效率而非精确
D.全面而非特别
答案: B
★难度:易
参见章节:第1章 第2节
考核知识点:大数据的影响与应用
试题解析:
7、以下哪些属于典型的大数据应用()。
A.谷歌搜索
B.谷歌流感趋势
C.谷歌统计
D.《纸牌屋》制作
E.《黑镜子》制作
答案: B D
★难度:易
参见章节:第1章 第2节
考核知识点:大数据的影响与应用
试题解析:
8、下列哪些属于大数据计算模式()。
A.分布式计算
B.图计算
C.流计算
D.并行计算
E.批处理计算
答案: B C E
★难度:中
参见章节:第1章 第3节
考核知识点:大数据的关键技术
试题解析:
9、以下哪些是云计算关键技术()。
A.虚拟化
B.分布式计算
C.分布式存储
D.物联网
E.单租户
答案: A B C
★难度:易
参见章节:第1章 第4节
考核知识点:大数据产业及其相关技术
试题解析:
10、以下哪层不属于物联网体系架构()。
A.应用层
B.采集层
C.网络层
D.感知层
答案: B
★难度:易
参见章节:第1章 第4节
考核知识点:大数据产业及其相关技术
试题解析:
11、以下不属于物联网关键技术的是()。
A.RFID
B.传感器
C.交换机
D.矩阵式二维码
答案: C
★难度:易
参见章节:第1章 第4节
考核知识点:大数据产业及其相关技术
试题解析:
12、以下属于Hadoop2.0的特性是()。
A.MapReduce
B.HDFS
C.YARN
D.SPARK
答案: C
★难度:易
参见章节:第2章 第1节
考核知识点:Hadoop概述
试题解析:
13、以下针对Hive的说法不正确的是()。
A.Hive是一个基于Hadoop的数据仓库工具
B.Hive是关系数据库
C.Hive QL是一种查询语言
D.Hive可以提供查询分析存储等功能
答案: B
★难度:中
参见章节:第2章 第2节
考核知识点:Hadoop项目结构
试题解析:Hive 是一个基于 Hadoop 的数据仓库工具
14、以下说法不正确的是()。
A.Zookeeper提供分布式锁之类的基本服务
B.Mahout提供了分布式存储服务
C.Flume提供了日志管理服务
D.Sqoop主要被用于数据交互操作
答案: B
★难度:难
参见章节:第2章 第2节
考核知识点:Hadoop项目结构
试题解析:Mahout是Apache 软件基金会旗下的一个开源项目, 提供一些可扩展的机器学习领域经典算法的实现,
15、以下说法不正确的是()。
A.MapReduce的核心思想就是“分面治之”
B.HDFS是对GFS的开源实现
C.MapReduce是一种分布式计算模型
D.HDFS采用HBase作为其底层数据存储
答案: D
★难度:难
参见章节:第2章 第2节
考核知识点:Hadoop项目结构
试题解析:HBase是一个提供高可靠性, 高性能、 可伸缩、 实时读写、 分布式的列式数据库,一般采用HDFS 作为其底层数据存储
16、以下包含在Hadoop项目中的有()。
A.Ambari
B.Redis
C.MongoDB
D.Pig
E.Sqoop
答案: A D E
★难度:中
参见章节:第2章 第2节
考核知识点:Hadoop项目结构
试题解析:
17、以下说法正确的是()。
A.Kafka是一种高吞吐量的分布式发布订阅消息系统
B.Spark是并行框架
C.Pig是一个基于Hadoop的大规模数据计算平台
D.Storm是一种流计算框架
答案: A B D
★难度:难
参见章节:第2章 第2节
考核知识点:Hadoop项目结构
试题解析:Pig一个基于Hadoop的大规模数据分析平台,提供类似SQL的查询语言Pig Latin
18、以下哪个是通过JDBS和关系数据库进行交互的()。
A.Ambari
B.Oozie
C.Hive
D.Sqoop
答案: D
★难度:中
参见章节:第2章 第2节
考核知识点:Hadoop项目结构
试题解析:
19、以下哪些可以提供计算服务()。
A.Spark
B.Tez
C.Mahout
D.MapReduce
E.YARN
答案: A B C D E
★难度:难
参见章节:第2章 第2节
考核知识点:Hadoop项目结构
试题解析:
20、以下属于Hadoop的安装方式的有()。
A.单机模式
B.多机模式
C.分布式模式
D.并行模式
E.伪分布式模式
答案: A C E
★难度:中
参见章节:第2章 第3节
考核知识点:Hadoop的安装与使用
试题解析:
21、以下哪个命令是Ubuntu中创建系统用户的命令()。
A.adduser
B.useradd
C.sudo
D.sudo user
答案: A
★难度:难
参见章节:第2章 第3节
考核知识点:Hadoop的安装与使用
试题解析:
22、Hadoop在配置伪分布式时需要修改哪几个配置文件()。
A.hbase-site.xml
B.hdfs-site.xml
C.core-site.xml
D.map-site.xml
E.mapr-site.xml
答案: B C
★难度:难
参见章节:第2章 第3节
考核知识点:Hadoop的安装与使用
试题解析:
23、Hadoop启动所有进程的命令为()。
A.all-start.sh
B.all-start.exe
C.start-all.sh
D.start-all.exe
答案: C
★难度:难
参见章节:第2章 第3节
考核知识点:Hadoop的安装与使用
试题解析:
24、Hadoop配置文件中说法错误的是()。
A.core-site.xml中hadoop.tmp.dir表示存放临时数据的目录,仅为NameNode的数据
B.core-site.xml中fs.defaultFS表示HDFS路径的逻辑名称
C.hdfs-site.xml中dfs.namenode.name.dir表示存储fsimage文件的地方
D.hdfs-site.xml中dfs.replication表示副本的数量,伪分布式要设置为0
E.hdfs-site.xml中dfs.datanode.data.dir表示HDFS数据存放block的地方
答案: A C
★难度:难
参见章节:第2章 第3节
考核知识点:Hadoop的安装与使用
试题解析:
25、Hadoop集群的整体性能取决于哪些性能间的平衡
A.CPU
B.GPU
C.内存
D.存储
E.网络
答案: A C D E
★难度:中
参见章节:第2章 第4节
考核知识点:Hadoop集群的部署与使用
试题解析:
26、关于Hadoop集群,以下说法错误的是()。
A.SecondaryNameNode可以和NameNode共用一台机器
B.JobTracker指派的任务由TaskTracker执行
C.SecondaryNameNode可以和DataNode共用一台机器
D.NameNode可以和JobTracker共用一台机器
答案: C
★难度:难
参见章节:第2章 第4节
考核知识点:Hadoop集群的部署与使用
试题解析:SecondaryNameNode在小型集群中可以和NameNode共用一台机器
27、关于Hadoop集群网络拓扑,以下说法错误的是()。
A.普通的Hadoop集群结构由一个两阶网络构成
B.Hadoop集群中每个机架有30-40个服务器,配置一个1GB的交换机,并向上传输到一个核心交换机或者路由器
C.在相同的机架中的节点间的带宽的总和,要等于不同机架间的节点间的带宽总和
D.一般来说机架内部网络环境比机架间网络环境好
答案: C
★难度:中
参见章节:第2章 第4节
考核知识点:Hadoop集群的部署与使用
试题解析:在相同的机架中的节点间的带宽的总和,要大于不同机架间的节点间的带宽总和
28、使用Amazon云环境部署Hadoop的说法中错误的是()。
A.Hadoop不仅可以运行在企业内部的集群中,也可以运行在云计算环境中
B.Hadoop自带有一套脚本,用于在EC2上面运行Hadoop
C.在EC2上运行Hadoop尤其适用于一些工作流
D.Amazon EC2为Hadoop提供了存储服务
答案: D
★难度:中
参见章节:第2章 第4节
考核知识点:Hadoop集群的部署与使用
试题解析:
29、已得到广泛应用的分布式文件系统主要包括()。
A.GFS
B.MapReduce
C.Hbase
D.HDFS
答案: A D
★难度:中
参见章节:第3章 第1节
考核知识点:分布式文件系统简介
试题解析:
30、分布式文件系统的设计目的包括()。
A.并发控制
B.可伸缩性
C.容错
D.速度
答案: A B C
★难度:中
参见章节:第3章 第1节
考核知识点:分布式文件系统简介
试题解析:
31、HDFS要实现的目标
A.流数据读写
B.大数据集的操作
C.复杂的文件模型
D.强大的跨平台兼容性
答案: A B D
★难度:中
参见章节:第3章 第2节
考核知识点:HDFS简介
试题解析:简单的文件模型
32、以下哪个是HDFS的局限性()。
A.吞吐率
B.数据集
C.兼容性
D.延迟
答案: D
★难度:易
参见章节:第3章 第2节
考核知识点:HDFS简介
试题解析:
33、以下哪个是HDFS的局限性()。
A.延迟高
B.只允许对文件执行追加操作,不能执行随机写操作
C.用MapReduce处理大量小文件时,会产生过多的Map任务,线程管理开销会大大增加
D.拥有复杂的数据模型
答案: A B C
★难度:难
参见章节:第3章 第2节
考核知识点:HDFS简介
试题解析:
34、HDFS中NameNode保存的核心数据结构是()
A.FsImage
B.DataNode
C.Block
D.EditLog
答案: A D
★难度:难
参见章节:第3章 第3节
考核知识点:HDFS相关概念
试题解析:
35、HDFS中()记录了每个文件中各个块所在的数据节点的位置信息
A.NameNode
B.SecondaryNameNode
C.DataNode
D.Block
答案: A
★难度:易
参见章节:第3章 第3节
考核知识点:HDFS相关概念
试题解析:
36、()可解决HDFS中名称节点运行期间EditLog不断变大的问题
A.NameNode
B.SecondaryNameNode
C.DataNode
D.Block
答案: B
★难度:中
参见章节:第3章 第3节
考核知识点:HDFS相关概念
试题解析:
37、HDFS中SecondaryNameNode可减少()重启的时间
A.NameNode
B.SecondaryNameNode
C.DataNode
D.Block
答案: A
★难度:易
参见章节:第3章 第3节
考核知识点:HDFS相关概念
试题解析:
38、HDFS中NameNode将从SecondaryNameNode接收到的新的FsImage替换旧的FsImage文件,同时将edit.new替换##文件
A.edit
B.edit.old
C.FsImage
D.EditLog
答案: D
★难度:中
参见章节:第3章 第3节
考核知识点:HDFS相关概念
试题解析:
39、HDFS的命名空间包含()
A.节点
B.目录
C.文件
D.块
答案: B C D
★难度:中
参见章节:第3章 第4节
考核知识点:HDFS体系结构
试题解析:
40、名称节点和数据节点之间则使用()协议进行交互
A.名称节点
B.第二名称节点
C.数据节点
D.TCP
答案: C
★难度:易
参见章节:第3章 第4节
考核知识点:HDFS体系结构
试题解析:
41、HDFS提供了()可以通过客户端访问文件系统。
A.类似Shell的命令行
B.可视化窗口
C.Java API
D.Web API
答案: A C
★难度:中
参见章节:第3章 第4节
考核知识点:HDFS体系结构
试题解析:
42、HDFS中客户端在读取到数据后,会采用()对数据块进行校验,已确定正确性
A.md5
B.哈希桶
C.sha1
D.奇偶校验
答案: A C
★难度:难
参见章节:第3章 第5节
考核知识点:HDFS存储原理
试题解析:
43、HDFS中对名称节点设置了备份机制,会将名称节点中的()文件同步复制到备份服务器上。
A.FsImage
B.DataNode
C.Block
D.EditLog
答案: A D
★难度:易
参见章节:第3章 第5节
考核知识点:HDFS存储原理
试题解析:
44、HDFS中当一些数据节点不可用时,会导致一些数据块的副本数量()冗余因子
A.大于
B.小于
C.等于
D.大于等于
答案: B
★难度:中
参见章节:第3章 第5节
考核知识点:HDFS存储原理
试题解析:
45、()是一个通用文件系统的抽象基类,可以被分布式文件系统继承
A.DistributedFileSystem
B.GFSSystem
C.FileSystem
D.HDFSSystem
答案: C
★难度:易
参见章节:第3章 第6节
考核知识点:数据读写过程
试题解析:
46、HDFS读数据过程中()具体实现了FileSystem
A.DistributedFileSystem
B.GFSSystem
C.FileSystem
D.HDFSSystem
答案: A
★难度:易
参见章节:第3章 第6节
考核知识点:数据读写过程
试题解析:
47、HDFS中FSDataInputStream封装了()
A.HDFSInputStream
B.DFSInputStream
C.DataInputStream
D.FSInputStream
答案: B
★难度:易
参见章节:第3章 第6节
考核知识点:数据读写过程
试题解析:
48、HDFS中FSDataOutputStream封装了()
A.HDFSOutputStream
B.DFSOutputStream
C.DataOutputStream
D.FSOutputStream
答案: B
★难度:易
参见章节:第3章 第6节
考核知识点:数据读写过程
试题解析:
49、HDFS中ClientProtocal的()方法可以查找下一个数据块
A.getBlock
B.getBlockLocations
C.getLocation
D.nextBlock
答案: B
★难度:中
参见章节:第3章 第6节
考核知识点:数据读写过程
试题解析:
50、HDFS中ClientProtocol的()方法通知名称节点关闭文件
A.close
B.finish
C.exit
D.complete
答案: D
★难度:难
参见章节:第3章 第6节
考核知识点:数据读写过程
试题解析:
51、hadoop fs -() <path>命令可以将<path>指定的文件的内容输出到标准输出
A.cat
B.append
C.add
D.write
答案: A
★难度:中
参见章节:第3章 第7节
考核知识点:HDFS编程实践
试题解析:
52、hadoop fs -() <path>命令可以显示<path>指定的文件的详细信息
A.ll
B.ls
C.dir
D.show
答案: B
★难度:中
参见章节:第3章 第7节
考核知识点:HDFS编程实践
试题解析:
53、BigTable采用()作为底层数据存储
A.HDFS
B.GFS
C.Hbase
D.传统文件系统
答案: B
★难度:中
参见章节:第4章 第1节
考核知识点:HBase概述
试题解析:
54、HBase的目标是处理非常庞大的表,可以通过()方式,利用廉价计算机集群处理由超过10亿行数据和数百万列元素组成的数据表
A.垂直扩展
B.水平扩展
C.拓扑扩展
D.叠加
答案: B
★难度:中
参见章节:第4章 第1节
考核知识点:HBase概述
试题解析:
55、Hbase采用()作为底层数据存储
A.HDFS
B.GFS
C.Hbase
D.传统文件系统
答案: A
★难度:中
参见章节:第4章 第1节
考核知识点:HBase概述
试题解析:
56、Hbase提供了哪些访问接口?
A.Pig
B.Hive
C.Zookeeper
D.Java API
答案: A B D
★难度:中
参见章节:第4章 第1节
考核知识点:HBase概述
试题解析:
57、HBase中需要根据()来确定一个单元格
A.行键
B.列族
C.列限定符
D.时间戳
答案: A B C D
★难度:中
参见章节:第4章 第2节
考核知识点:HBase数据模型(上)
试题解析:
58、行式数据库采用()存储模型
A.NSM
B.DSM
C.Hbase
D.MySQL
答案: A
★难度:易
参见章节:第4章 第3节
考核知识点:HBase数据模型(下)
试题解析:
59、列式数据库采用()存储模型
A.NSM
B.DSM
C.Hbase
D.MySQL
答案: B
★难度:易
参见章节:第4章 第3节
考核知识点:HBase数据模型(下)
试题解析:
60、以下哪种数据库适合于批量数据处理和即席查询()
A.MySQL
B.Oracle
C.Hbase
D.NosSQL
答案: C
★难度:易
参见章节:第4章 第3节
考核知识点:HBase数据模型(下)
试题解析:
61、以下哪种数据库适合于小批量的数据处理()
A.MySQL
B.Oracle
C.Hbase
D.NosSQL
答案: A B
★难度:易
参见章节:第4章 第3节
考核知识点:HBase数据模型(下)
试题解析:
62、每个Region服务器存储
()个Region
A.1
B.10
C.10-1000
D.0
答案: C
★难度:中
参见章节:第4章 第4节
考核知识点:Hbase的实现原理
试题解析:
63、HBase的客户端并不依赖Master,而是通过()来获得Region位置信息,大多数客户端甚至从来不和Master通信,这种设计方式使得Master负载很小
A.Master
B.Region
C.Zookeeper
D.Chubby
答案: C
★难度:难
参见章节:第4章 第4节
考核知识点:Hbase的实现原理
试题解析:
64、Hbase中-ROOT-表有()个Region
A.1
B.10
C.10-1000
D.0
答案: A
★难度:难
参见章节:第4章 第4节
考核知识点:Hbase的实现原理
试题解析:
65、Hbase中()文件记录了-ROOT-表的位置
A.Master
B.Region
C.Zookeeper
D.Chubby
答案: C
★难度:中
参见章节:第4章 第4节
考核知识点:Hbase的实现原理
试题解析:
66、Hbase中Zookeeper文件记录了()的位置
A..META.表
B.-ROOT-表
C.Region
D.Master
答案: B
★难度:中
参见章节:第4章 第4节
考核知识点:Hbase的实现原理
试题解析:
67、Hbase在寻址过程客户端只需询问Zookeeper服务器,不需要链接()
A.Master
B.Region
C.Zookeeper
D.Chubby
答案: A
★难度:易
参见章节:第4章 第4节
考核知识点:Hbase的实现原理
试题解析:
68、Hbase系统结构中包括()
A.Zookeeper服务器
B.客户端
C.Master服务器
D.Region服务器
答案: A B C D
★难度:易
参见章节:第4章 第5节
考核知识点:Hbase运行机制
试题解析:
69、Hbase中Zookeeper提供了()
A.分布式同步
B.组服务
C.域名服务
D.配置维护
答案: A B C D
★难度:中
参见章节:第4章 第5节
考核知识点:Hbase运行机制
试题解析:
70、Hbase中Zookeeper可以帮助选举出一个()作为集群的总管
A.Master
B.Slaver
C.Region
D.客户端
答案: A
★难度:易
参见章节:第4章 第5节
考核知识点:Hbase运行机制
试题解析:
71、Hbase中客户端包含访问HBase的接口,同时在缓存中维护着已经访问过的()位置信息,用来加快后续数据访问过程
A.Master
B.Slaver
C.Region
D.客户端
答案: C
★难度:易
参见章节:第4章 第5节
考核知识点:Hbase运行机制
试题解析:
72、Hbase中()是最核心的模块,负责维护分配给自己的Region,并响应用户的读写请求
A.Master
B.Slaver
C.Regio服务器n
D.客户端
答案: C
★难度:易
参见章节:第4章 第5节
考核知识点:Hbase运行机制
试题解析:
73、Hbase中主服务器Master主要负责表和Region的管理工作
A.Master
B.Slaver
C.Region
D.客户端
答案: C
★难度:易
参见章节:第4章 第5节
考核知识点:Hbase运行机制
试题解析:
74、Hbase的Region服务器中用户数据首先被写入到()
A.MemStore
B.Hlog
C.StoreFile
D.客户端
答案: A B
★难度:难
参见章节:第4章 第5节
考核知识点:Hbase运行机制
试题解析:
75、Hbase中Region服务器的系统会周期性地把MemStore缓存里的内容刷写到磁盘的StoreFile文件中,清空缓存,并在Hlog里面写入一个标记
A.
答案: 对
★难度:难
参见章节:第4章 第5节
考核知识点:Hbase运行机制
试题解析:
76、Hbase中缓存刷新,每次刷写都生成一个新的StoreFile文件,因此,每个Store包含多个StoreFile文件
A.
答案: 对
★难度:难
参见章节:第4章 第5节
考核知识点:Hbase运行机制
试题解析:
77、Hbase中采用()保证系统出错时及时恢复
A.MemStore
B.Hlog
C.StoreFile
D.客户端
答案: B
★难度:中
参见章节:第4章 第5节
考核知识点:Hbase运行机制
试题解析:
78、Hbase中行键是按照##排序方式存储的
A.
答案: 字典序
★难度:中
参见章节:第4章 第6节
考核知识点:Hbase应用方案
试题解析:
79、Hbase中性能监视的工具有()
A.Ganglia
B.Ambari
C.OpenTSDB
D.Zookeeper
答案: A B C
★难度:易
参见章节:第4章 第6节
考核知识点:Hbase应用方案
试题解析:
80、以下哪种数据库是针对在线业务的,并且抛弃了关系模型()
A.MongoDB
B.MySQL
C.Oracle
D.Redis
答案: A D
★难度:中
参见章节:第5章 第1节
考核知识点:NoSQL概述
试题解析:
81、关系数据库与NoSQL数据库相比有哪些优势()
A.支持事务ACID四性
B.可以支持超大规模数据存储
C.以完善的关系代数理论作为基础
D.具有强大的横向扩展能力
答案: A C
★难度:难
参见章节:第5章 第2节
考核知识点:NoSQL与其他数据库
试题解析:
82、NoSQL数据库与关系数据库相比有哪些优势()
A.支持事务ACID四性
B.可以支持超大规模数据存储
C.以完善的关系代数理论作为基础
D.具有强大的横向扩展能力
答案: B D
★难度:难
参见章节:第5章 第2节
考核知识点:NoSQL与其他数据库
试题解析:
83、关系数据库与NoSQL数据库相比适用于哪些领域()
A.电信
B.银行
C.互联网企业大数据处理
D.传统企业的数据分析
答案: A B
★难度:中
参见章节:第5章 第2节
考核知识点:NoSQL与其他数据库
试题解析:
84、NoSQL数据库与关系数据库相比适用于哪些领域()
A.电信
B.银行
C.互联网企业大数据处理
D.传统企业的数据分析
答案: C D
★难度:中
参见章节:第5章 第2节
考核知识点:NoSQL与其他数据库
试题解析:
85、以下哪种属于键值数据库()
A.MongoDB
B.Redis
C.Hbase
D.Neo4j
答案: B
★难度:易
参见章节:第5章 第3节
考核知识点:NoSQL的四大类型
试题解析:
86、以下哪种属于文档数据库()
A.MongoDB
B.Redis
C.Hbase
D.Neo4j
答案: A
★难度:易
参见章节:第5章 第3节
考核知识点:NoSQL的四大类型
试题解析:
87、以下哪种属于列族数据库()
A.MongoDB
B.Redis
C.Hbase
D.Neo4j
答案: C
★难度:易
参见章节:第5章 第3节
考核知识点:NoSQL的四大类型
试题解析:
88、以下哪种属于图数据库()
A.MongoDB
B.Redis
C.Hbase
D.Neo4j
答案: D
★难度:易
参见章节:第5章 第3节
考核知识点:NoSQL的四大类型
试题解析:
89、以下哪种数据库属于NoSQL数据库()
A.关系数据库
B.键值数据库
C.文档数据库
D.分布式数据库
答案: B C
★难度:中
参见章节:第5章 第3节
考核知识点:NoSQL的四大类型
试题解析:
90、以下哪种数据库属于NoSQL数据库()
A.MongoDB
B.Oracle
C.Neo4j
D.Redis
E.Hbase
答案: A C D
★难度:中
参见章节:第5章 第3节
考核知识点:NoSQL的四大类型
试题解析:
91、以下哪种数据库属于NoSQL数据库()
A.MySQL
B.DynamoDB
C.InfiniteGraph
D.MongoDB
答案: B C D
★难度:中
参见章节:第5章 第3节
考核知识点:NoSQL的四大类型
试题解析:
92、以下哪种数据库属于NoSQL数据库()
A.SimpleDB
B.BigTable
C.MongoDB
D.GraphDB
答案: A B C D
★难度:中
参见章节:第5章 第3节
考核知识点:NoSQL的四大类型
试题解析:
93、应用于专门用于处理具有高度相互关联关系的数据,比较适合于社交网络的数据库是哪种()
A.列族数据库
B.键值数据库
C.图数据库
D.文档数据库
答案: C
★难度:易
参见章节:第5章 第3节
考核知识点:NoSQL的四大类型
试题解析:
94、优点是灵活性高,支持复杂的图形算法,可用于构建复杂的关系图谱的数据库是()
A.列族数据库
B.键值数据库
C.图数据库
D.文档数据库
答案: C
★难度:易
参见章节:第5章 第3节
考核知识点:NoSQL的四大类型
试题解析:
95、应用于存储、索引并管理面向文档的数据或者类似的半结构化数据,比如,用于后台具有大量读写操作的网站的数据库是哪种()
A.列族数据库
B.键值数据库
C.图数据库
D.文档数据库
答案: D
★难度:易
参见章节:第5章 第3节
考核知识点:NoSQL的四大类型
试题解析:
96、优点是性能好(高并发),灵活性高,复杂性低,数据结构灵活
提供嵌入式文档功能的数据库是()
A.列族数据库
B.键值数据库
C.图数据库
D.文档数据库
答案: D
★难度:易
参见章节:第5章 第3节
考核知识点:NoSQL的四大类型
试题解析:
97、应用于分布式数据存储与管理
数据在地理上分布于多个数据中心的应用程序的数据库是哪种()
A.列族数据库
B.键值数据库
C.图数据库
D.文档数据库
答案: A
★难度:易
参见章节:第5章 第3节
考核知识点:NoSQL的四大类型
试题解析:
98、优点是查找速度快,可扩展性强,容易进行分布式扩展,复杂性低的数据库是()
A.列族数据库
B.键值数据库
C.图数据库
D.文档数据库
答案: A
★难度:易
参见章节:第5章 第3节
考核知识点:NoSQL的四大类型
试题解析:
99、应用于涉及频繁读写、拥有简单数据模型的应用,内容缓存,比如会话的数据库是哪种()
A.列族数据库
B.键值数据库
C.图数据库
D.文档数据库
答案: B
★难度:易
参见章节:第5章 第3节
考核知识点:NoSQL的四大类型
试题解析:
100、优点是扩展性好,灵活性好,大量写操作时性能高的数据库是()
A.列族数据库
B.键值数据库
C.图数据库
D.文档数据库
答案: B
★难度:易
参见章节:第5章 第3节
考核知识点:NoSQL的四大类型
试题解析:
101、NoSQL中的CAP理论中的C代表()
A.一致性
B.可用性
C.分区容忍性
D.可扩展性
答案: A
★难度:易
参见章节:第5章 第4节
考核知识点:NoSQL的三大基石
试题解析:
102、NoSQL中的CAP理论中的A代表()
A.一致性
B.可用性
C.分区容忍性
D.可扩展性
答案: B
★难度:易
参见章节:第5章 第4节
考核知识点:NoSQL的三大基石
试题解析:
103、NoSQL中的CAP理论中的P代表()
A.一致性
B.可用性
C.分区容忍性
D.可扩展性
答案: C
★难度:易
参见章节:第5章 第4节
考核知识点:NoSQL的三大基石
试题解析:
104、MongoDB将数据存储为一个()
A.关系
B.属性
C.字段
D.文档
答案: D
★难度:易
参见章节:第5章 第5节
考核知识点:文档数据库MongoDB
试题解析:
105、以下哪个不属于MongoDB的特点
A.提供了面向文档的存储
B.可以设置任何属性索引
C.具有很好的垂直可扩展性
D.支持丰富的查询表达式
答案: C
★难度:易
参见章节:第5章 第5节
考核知识点:文档数据库MongoDB
试题解析:水平可扩展性
106、以下哪个不是云数据库的特点
A.高可扩展性
B.高可用性
C.支持资源有效分发
D.本地存储
答案: D
★难度:易
参见章节:第6章 第1节
考核知识点:云数据库概述(上)
试题解析:
107、以下哪些是云数据库产品()
A.Dynamo、SimpleDB、RDS、SQL Server
答案: A B C
★难度:易
参见章节:第6章 第2节
考核知识点:云数据库概述(下)
试题解析:
108、以下哪些是云数据库产品()
A.Microsoft SQL Azure
B.Google Cloud SQL
C.阿里云RDS
D.MySQL
答案: A B C
★难度:易
参见章节:第6章 第2节
考核知识点:云数据库概述(下)
试题解析:
109、Amazon RDS属于()
A.关系数据库
B.键值数据库
C.NoSQL数据库
D.数据仓库
答案: A
★难度:中
参见章节:第6章 第2节
考核知识点:云数据库概述(下)
试题解析:
110、Amazon SimpleDB属于()
A.关系数据库
B.键值数据库
C.NoSQL数据库
D.数据仓库
答案: B
★难度:中
参见章节:第6章 第2节
考核知识点:云数据库概述(下)
试题解析:
111、Amazon DynamoDB属于()
A.关系数据库
B.键值数据库
C.NoSQL数据库
D.数据仓库
答案: C
★难度:中
参见章节:第6章 第2节
考核知识点:云数据库概述(下)
试题解析:
112、Amazon Redshift属于()
A.关系数据库
B.键值数据库
C.NoSQL数据库
D.数据仓库
答案: D
★难度:中
参见章节:第6章 第2节
考核知识点:云数据库概述(下)
试题解析:
113、Google Cloud SQL是谷歌公司推出的基于()的云数据库
A.MySQL
B.SQL Server
C.Hbase
D.Oracle
答案: A
★难度:中
参见章节:第6章 第2节
考核知识点:云数据库概述(下)
试题解析:
114、以下哪些不是UMP系统中的角色()
A.Controller服务器
B.Procy服务器
C.Master服务器
D.Agent服务器
答案: C
★难度:易
参见章节:第6章 第3节
考核知识点:云数据库系统架构(上)
试题解析:
115、UMP系统依赖的开源组件包括()
A.Mnesia
B.LVS
C.RabbitMQ
D.Zookeeper
答案: A B C D
★难度:易
参见章节:第6章 第3节
考核知识点:云数据库系统架构(上)
试题解析:
116、UMP系统借助于()来实现集群内部的负载均衡
A.Mnesia
B.LVS
C.RabbitMQ
D.Zookeeper
答案: B
★难度:中
参见章节:第6章 第3节
考核知识点:云数据库系统架构(上)
试题解析:
117、UMP系统借助于()来实现高效和可靠的协同工作
A.Mnesia
B.LVS
C.RabbitMQ
D.Zookeeper
答案: D
★难度:中
参见章节:第6章 第3节
考核知识点:云数据库系统架构(上)
试题解析:
118、UMP系统借助于()来实现各个节点之间的通信
A.Mnesia
B.LVS
C.RabbitMQ
D.Zookeeper
答案: C
★难度:中
参见章节:第6章 第3节
考核知识点:云数据库系统架构(上)
试题解析:
119、UMP系统借助于()来实现分布式数据库服务
A.Mnesia
B.LVS
C.RabbitMQ
D.Zookeeper
答案: A
★难度:中
参见章节:第6章 第3节
考核知识点:云数据库系统架构(上)
试题解析:
120、UMP系通过()来实现实现集群成员管理、元数据存储、MySQL实例管理、故障恢复、备份、迁移、扩容等功能
A.Controller服务器
B.Procy服务器
C.愚公系统
D.Agent服务器
答案: A
★难度:中
参见章节:第6章 第3节
考核知识点:云数据库系统架构(上)
试题解析:
121、UMP系通过()来实现实现数据路由的基本功能
A.Controller服务器
B.Procy服务器
C.愚公系统
D.Agent服务器
答案: B
★难度:中
参见章节:第6章 第3节
考核知识点:云数据库系统架构(上)
试题解析:
122、UMP系通过()来实现实现管理每台物理机上的MySQL实例
A.Controller服务器
B.Procy服务器
C.愚公系统
D.Agent服务器
答案: D
★难度:中
参见章节:第6章 第3节
考核知识点:云数据库系统架构(上)
试题解析:
123、UMP系通过()来实现实现在不停机的情况下动态扩容、缩容和迁移
A.Controller服务器
B.Procy服务器
C.愚公系统
D.Agent服务器
答案: C
★难度:中
参见章节:第6章 第3节
考核知识点:云数据库系统架构(上)
试题解析:
124、UMP系统的哪个功能实现了负载均衡()
A.读写分离
B.资源隔离
C.资源调度
D.可扩展
答案: A
★难度:易
参见章节:第6章 第4节
考核知识点:云数据库系统架构(下)
试题解析:
125、UMP系统中面对多个小规模用户如何进行资源调度()
A.可以共享同一个MySQL实例
B.每个用户独占一个MySQL实例
C.会占用多个独立的MySQL实例
D.随机分配MySQL实例
答案: A
★难度:易
参见章节:第6章 第4节
考核知识点:云数据库系统架构(下)
试题解析:
126、UMP系统中面对中等规模用户如何进行资源调度()
A.可以共享同一个MySQL实例
B.每个用户独占一个MySQL实例
C.会占用多个独立的MySQL实例
D.随机分配MySQL实例
答案: B
★难度:中
参见章节:第6章 第4节
考核知识点:云数据库系统架构(下)
试题解析:
127、UMP系统中面对分库分表用户如何进行资源调度()
A.可以共享同一个MySQL实例
B.每个用户独占一个MySQL实例
C.会占用多个独立的MySQL实例
D.随机分配MySQL实例
答案: C
★难度:难
参见章节:第6章 第4节
考核知识点:云数据库系统架构(下)
试题解析:
128、以下亚马逊的产品中哪个是关系数据库
A.RDS
B.SimpleDB
C.DynamoDB
D.Redshift
答案: A
★难度:中
参见章节:第6章 第5节
考核知识点:AWS和云数据库
试题解析:
129、以下亚马逊的产品中哪个是键值数据库
A.RDS
B.SimpleDB
C.DynamoDB
D.Redshift
答案: B
★难度:中
参见章节:第6章 第5节
考核知识点:AWS和云数据库
试题解析:
130、以下亚马逊的产品中哪个是NoSQL数据库
A.RDS
B.SimpleDB
C.DynamoDB
D.Redshift
答案: C
★难度:中
参见章节:第6章 第5节
考核知识点:AWS和云数据库
试题解析:
131、以下亚马逊的产品中哪个是数据仓库
A.ElastiCache
B.RDS
C.DynamoDB
D.Redshift
答案: D
★难度:中
参见章节:第6章 第5节
考核知识点:AWS和云数据库
试题解析:
132、以下亚马逊的产品中哪个是分布式内存缓存
A.ElastiCache
B.RDS
C.DynamoDB
D.Redshift
答案: A
★难度:中
参见章节:第6章 第5节
考核知识点:AWS和云数据库
试题解析:
133、以下亚马逊的产品中哪个属于存储部分
A.EC2
B.EBS
C.S3
D.ELB
答案: B C
★难度:中
参见章节:第6章 第5节
考核知识点:AWS和云数据库
试题解析:
134、以下亚马逊的产品中哪个属于计算部分
A.EC2
B.EBS
C.S3
D.ELB
答案: A D
★难度:中
参见章节:第6章 第5节
考核知识点:AWS和云数据库
试题解析:
135、SQL Azure体系结构层中哪层将用户的请求转化为Azure内部的TDS格式流
A.Client Layer
B.Services Layer
C.Platform Layer
D.Infrastructure Layer
答案: A
★难度:易
参见章节:第6章 第6节
考核知识点:微软云数据库SQL Azure
试题解析:
136、SQL Azure体系结构层中哪层相当于网关,相当于普通Web系统的逻辑层
A.Client Layer
B.Services Layer
C.Platform Layer
D.Infrastructure Layer
答案: B
★难度:易
参见章节:第6章 第6节
考核知识点:微软云数据库SQL Azure
试题解析:
137、SQL Azure体系结构层中哪层是存储节点集群,相当于普通Web系统的数据库层
A.Client Layer
B.Services Layer
C.Platform Layer
D.Infrastructure Layer
答案: C
★难度:易
参见章节:第6章 第6节
考核知识点:微软云数据库SQL Azure
试题解析:
138、SQL Azure体系结构层中哪层是硬件和操作系统
A.Client Layer
B.Services Layer
C.Platform Layer
D.Infrastructure Layer
答案: D
★难度:易
参见章节:第6章 第6节
考核知识点:微软云数据库SQL Azure
试题解析:
139、关于分布式并行编程,以下说法错误的是()。
A.“摩尔定律”,CPU性能大约每隔12个月翻一番
B.“摩尔定律”逐渐失效后,人们开始借助于分布式并行编程来提高程序性能
C.分布式程序运行在大规模计算机集群上,可以并行执行大规模数据处理任务,从而获得海量的计算能力
D.谷歌公司最先提出了分布式并行编程模型MapReduce
答案: A
★难度:易
参见章节:第7章 第1节
考核知识点:MapReduce概述
试题解析:
140、MapReduce与传统并行计算框架的对比中,说法正确的是()。
A.MapReduce属于共享式集群架构,容错性好
B.传统并行计算框架比MapReduce硬件更加便宜
C.传统并行计算框架适用于实时、细粒度计算
D.MapReduce适用于数据密集型,传统并行计算框架适用于计算密集型
答案: C D
★难度:中
参见章节:第7章 第1节
考核知识点:MapReduce概述
试题解析:MapReduce属于非共享式,便宜
141、MapReduce设计的一个理念就是(),因为移动数据需要大量的网络传输开销。
A.数据向计算靠拢
B.计算向数据靠拢
C.计算向网络靠拢
D.计算与数据并行
答案: B
★难度:易
参见章节:第7章 第1节
考核知识点:MapReduce概述
试题解析:
142、关于MapReduce,说法正确的是()。
A.MapReduce框架采用了Master/Slave架构,包括一个Master和若干个Slave
B.Hadoop框架是用Java实现的,因此MapReduce应用程序要用Java来写
C.MapReduce模型的核心是Map函数和Reduce函数
D.MapReduce将一个存储在分布式文件系统中的大规模数据集,切分成许多独立的分片
答案: A C D
★难度:难
参见章节:第7章 第1节
考核知识点:MapReduce概述
试题解析:
143、Map Task和Reduce Task均由()启动。
A.Client
B.Job Tracker
C.Task
D.Task Tracker
答案: D
★难度:易
参见章节:第7章 第1节
考核知识点:MapReduce概述
试题解析:
144、MapReduce中()会周期性地通过“心跳”将本节点上资源的使用情况和任务的运行进度汇报给JobTracker,同时接收JobTracker 发送过来的命令并执行相应的操作。
A.Client
B.Job Tracker
C.Task
D.Task Tracker
答案: D
★难度:易
参见章节:第7章 第1节
考核知识点:MapReduce概述
试题解析:
145、关于MapReduce工作流程,说法错误的是()。
A.不同的Map任务之间不会进行通信
B.不同的Reduce任务之间不会发生任何信息交换
C.用户可以显式地从一台机器向另一台机器发送消息
D.所有的数据交换都是通过MapReduce框架自身去实现的
答案: C
★难度:易
参见章节:第7章 第2节
考核知识点:MapReduce工作流程
试题解析:用户不能显式地从一台机器向另一台机器发送消息
146、MapReduce中最优的Reduce任务个数取决于集群中可用的()的数目。
A.Split
B.Slot
C.Map
D.Shuffle
答案: B
★难度:易
参见章节:第7章 第2节
考核知识点:MapReduce工作流程
试题解析:
147、关于MapReduce中Shuffle过程,说法错误的是()。
A.Shuffle过程中为每个Map任务分配一个缓存
B.Shuffle过程中分区默认采用哈希函数
C.Shulle过程的合并会改变最终结果
D.Shuffle过程在Reduce端首先从Map端领取结果,然后执行归并操作,最后输送给Reduce任务进行处理。
答案: C
★难度:中
参见章节:第7章 第2节
考核知识点:MapReduce工作流程
试题解析:
148、关于Map端Shuffle过程中的合并与归并,说法正确的是()。
A.两个键值对<“a”,1>和<“a”,1>,如果合并,会得到<“a”,2>
B.合并不会改变最终结果
C.两个键值对<“a”,1>和<“a”,1>,如果归并,会得到<“a”,2>
D.两个键值对<“a”,1>和<“a”,1>,如果归并,会得到<“a”,<1,1>>
答案: A B D
★难度:难
参见章节:第7章 第2节
考核知识点:MapReduce工作流程
试题解析:两个键值对<“a”,1>和<“a”,1>,如果合并,会得到<“a”,2>,
如果归并,会得到<“a”,<1,1>>
149、关于Reduce端Shuffle过程,说法正确的是()。
A.Reduce领取数据先放入缓存,来自不同Map机器,先合并,再归并,写入磁盘
B.多个溢写文件归并最后只能形成一个大文件
C.当数据很少时,也要溢写到磁盘
D.Reduce任务通过RPC向JobTracker询问Map任务是否已经完成
答案: D
★难度:难
参见章节:第7章 第2节
考核知识点:MapReduce工作流程
试题解析:A:Reduce领取数据先放入缓存,来自不同Map机器,先归并,再合并,写入磁盘
B:多个溢写文件归并成一个或多个大文件
C:当数据很少时,不需要溢写到磁盘
150、MapReduce将输入文件切分成M个分片,Master将其中()个分片分给处于空闲状态的N个Worker来处理。
A.M
B.N
C.M-1
D.N-1
答案: A
★难度:易
参见章节:第7章 第3节
考核知识点:实例分析:WordCount
试题解析:
151、MapReduce可以解决哪些计算问题()。
A.矩阵乘法
B.关系代数运算
C.聚合运算
D.关系投影运算
答案: A B C D
★难度:易
参见章节:第7章 第4节
考核知识点:MapReduce的具体应用
试题解析:
152、MapReduce处理关系的()运算时,Map过程需要记录元组的信息及该元组来源。
A.投影
B.差
C.交
D.并
答案: B
★难度:易
参见章节:第7章 第4节
考核知识点:MapReduce的具体应用
试题解析:
153、词频计算就是典型的()运算。
A.关系连接
B.分组聚合
C.关系代数
D.矩阵
答案: B
★难度:易
参见章节:第7章 第4节
考核知识点:MapReduce的具体应用
试题解析:
154、MapReduce的main函数中设置输出类型的方法有()。
A.setOutputKeyClass
B.setOutputClass
C.setOutputValueClass
D.setKeyValueClass
答案: A C
★难度:中
参见章节:第7章 第5节
考核知识点:MapReduce编程实践
试题解析:
155、Hadoop中执行MapReduce任务不含哪种方式()。
A.Mahout
B.Hadoop jar
C.Shell脚本
D.Python
答案: A
★难度:易
参见章节:第7章 第5节
考核知识点:MapReduce编程实践
试题解析:
156、很多企业为了支持决策分析而构建的数据仓库系统,其中存放的大量历史数据就是()数据。技术人员可以利用数据挖掘和OLAP分析工具从静态数据中找到对企业有价值的信息。
A.动态
B.存量
C.实时
D.静态
答案: D
★难度:易
参见章节:第8章 第1节
考核知识点:流计算概述
试题解析:
157、静态数据采取()计算模式
A.批量
B.实时
C.大数据
D.动态
答案: A
★难度:易
参见章节:第8章 第1节
考核知识点:流计算概述
试题解析:
158、流数据采取()计算模式
A.批量
B.实时
C.大数据
D.动态
答案: B
★难度:易
参见章节:第8章 第1节
考核知识点:流计算概述
试题解析:
159、流计算系统的需求有()。
A.实时性
B.廉价
C.高性能
D.高带宽
E.分布式
答案: A C E
★难度:中
参见章节:第8章 第1节
考核知识点:流计算概述
试题解析:
160、以下属于流计算框架的是()。
A.Twitter Storm
B.Spark
C.MapReduce
D.Pregel
E.Yahoo! S4
答案: A B E
★难度:易
参见章节:第8章 第1节
考核知识点:流计算概述
试题解析:
161、传统的数据处理流程的前提是()。
A.存储的数据是旧的
B.存储的数据是实时的
C.需要用户主动发出查询
D.不需要用户主动发出查询
答案: A C
★难度:易
参见章节:第8章 第2节
考核知识点:流计算处理流程
试题解析:
162、流计算处理流程三个主要阶段是()。
A.实时采集
B.实时存储
C.实时计算
D.实时查询
答案: A C D
★难度:易
参见章节:第8章 第2节
考核知识点:流计算处理流程
试题解析:
163、日志的获取属于流计算的哪个步骤()。
A.实时采集
B.实时存储
C.实时计算
D.实时查询
答案: A
★难度:易
参见章节:第8章 第2节
考核知识点:流计算处理流程
试题解析:
164、流计算的采集阶段需要保证()。
A.实时性
B.大量
C.低延迟
D.稳定可靠
答案: A C D
★难度:易
参见章节:第8章 第2节
考核知识点:流计算处理流程
试题解析:
165、流计算是针对流数据的实时计算,可以应用在()场景中
A.广告投放
B.气候模拟预测
C.机器翻译
D.推荐系统
答案: A B C D
★难度:易
参见章节:第8章 第3节
考核知识点:流计算应用
试题解析:
166、针对流数据,“量子恒道”开发了海量数据实时流计算框架()。
A.Time Tunnel
B.Spark
C.Super Mario
D.Storm
答案: C
★难度:易
参见章节:第8章 第3节
考核知识点:流计算应用
试题解析:
167、针对流数据,“量子恒道”可处理每天()级的实时流数据
A.TB
B.PB
C.GB
D.MB
答案: A
★难度:易
参见章节:第8章 第3节
考核知识点:流计算应用
试题解析:
168、Storm框架不适用于哪个领域()。
A.实时分析
B.实时交通
C.远程RPC
D.历史记录查询
答案: D
★难度:易
参见章节:第8章 第4节
考核知识点:流计算开源框架Storm(1)
试题解析:
169、Storm框架在处理()上比MapReduce更有优势。
A.静态数据
B.流数据
C.批量数据
D.网络数据
答案: B
★难度:易
参见章节:第8章 第4节
考核知识点:流计算开源框架Storm(1)
试题解析:
170、批处理系统关注(),流处理系统关注()。
A.吞吐率,延时
B.延时,吞吐率
C.延时,速度
D.速度,吞吐率
答案: A
★难度:易
参见章节:第8章 第4节
考核知识点:流计算开源框架Storm(1)
试题解析:
171、以下哪个不属于Storm的术语()。
A.
答案: Strem Groupings Topology Storm Bolts
★难度:易
参见章节:第8章 第5节
考核知识点:流计算开源框架Storm(2)
试题解析:
172、关于Strom中Bolt说法错误的是()。
A.Bolt可以执行过滤、函数操作、Join、操作数据库等任何操作
B.Bolt是一个被动的角色,Spout是一个主动的角色
C.Bolt不仅可以处理Tuple还可以创建新的Tuple
D.Bolt是Streams的状态转换过程的抽象含义
答案: C
★难度:中
参见章节:第8章 第5节
考核知识点:流计算开源框架Storm(2)
试题解析:
173、Storm中Topology里面组件可以是()。
A.Spout
B.Stream
C.Tuple
D.Bolt
答案: A D
★难度:中
参见章节:第8章 第5节
考核知识点:流计算开源框架Storm(2)
试题解析:
174、关于Storm中Topology说法错误的是()。
A.Topology可视为流转换图
B.Topology可以被提交到Storm集群执行
C.在Topology里面可以指定每个组件的并行度, Storm会在集群里面分配那么多的线程来同时计算
D.Topology里面的每一个组件都是串行运行的
答案: D
★难度:难
参见章节:第8章 第5节
考核知识点:流计算开源框架Storm(2)
试题解析:
175、Storm中如果要让所有的Tuple都发送到同一个Task中,应该采用哪种Stream Groupings()。
A.ShuffleGrouping
B.AllGrouping
C.GlobalGrouping
D.FiedlsGrouping
答案: C
★难度:中
参见章节:第8章 第5节
考核知识点:流计算开源框架Storm(2)
试题解析:
176、Storm中如果要让每一个Task都会收到所有的Tuple,应该采用哪种Stream Groupings()。
A.ShuffleGrouping
B.AllGrouping
C.GlobalGrouping
D.FiedlsGrouping
答案: B
★难度:中
参见章节:第8章 第5节
考核知识点:流计算开源框架Storm(2)
试题解析:
177、Storm中如果要保证相同字段的Tuple分配到同一个Task中,应该采用哪种Stream Groupings()。
A.ShuffleGrouping
B.AllGrouping
C.GlobalGrouping
D.FiedlsGrouping
答案: D
★难度:易
参见章节:第8章 第5节
考核知识点:流计算开源框架Storm(2)
试题解析:
178、Storm中如果要随机分发Stream中的Tuple,保证每个Bolt的Task接收Tuple数量大致一致,应该采用哪种Stream Groupings()。
A.ShuffleGrouping
B.AllGrouping
C.GlobalGrouping
D.FiedlsGrouping
答案: A
★难度:易
参见章节:第8章 第5节
考核知识点:流计算开源框架Storm(2)
试题解析:
179、关于Storm和Hadoop说法正确的是()。
A.
答案: 两者都采用了Master-Worker的节点方式 两者运行的作业都是最终完成计算后退出运行 两者都采用了Zookeeper来作为分布式协调组件 两者运行的都是MapReduce任务
★难度:中
参见章节:第8章 第5节
考核知识点:流计算开源框架Storm(2)
试题解析:
180、关于Storm框架内说法错误的是()。
A.
答案: executor是产生于worker进程内部的线程,会执行同一个组件的一个或者多个task 每个worker进程都属于一个特定的Topology executor数目大于等于task的数目 在Topology的生命周期中,每个组件的task数目是不会发生变化的
★难度:中
参见章节:第8章 第5节
考核知识点:流计算开源框架Storm(2)
试题解析:
181、关于Storm框架内说法错误的是()。
A.
答案: 每个worker对Topology中的每个组件仅运行一个executor线程来提供task的运行服务 每个Supervisor节点的worker可以有多个 Storm中实际的数据处理由task完成 executor会执行同一个组件的一个或者多个task
★难度:中
参见章节:第8章 第5节
考核知识点:流计算开源框架Storm(2)
试题解析:
182、在Storm的工作流程中,对于Supervisor说法错误的是()。
A.Supervisor会去Zookeeper集群上认领自己的Task
B.Supervisor节点首先将提交的Topology进行分片,分成一个个Task,分配给相应的Nimbus
C.Supervisor会将Task和相关的信息提交到Zookeeper集群上
D.Supervisor会通知自己的Worker进程进行Task的处理
答案: B
★难度:中
参见章节:第8章 第5节
考核知识点:流计算开源框架Storm(2)
试题解析:
183、Storm中我们可以使用()命令检查Storm是否成功启动,若成功启动会显示 nimbus、supervisor、QuorumPeeMain。
A.
答案: chown supervior jps storm
★难度:易
参见章节:第8章 第6节
考核知识点:流计算开源框架Storm(3)
试题解析:
184、Storm如果需要关闭,可以切换到终端窗口,按快捷键()进行终止进程。
A.
答案: Ctrl+W Ctrl+C Ctrl+Q ESC
★难度:易
参见章节:第8章 第6节
考核知识点:流计算开源框架Storm(3)
试题解析:
185、storm jar负责连接到()并且上传jar文件
A.
答案: supervisor nimbus bolt spout
★难度:易
参见章节:第8章 第6节
考核知识点:流计算开源框架Storm(3)
试题解析:
186、以下哪些应用场景属于大规模图或者网络的呈现形式?()
A.社交网络
B.传染病传播途径
C.交通事故对路网的影响
D.广告推荐
答案: A B C
★难度:中
参见章节:第9章 第1节
考核知识点:图计算简介
试题解析:
187、以下图计算软件哪种属于基于遍历算法的、实时的图数据库
A.Neo4j
B.OrientDB
C.Infinite Graph
D.Pregel
答案: A B C
★难度:中
参见章节:第9章 第1节
考核知识点:图计算简介
试题解析:
188、以下图计算软件哪种属于以图顶点为中心的、基于消息传递批处理的并行引擎
A.Giraph
B.Pregel
C.Hama
D.DEX
答案: A B C
★难度:中
参见章节:第9章 第1节
考核知识点:图计算简介
试题解析:
189、哪些是谷歌在后Hadoop时代的新“三驾马车”()
A.MapReduce
B.Caffeine
C.Dremel
D.Pregel
答案: B C D
★难度:易
参见章节:第9章 第1节
考核知识点:图计算简介
试题解析:
190、Pregel作为分布式图计算的计算框架,主要用于()
A.图遍历
B.最短路径
C.PageRank计算
D.MapReduce
答案: A B C
★难度:易
参见章节:第9章 第1节
考核知识点:图计算简介
试题解析:
191、Pregel计算模型以()作为输入
A.有向图
B.无向图
C.矢量图
D.树
答案: A
★难度:易
参见章节:第9章 第2节
考核知识点:Pregel图计算模型
试题解析:
192、Pregel计算模型中每个顶点ID的类型是()
A.String
B.Int
C.Double
D.结构体
答案: A
★难度:易
参见章节:第9章 第2节
考核知识点:Pregel图计算模型
试题解析:
193、对于不同顶点之间的信息交换,Pregel采用了()
A.远程数据读取
B.共享内存
C.纯消息传递模型
D.共享消息
答案: C
★难度:难
参见章节:第9章 第2节
考核知识点:Pregel图计算模型
试题解析:
194、Pregel中顶点之间的通讯的每条消息都包含了()
A.消息值
B.需要到达的目标顶点ID
C.起始点ID
D.时间
答案: A B
★难度:中
参见章节:第9章 第3节
考核知识点:Pregel的C++ API
试题解析:
195、以下哪个应用适合用Pregel来解决()
A.数据库的笛卡尔积
B.单元最短路径
C.二分匹配
D.求极值
答案: B C
★难度:易
参见章节:第9章 第5节
考核知识点:Pregel的应用实例
试题解析:
196、哪些属于数据可视化的重要作用()
A.分析数据
B.采集数据
C.辅助理解数据
D.观测跟踪数据
答案: A C D
★难度:易
参见章节:第10章 第1节
考核知识点:可视化概述
试题解析:
197、以下哪些是数据可视化信息图表工具()
A.大数据魔镜
B.D3
C.Google Chart API
D.Google Fusion Tables
答案: A B C
★难度:易
参见章节:第10章 第2节
考核知识点:可视化工具
试题解析:
198、以下哪些是数据可视化地图工具()
A.Google Fusion Tables
B.Modest Maps
C.Leaflet
D.Google Chart API
答案: A B C
★难度:易
参见章节:第10章 第2节
考核知识点:可视化工具
试题解析:
199、以下哪些是数据可视化时间线工具()
A.Echarts
B.Timetoast
C.Xtimeline
D.R
答案: B C
★难度:易
参见章节:第10章 第2节
考核知识点:可视化工具
试题解析:
200、以下哪些是数据可视化分析工具()
A.R
B.Weka
C.Gephi
D.Tableau
答案: A B C
★难度:易
参见章节:第10章 第2节
考核知识点:可视化工具
试题解析:
201、Echarts是哪种可视化工具()
A.信息图表
B.地图工具
C.时间线工具
D.分析工具
答案: A
★难度:易
参见章节:第10章 第2节
考核知识点:可视化工具
试题解析:
202、Google Chart API是哪种可视化工具()
A.信息图表
B.地图工具
C.时间线工具
D.分析工具
答案: A
★难度:易
参见章节:第10章 第2节
考核知识点:可视化工具
试题解析:
203、Google Fusion Tables是哪种可视化工具()
A.信息图表
B.地图工具
C.时间线工具
D.分析工具
答案: B
★难度:易
参见章节:第10章 第2节
考核知识点:可视化工具
试题解析:
204、Xtimeline是哪种可视化工具()
A.信息图表
B.地图工具
C.时间线工具
D.分析工具
答案: C
★难度:易
参见章节:第10章 第2节
考核知识点:可视化工具
试题解析:
205、Weka是哪种可视化工具()
A.信息图表
B.地图工具
C.时间线工具
D.分析工具
答案: D
★难度:易
参见章节:第10章 第2节
考核知识点:可视化工具
试题解析:
206、R是哪种可视化工具()
A.信息图表
B.地图工具
C.时间线工具
D.分析工具
答案: D
★难度:易
参见章节:第10章 第2节
考核知识点:可视化工具
试题解析:
207、Gephi是哪种可视化工具()
A.信息图表
B.地图工具
C.时间线工具
D.分析工具
答案: D
★难度:易
参见章节:第10章 第2节
考核知识点:可视化工具
试题解析:
208、Modest Maps是哪种可视化工具()
A.信息图表
B.地图工具
C.时间线工具
D.分析工具
答案: B
★难度:易
参见章节:第10章 第2节
考核知识点:可视化工具
试题解析:
209、Leaflet是哪种可视化工具()
A.信息图表
B.地图工具
C.时间线工具
D.分析工具
答案: B
★难度:易
参见章节:第10章 第2节
考核知识点:可视化工具
试题解析:
210、Timetoast是哪种可视化工具()
A.信息图表
B.地图工具
C.时间线工具
D.分析工具
答案: C
★难度:易
参见章节:第10章 第2节
考核知识点:可视化工具
试题解析:
211、D3是哪种可视化工具()
A.信息图表
B.地图工具
C.时间线工具
D.分析工具
答案: A
★难度:易
参见章节:第10章 第2节
考核知识点:可视化工具
试题解析:
二、主观部分:
(一)、填空部分
1、数据产生方式经历的三个阶段分别是______、______、______。
答案: 运营式系统阶段 , 用户原创内容阶段 , 感知式系统阶段
★难度:中
参见章节:第1章 第1节
考核知识点:大数据时代背景
试题解析:
2、科学研究先后经历了实验、理论、计算和______四种范式。
答案: 数据
★难度:中
参见章节:第1章 第2节
考核知识点:大数据的影响与应用
试题解析:
3、大数据处理流程中的数据采集分为两层,分别是______层和______层。
答案: 大数据智能感知 , 基础支撑
★难度:易
参见章节:第1章 第3节
考核知识点:大数据的关键技术
试题解析:
4、大数据产业的产业链环节包括IT基础设施层、数据源层、______、______、数据平台层和数据应用层
答案: 数据管理层 , 数据分析层
★难度:易
参见章节:第1章 第4节
考核知识点:大数据产业及其相关技术
试题解析:
5、Hadoop是基于______语言开发的,具有很好的跨平台特性
答案: JAVA
★难度:易
参见章节:第2章 第1节
考核知识点:Hadoop概述
试题解析:
6、______是Hadoop项目中作业流调度系统
答案: Oozie
★难度:中
参见章节:第2章 第2节
考核知识点:Hadoop项目结构
试题解析:
7、Hadoop安装配置中初始化文件系统命令为 “hadoop namenode -______”
答案: format
★难度:中
参见章节:第2章 第3节
考核知识点:Hadoop的安装与使用
试题解析:
8、MapReduce的作业主要包括______密集工作和______密集工作
答案: IO , CPU
★难度:中
参见章节:第2章 第4节
考核知识点:Hadoop集群的部署与使用
试题解析:
9、分布式文件系统中______是数据读写的基本单元
答案: 块或者数据块
★难度:易
参见章节:第3章 第1节
考核知识点:分布式文件系统简介
试题解析:
10、HDFS开源实现了______的基本思想
答案: GFS
★难度:易
参见章节:第3章 第2节
考核知识点:HDFS简介
试题解析:
11、用MapReduce处理大量小文件时,会产生过的______任务,线程管理开销会大大增加
答案: Map
★难度:易
参见章节:第3章 第2节
考核知识点:HDFS简介
试题解析:
12、HDFS量大最主要组件是______和______
答案: NameNode(名称节点)或者DataNode(数据节点)
★难度:易
参见章节:第3章 第3节
考核知识点:HDFS相关概念
试题解析:
13、HDFS中SecondaryNameNode通过HTTP的______请求方式从NameNode上获取到FsImage和EditLog文件,并下载到本地的相应目录下;
答案: Get
★难度:易
参见章节:第3章 第3节
考核知识点:HDFS相关概念
试题解析:
14、HDFS中SecondaryNameNode将下载下来的FsImage载入到内存,然后一条一条地执行EditLog文件中的各项更新操作,使得内存中的______保持最新
答案: FsImage
★难度:难
参见章节:第3章 第3节
考核知识点:HDFS相关概念
试题解析:
15、数据节点是分布式文件系统HDFS的工作节点,负责数据的______和读取
答案: 存储
★难度:易
参见章节:第3章 第3节
考核知识点:HDFS相关概念
试题解析:
16、名称节点作为中心服务器,负责管理______的命名空间及客户端对文件的访问。
答案: 文件系统
★难度:易
参见章节:第3章 第4节
考核知识点:HDFS体系结构
试题解析:
17、HDFS采用了主从结构模型,一个HDFS集群包括一个______节点和若干个______节点。
答案: 名称 , 数据
★难度:易
参见章节:第3章 第4节
考核知识点:HDFS体系结构
试题解析:
18、HDFS采用了______结构模型
答案: 主从或Master/Slave
★难度:易
参见章节:第3章 第4节
考核知识点:HDFS体系结构
试题解析:
19、所有的HDFS通信协议都是构建在______协议基础之上的
答案: TCP/IP
★难度:中
参见章节:第3章 第4节
考核知识点:HDFS体系结构
试题解析:
20、客户端与数据节点的交互是通过______来实现的。
答案: RPC
★难度:中
参见章节:第3章 第4节
考核知识点:HDFS体系结构
试题解析:
21、HDFS采用______方式对数据进行冗余存储
答案: 多副本
★难度:易
参见章节:第3章 第5节
考核知识点:HDFS存储原理
试题解析:
22、HDFS读数据过程中读取请求获得的输入流是______
答案: FSDataInputStream
★难度:中
参见章节:第3章 第6节
考核知识点:数据读写过程
试题解析:
23、hadoop fs -______ <path>命令可以显示<path>指定的文件的详细信息
答案: ls
★难度:中
参见章节:第3章 第7节
考核知识点:HDFS编程实践
试题解析:
24、BigTable采用______提供协同服务管理
答案: Chubby
★难度:难
参见章节:第4章 第1节
考核知识点:HBase概述
试题解析:
25、关系数据库是基于行模式存储的,而HBase是基于______存储的
答案: 列
★难度:易
参见章节:第4章 第1节
考核知识点:HBase概述
试题解析:
26、Hbase中一个单元格可以视为一个“四维坐标”,即[______,______,______,______]
答案: 行键 , 列族 , 列限定符 , 时间戳
★难度:中
参见章节:第4章 第2节
考核知识点:HBase数据模型(上)
试题解析:
27、HBase中负责存储和维护分配给自己的Region,处理来自客户端的读写请求的是______服务器
答案: Region
★难度:中
参见章节:第4章 第4节
考核知识点:Hbase的实现原理
试题解析:
28、HBase中负责管理和维护HBase表的分区信息的是______服务器
答案: Master
★难度:中
参见章节:第4章 第4节
考核知识点:Hbase的实现原理
试题解析:
29、Hbase中当用户读取数据时,Region服务器会首先访问______缓存,如果找不到,再去磁盘上面的______中寻找
答案: MemStore , StoreFile
★难度:中
参见章节:第4章 第5节
考核知识点:Hbase运行机制
试题解析:
30、Hbase中常用Shell命令中______命令可以创建表
答案: create
★难度:易
参见章节:第4章 第7节
考核知识点:Hbase编程实践
试题解析:
31、NoSQL数据库的四大类型是______数据库、______数据库______数据库______数据库
答案: 键值 , 列族 , 文档 , 图
★难度:中
参见章节:第5章 第3节
考核知识点:NoSQL的四大类型
试题解析:
32、NoSQL的CAP理论中当把所有与事务相关的内容都放到同一台机器上这是放弃了______性
答案: 分区容忍
★难度:中
参见章节:第5章 第4节
考核知识点:NoSQL的三大基石
试题解析:
33、SQL中的table对应与MongoDB中的______
答案: collection/集合
★难度:易
参见章节:第5章 第5节
考核知识点:文档数据库MongoDB
试题解析:
34、RDBMS中的表格对应MongoDB的______
答案: 集合
★难度:易
参见章节:第5章 第5节
考核知识点:文档数据库MongoDB
试题解析:
35、UMP系统采用______机制来管理数据库服务器上的CPU、内存、磁盘等计算资源
答案: 资源池
★难度:难
参见章节:第6章 第4节
考核知识点:云数据库系统架构(下)
试题解析:
36、MapReduce采用“______”策略,一个存储在分布式文件系统中的大规模数据集,会被切分成许多独立的分片,这些分片可以被多个______任务并行处理。
答案: 分而治之 , Map
★难度:中
参见章节:第7章 第1节
考核知识点:MapReduce概述
试题解析:
37、MapReduce将复杂的、运行于大规模集群上的并行计算过程高度地抽象到了两个函数:______和______
答案: Map , Reduce
★难度:易
参见章节:第7章 第1节
考核知识点:MapReduce概述
试题解析:
38、对于MapReduce而言,处理单位是______,这是一个逻辑概念,只包含一些元数据信息。
答案: Split
★难度:易
参见章节:第7章 第2节
考核知识点:MapReduce工作流程
试题解析:
39、Hadoop为每个split创建一个______任务,split的多少决定了______任务的数目
答案: Map , Map
★难度:易
参见章节:第7章 第2节
考核知识点:MapReduce工作流程
试题解析:
40、MapReduce处理关系的选择运算时,Map对于关系R中的每个元组t ,检测是否是满足条件的所需元组,如果满足条件,则输出键值对______。
答案: <t,t>
★难度:易
参见章节:第7章 第4节
考核知识点:MapReduce的具体应用
试题解析:
41、MapReduce的main函数中添加MyMapper类的方法为job.______(MyMapper.class);
答案: setMapperClass
★难度:难
参见章节:第7章 第5节
考核知识点:MapReduce编程实践
试题解析:
42、Storm将流数据Stream描述成一个无限的______序列,这些序列会以分布式的方式并行地创建和处理。
答案: Tuple或元组
★难度:易
参见章节:第8章 第5节
考核知识点:流计算开源框架Storm(2)
试题解析:
43、Storm中Bolt接口中有一个______方法,在接收到消息之后会调用此函数,用户可以在此方法中执行自己的处理逻辑。
答案: execute或者Tuple input
★难度:难
参见章节:第8章 第5节
考核知识点:流计算开源框架Storm(2)
试题解析:
44、如果说MapReduce使用的是Map和Reduce的抽象,那么Storm使用的是______和______的抽象。
答案: Spout , Bolt
★难度:易
参见章节:第8章 第6节
考核知识点:流计算开源框架Storm(3)
试题解析:
45、Storm进行单词统计时,分割后的单词通过Storm.______方法以Tuple的形式发送给订阅了该Stream的Bolt进行接收和处理
答案: emit
★难度:难
参见章节:第8章 第6节
考核知识点:流计算开源框架Storm(3)
试题解析:
46、通过命令”sudo ______ -R hadoop:hadoop ./zookeeper “可以让hadoop用户拥有zookeeper目录下的所有文件的权限
答案: chown
★难度:难
参见章节:第8章 第6节
考核知识点:流计算开源框架Storm(3)
试题解析:
47、Pregel中的Compute()方法可以调用______方法来修改当前顶点的值
答案: MutableValue
★难度:中
参见章节:第9章 第3节
考核知识点:Pregel的C++ API
试题解析:
48、请简述对于全局拓扑改变,Pregel采用了______机制
答案: 惰性协调
★难度:难
参见章节:第9章 第3节
考核知识点:Pregel的C++ API
试题解析:
49、Pregel采用______机制来实现容错
答案: 检查点
★难度:难
参见章节:第9章 第4节
考核知识点:Pregel的体系结构
试题解析:
50、Pregel的Worker所管辖的分区的状态信息是保存在______
答案: 内存
★难度:难
参见章节:第9章 第4节
考核知识点:Pregel的体系结构
试题解析:
(二)、名词解释题
1、大数据处理流程中的数据采集。
答案: 又称数据获取,是大数据生命周期的第一个环节,通过RFID射频识别技术、传感器、交互型社交网络以及移动互联网等方式获得的各种类型的结构化、半结构化及非结构化的海量数据
★难度:易
参见章节:第1章 第3节
考核知识点:大数据的关键技术
试题解析:
2、大数据处理流程中的数据预处理。
答案: 是数据分析和挖掘的基础,是将接收数据进行清洗、集成、转换、归约等并最终加载到数据存储的过程
★难度:易
参见章节:第1章 第3节
考核知识点:大数据的关键技术
试题解析:
3、云计算
答案: 云计算实现了通过网络提供可伸缩的、廉价的分布式计算能力,用户只需要在具备网络接入条件的地方,就可以随时随地获得所需的各种IT资源
★难度:易
参见章节:第1章 第4节
考核知识点:大数据产业及其相关技术
试题解析:
4、物联网
答案: 物联网是物物相连的互联网,是互联网的延伸,它利用局部网络或互联网等通信技术把传感器、控制器、机器、人员和物等通过新的方式联在一起,形成人与物、物与物相联,实现信息化和远程管理控制
★难度:易
参见章节:第1章 第4节
考核知识点:大数据产业及其相关技术
试题解析:
5、Zookeeper
答案: Zookeeper是针对谷歌Chubby 的一个开源实现, 是高效和可靠的协同工作系统, 提供分布式锁之类的基本服务 (如统一命名 服务、 状态同步服务、 集群管理、 分布式应用配置项的管理等),用于构建分布式应用, 减轻分布式应用程序所承担的协调任务
★难度:易
参见章节:第2章 第2节
考核知识点:Hadoop项目结构
试题解析:
6、Hbase
答案: HBase是一个提供高可靠性, 高性能、 可伸缩、 实时读写、 分布式的列式数据库,一般采用HDFS 作为其底层数据存储。
★难度:易
参见章节:第2章 第2节
考核知识点:Hadoop项目结构
试题解析:
7、Hadoop项目中的Pig
答案: Pig是一种数据流语言和运行环境,适合于使用 Hadoop和 MapReduce平台来查询大型结构化数据集。
★难度:易
参见章节:第2章 第2节
考核知识点:Hadoop项目结构
试题解析:
8、Hadoop项目中的Flume
答案: Flume是Cloudera提供的一个高可用的、高可靠的,分布式的海量日志采集,聚合和传输的系统。
★难度:易
参见章节:第2章 第2节
考核知识点:Hadoop项目结构
试题解析:
9、SSH
答案: SSH为Secure Shell的缩写,是建立在应用层和传输层基础上的安全协议。
★难度:易
参见章节:第2章 第3节
考核知识点:Hadoop的安装与使用
试题解析:
10、分布式文件系统
答案: 分布式文件系统是一种通过网络实现文件在多台主机上进行分布式存储的文件系统
★难度:易
参见章节:第3章 第1节
考核知识点:分布式文件系统简介
试题解析:
11、BigTable
答案: 1.BigTable 是一个分布式存储系统,
2. 利用谷歌提出的MapReduce 分布式并行计算模型来处理海量数据,
3. 使用谷歌分布式文件系统GFS 作为底层数据存储
★难度:易
参见章节:第4章 第1节
考核知识点:HBase概述
试题解析:
12、Hbase
答案: HBase是一个高可靠、高性能、面向列、可伸缩的分布式数据库,是谷歌BigTable的开源实现,主要用来存储非结构化和半结构化的松散数据。
★难度:易
参见章节:第4章 第1节
考核知识点:HBase概述
试题解析:
13、Hbase的行键
答案: 每个HBase表都由若干行组成,每个行由行键(row key)来标识。
★难度:易
参见章节:第4章 第2节
考核知识点:HBase数据模型(上)
试题解析:
14、Hbase的列族
答案: 一个HBase表被分组成许多“列族”(Column Family)的集合,它是基本的访问控制单元
★难度:易
参见章节:第4章 第2节
考核知识点:HBase数据模型(上)
试题解析:
15、Hbase的列限定符
答案: 列族里的数据通过列限定符(或列)来定位
★难度:易
参见章节:第4章 第2节
考核知识点:HBase数据模型(上)
试题解析:
16、Hbase的单元格
答案: 在HBase表中,通过行、列族和列限定符确定一个“单元格”(cell)
★难度:易
参见章节:第4章 第2节
考核知识点:HBase数据模型(上)
试题解析:
17、Hbase的时间戳
答案: 每个单元格都保存着同一份数据的多个版本,这些版本采用时间戳进行索引
★难度:易
参见章节:第4章 第2节
考核知识点:HBase数据模型(上)
试题解析:
18、Hbase中的Region
答案: 需要根据行键的值对表中的行进行分区,每个行区间构成一个分区,被称为”Region”
★难度:中
参见章节:第4章 第4节
考核知识点:Hbase的实现原理
试题解析:
19、Hbase中.META.表
答案: 元数据表,又名.META.表,存储了Region和Region服务器的映射关系
★难度:中
参见章节:第4章 第4节
考核知识点:Hbase的实现原理
试题解析:
20、Hbase中-ROOT-表
答案: 根数据表,又名-ROOT-表,记录所有元数据的具体位置
★难度:中
参见章节:第4章 第4节
考核知识点:Hbase的实现原理
试题解析:
21、NoSQL
答案: 最初表示“反SQL”运动
用新型的非关系数据库取代关系数据库。现在表示关系和非关系型数据库各有优缺点
彼此都无法互相取代
★难度:易
参见章节:第5章 第1节
考核知识点:NoSQL概述
试题解析:
22、NoSQL中的CAP
答案: C(Consistency):一致性
A:(Availability):可用性
P(Tolerance of Network Partition):分区容忍性
★难度:中
参见章节:第5章 第4节
考核知识点:NoSQL的三大基石
试题解析:
23、NoSQL中的一致性
答案: C(Consistency):一致性,是指任何一个读操作总是能够读到之前完成的写操作的结果,也就是在分布式环境中,多点的数据是一致的,或者说,所有节点在同一时间具有相同的数据
★难度:易
参见章节:第5章 第4节
考核知识点:NoSQL的三大基石
试题解析:
24、数据库事务的ACID
答案: A(Atomicity):原子性
C(Consistency):一致性
I(Isolation):隔离性
D(Durability):持久性
★难度:易
参见章节:第5章 第4节
考核知识点:NoSQL的三大基石
试题解析:
25、NoSQL的BASE
答案: 基本可用(Basically Available)
软状态/柔性事务(Soft state)
最终一致性 (Eventual consistency)
★难度:易
参见章节:第5章 第4节
考核知识点:NoSQL的三大基石
试题解析:
26、NoSQL的BASE理论中的基本可用
答案: 基本可用,是指一个分布式系统的一部分发生问题变得不可用时,其他部分仍然可以正常使用,也就是允许分区失败的情形出现
★难度:易
参见章节:第5章 第4节
考核知识点:NoSQL的三大基石
试题解析:
27、MongoDB
答案: MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统。
★难度:易
参见章节:第5章 第5节
考核知识点:文档数据库MongoDB
试题解析:
28、云数据库的八大优势
答案: 云数据库是部署和虚拟化在云计算环境中的数据库。
★难度:易
参见章节:第6章 第1节
考核知识点:云数据库概述(上)
试题解析:
29、UMP系统中的Mnesia
答案: Mnesia是一个分布式数据库管理系统
★难度:易
参见章节:第6章 第3节
考核知识点:云数据库系统架构(上)
试题解析:
30、UMP系统中的RabbitMQ
答案: RabbitMQ是一个工业级的消息队列产品(功能类似于IBM公司的消息队列产品IBM Websphere MQ),作为消息传输中间件来使用,可以实现可靠的消息传送
★难度:易
参见章节:第6章 第3节
考核知识点:云数据库系统架构(上)
试题解析:
31、UMP系统中的LVS
答案: LVS(Linux Virtual Server)即Linux虚拟服务器,是一个虚拟的服务器集群系统
★难度:易
参见章节:第6章 第3节
考核知识点:云数据库系统架构(上)
试题解析:
32、SQL Azure
答案: SQL Azure (旧称 SQL Server Data Services 或 SQL Services) 是由微软SQL Server 2008为主,建构在Windows Azure云操作系统之上,运行云计算 (Cloud Computing)的关系数据库服务 (Database as a Service),是一种云存储(Cloud Storage)的实现,提供网络型的应用程序数据存储的服务。
★难度:易
参见章节:第6章 第6节
考核知识点:微软云数据库SQL Azure
试题解析:
33、阿里云RDS
答案: RDS是阿里云提供的关系型数据库服务,它将直接运行于物理服务器上的数据库实例租给用户,是专业管理的、高可靠的云端数据库服务
★难度:易
参见章节:第6章 第7节
考核知识点:云数据库实践
试题解析:
34、流数据
答案: 流数据,即数据以大量、快速、时变的流形式持续到达
★难度:易
参见章节:第8章 第1节
考核知识点:流计算概述
试题解析:
35、流计算
答案: 实时获取来自不同数据源的海量数据,经过实时分析处理,获得有价值的信息
★难度:易
参见章节:第8章 第1节
考核知识点:流计算概述
试题解析:
36、Twitter Storm
答案: Twitter Storm是一个免费、开源的分布式实时计算系统,Storm对于实时计算的意义类似于Hadoop对于批处理的意义,Storm可以简单、高效、可靠地处理流数据,并支持多种编程语言
★难度:易
参见章节:第8章 第4节
考核知识点:流计算开源框架Storm(1)
试题解析:
37、Storm中的Bolt
答案: Storm将Streams的状态转换过程抽象为Bolt
★难度:易
参见章节:第8章 第5节
考核知识点:流计算开源框架Storm(2)
试题解析:
38、Storm中的Spout
答案: Storm认为每个Stream都有一个源头,并把这个源头抽象为Spout
★难度:易
参见章节:第8章 第5节
考核知识点:流计算开源框架Storm(2)
试题解析:
39、Storm中的Topology
答案: Storm将Spouts和Bolts组成的网络抽象成Topology,它可以被提交到Storm集群执行。Topology可视为流转换图,图中节点是一个Spout或Bolt,边则表示Bolt订阅了哪个Stream。
★难度:易
参见章节:第8章 第5节
考核知识点:流计算开源框架Storm(2)
试题解析:
40、Caffeine
答案: 主要为谷歌网络搜索引擎提供支持
★难度:中
参见章节:第9章 第1节
考核知识点:图计算简介
试题解析:
41、Dremel
答案: 是一种可扩展的、交互式的实时查询系统,用于只读嵌套数据的分析。
★难度:中
参见章节:第9章 第1节
考核知识点:图计算简介
试题解析:
42、Pregel
答案: Pregel是一种基于BSP模型实现的并行图处理系统
★难度:中
参见章节:第9章 第1节
考核知识点:图计算简介
试题解析:
43、PageRank
答案: PageRank是一个函数,它为网络中每个网页赋一个权值。通过该权值来判断该网页的重要性
★难度:易
参见章节:第9章 第6节
考核知识点:Pregel和MapReduce实现PageRank算法的对比
试题解析:
44、数据可视化
答案: 数据可视化是指将大型数据集中的数据以图形图像形式表示,并利用数据分析和开发工具发现其中未知信息的处理过程
★难度:易
参见章节:第10章 第1节
考核知识点:可视化概述
试题解析:
45、D3
答案: D3 的全称是(Data-Driven Documents),顾名思义,它是一个被数据驱动的文档。听名字有点抽象,说简单一点,其实就是一个 JavaScript 的函数库,使用它主要是用来做数据可视化的
★难度:易
参见章节:第10章 第4节
考核知识点:可视化工具实践(1)
试题解析:
46、Echarts
答案: ECharts是由百度商业前端数据可视化团队研发的图表库,可以流畅的运行在 PC 和移动设备上,兼容当前绝大部分浏览器(IE8/9/10/11,Chrome,Firefox,Safari等),底层依赖轻量级的 Canvas 类库 ZRender,提供直观,生动,可交互,可高度个性化定制的数据可视化图表
★难度:易
参见章节:第10章 第5节
考核知识点:可视化工具实践(2)
试题解析:
47、Easel.ly
答案: Easel.ly 是现下非常流行的信息图制作软件之一,其具有界面简洁、操作简a便、图片精美等特点。
★难度:易
参见章节:第10章 第5节
考核知识点:可视化工具实践(3)
试题解析:
(三)、问答题
1、简述信息技术发展史上三次信息化潮流的时间、标志以及解决的问题。
答案: 第一次浪潮,时间:1980年前后,标志:个人计算机,解决问题:信息处理;第二次浪潮,时间:1995年前后,标志:互联网,解决问题:信息传输;第三次浪潮,时间:2010年前后,标志:物联网、云计算和大数据,解决问题:信息爆炸。
★难度:易
参见章节:第1章 第1节
考核知识点:大数据时代背景
试题解析:
2、举例说明大数据在我们身边应用的例子,请至少说明3个领域,并为其做出说明。
答案: 1.金融行业:大数据在高频交易、社交情绪分析和信贷分析三大金融创新领域发挥重要作用
2.汽车行业:利用大数据和物联网技术的无人驾驶汽车,在不远的未来将走入我们的日常生活
3.医疗:大数据可以帮助我们实现流行病预测、智慧医疗、健康管理,同时还可以帮助我们解读DNA,了解更多的生命奥秘
4.体育和娱乐:大数据可以帮助我们训练球队,决定投拍哪种题材的影视作品,以及预测比赛结果。
★难度:易
参见章节:第1章 第2节
考核知识点:大数据的影响与应用
试题解析:
3、请简述大数据开发的两大核心技术。
答案: 1. 分布式存储:包括HDFS、HBase、NoSQL、NewSQL等;
2. 分布式处理或分布式计算:MapReduce等
★难度:易
参见章节:第1章 第3节
考核知识点:大数据的关键技术
试题解析:
4、请简述大数据、云计算和物联网三者的关系。
答案: 1.云计算为大数据提供了技术基础;
2.大数据为云计算提供用武之地;
3.物联网是大数据的重要来源;
4.大数据技术为物联网数据分析提供了支撑;
5.云计算为物联网提供海量数据储存能力;
6.物联网为云计算技术提供了广阔的应用空间。
★难度:易
参见章节:第1章 第4节
考核知识点:大数据产业及其相关技术
试题解析:
5、请简述Hadoop和谷歌MapReduce、GFS等技术的关系。
答案: 1.Hadoop的核心是分布式文件系统HDFS和MapReduce;
2. HDFS是谷歌文件系统GFS的开源实现;
3.MapReduce是对谷歌MapReduce的开源实现。
★难度:中
参见章节:第2章 第1节
考核知识点:Hadoop概述
试题解析:
6、请简述Hadoop的特性
答案: 高可靠性、高效性、高可扩展性、高容错性、成本低、运行在Linux平台上、支持多种编程语言
★难度:易
参见章节:第2章 第1节
考核知识点:Hadoop概述
试题解析:
7、如何判断一个Hadoop集群是否已经正确安装?
答案: 可以运行基准测试
1. Hadoop自带有一些基准测试程序,被打包在测试程序JAR文件中
2. 用TestDFSIO基准测试,来测试HDFS的IO性能
3. 用排序测试MapReduce:Hadoop自带一个部分排序的程序,这个测试过程的整个数据集都会通过洗牌(Shuffle)传输至Reducer,可以充分测试MapReduce的性能
★难度:中
参见章节:第2章 第4节
考核知识点:Hadoop集群的部署与使用
试题解析:
8、请简述分布式文件系统的设计需求。
答案: 1. 透明性:具备访问透明性、位置透明性、性能和伸缩透明性。
2.并发控制: 客户端对于文件的读写不应该影响其他客户端对同一个文件的读写。
3. 文件复制:一个文件可以拥有在不同位置的多个副本。
4. 硬件和操作系统的异构性:
采用Java 语言开发,具有很好的跨平台能力
5. 可伸缩性:支持节点的动态加入或退出。
建立在大规模廉价机器上的分布式
6. 容错:
具有多副本机制和故障自动检测、恢复机制
7. 安全:保障系统的安全性
★难度:易
参见章节:第3章 第1节
考核知识点:分布式文件系统简介
试题解析:
9、请简述HDFS要实现的目标
答案: 兼容廉价的硬件设备
流数据读写
大数据集
简单的文件模型
强大的跨平台兼容性
★难度:易
参见章节:第3章 第2节
考核知识点:HDFS简介
试题解析:
10、请比较HDFS中NameNode与DataNode的不同。
答案: NameNode,存储元数据,元数据保存在内存中,保存文件,block,datanode之间的映射关系
DataNode,存储文件内容,文件内容保存在磁盘,维护了block id到datanode本地文件的映射关系
下面我们仔细分析下两者的数据结构
★难度:易
参见章节:第3章 第3节
考核知识点:HDFS相关概念
试题解析:
11、HDFS采用什么方式对数据进行冗余存储,特点是什么?
答案: HDFS采用了多副本方式对数据进行冗余存储,通常一个数据块的多个副本会被分布到不同的数据节点上。
这种多副本方式具有以下几个优点:
( 1 )加快数据传输速度。
当多个客户端需要同时访问同一个文件时,可以让各个客户端分别从不同的数据块副本中读取数据.这就大大加快了数据传输速度。
( 2 )容易检查数据错误。
HDFS 的数据节点之间通过网络传输数据,采用多个副本可以很容易判断数据传输是否出错。
( 3 )保证数据的可靠性。
即使某个数据节点出现故障失效,也不会造成数据丢失。
★难度:中
参见章节:第3章 第5节
考核知识点:HDFS存储原理
试题解析:
12、请简述HDFS读数据过程如何获取数据块信息
答案: 通过ClientProtocal.getBlockLocations()
远程调用名称节点,获得文件开始部分数据块的位置;对于该数据块,名称节点返回保存该数据块
的所有数据节点的地址
并根据距离客户端远近进行排序
★难度:中
参见章节:第3章 第6节
考核知识点:数据读写过程
试题解析:
13、关系数据库已经流行很多年,并且Hadoop已经有了HDFS和MapReduce,为什么需要HBase?
答案: 1.Hadoop无法满足大规模数据实时处理应用的需求
2.HDFS面向批量访问模式,不是随机访问模式
3.传统的通用关系型数据库无法应对在数据规模剧增时导致的系统扩展性和性能问题
4.传统关系数据库在数据结构变化时一般需要停机维护;空列浪费存储空间
★难度:中
参见章节:第4章 第1节
考核知识点:HBase概述
试题解析:
14、请比较行式数据库与列式数据库的存储模型及适用领域
答案: 1.行式数据库使用NSM(N-ary Storage Model)存储模型, 一个元组(或行)会被连续地存储在磁盘页中。
2.行式数据库主要适合于小批量的数据处理,如联机事务型数据处理,我们平时熟悉的Oracle和MySQL 等关系数据库都属于行式数据库。
3.列式数据库采用DSM ( Decomposition Storage Model) 存储模型
4.列式数据库主要适合于批量数据处理和即席查询( Ad-Hoc Query) ,它的优点是:可以降低I/O 开销,支持大量并发用户查询,其数据处理速度比传
★难度:中
参见章节:第4章 第3节
考核知识点:HBase数据模型(下)
试题解析:
15、请简述HBase各功能组件及其作用
答案: (1)库函数:链接到每个客户端;
(2)一个Master 主服务器:主服务器Master 主要负责表和Region 的管理工
作;
(3)许多个Region 服务器: Region 服务器是HBase 中最核心的模块,负责
维护分配给自己的Region ,并响应用户的读写请求
★难度:易
参见章节:第4章 第4节
考核知识点:Hbase的实现原理
试题解析:
16、请简述Hbase中公用日志的方式及优缺点
答案: HBase 系统中,每个Region 服务器只需要维护一个HLog 文件,所有Region 对象共用一个HLog ,而不是每个Region 使用一个Hlog。
优点:提高对表的写操作性能
缺点:恢复时需要分拆日志
★难度:中
参见章节:第4章 第5节
考核知识点:Hbase运行机制
试题解析:
17、请简述Hbase中使用Coprocessor构建二级索引的优缺点
答案: 优点:
非侵入性:引擎构建在HBase之上,既没有对HBase进行任何改动,也不需要上层应用做任何妥协
缺点:
每插入一条数据需要向索引表插入数据,即耗时是双倍的,对HBase的集群的压力也是双倍的
★难度:易
参见章节:第4章 第6节
考核知识点:Hbase应用方案
试题解析:
18、请简述NoSQL数据库的特点
答案: (1)灵活的可扩展性
(2)灵活的数据模型
(3)与云计算紧密融合
★难度:易
参见章节:第5章 第1节
考核知识点:NoSQL概述
试题解析:
19、请描述列族数据库的典型应用
答案: 分布式数据存储与管理
数据在地理上分布于多个数据中心的应用程序
可以容忍副本中存在短期不一致情况的应用程序
拥有动态字段的应用程序
拥有潜在大量数据的应用程序,大到几百TB的数据
★难度:中
参见章节:第5章 第3节
考核知识点:NoSQL的四大类型
试题解析:
20、请描述列族数据库的优缺点应用
答案: 优点:查找速度快,可扩展性强,容易进行分布式扩展,复杂性低
缺点:功能较少,大都不支持强事务一致性
★难度:中
参见章节:第5章 第3节
考核知识点:NoSQL的四大类型
试题解析:
21、NoSQL的最终一致性包括哪几种
答案: 1.因果一致性:如果进程A通知进程B它已更新了一个数据项,那么进程B的后续访问将获得A写入的最新值。而与进程A无因果关系的进程C的访问,仍然遵守一般的最终一致性规则
2.“读己之所写”一致性:可以视为因果一致性的一个特例。当进程A自己执行一个更新操作之后,它自己总是可以访问到更新过的值,绝不会看到旧值
3.单调读一致性:如果进程已经看到过数据对象的某个值,那么任何后续访问都不会返回在那个值之前的值
4.会话一致性:它把访问存储系统的进程放到会话(session)的上下文中,只要会话还存在,系统就保证“读己
★难度:中
参见章节:第5章 第4节
考核知识点:NoSQL的三大基石
试题解析:
22、MongoDB的特点有?
答案: 提供了一个面向文档存储,操作起来比较简单和容易
可以设置任何属性的索引来实现更快的排序
具有较好的水平可扩展性
支持丰富的查询表达式,可轻易查询文档中内嵌的对象及数组
可以实现替换完成的文档(数据)或者一些指定的数据字段
MongoDB中的Map/Reduce主要是用来对数据进行批量处理和聚合操作
支持各种编程语言:RUBY,PYTHON,JAVA,C++,PHP,C#等语言
MongoDB安装简单
★难度:易
参见章节:第5章 第5节
考核知识点:文档数据库MongoDB
试题解析:
23、MongoDB的基本概念是哪三个
答案: 文档、集合、数据库
★难度:易
参见章节:第5章 第5节
考核知识点:文档数据库MongoDB
试题解析:
24、云数据库的八大优势
答案: (1)按需服务:零成本投入就可以立即获得所需的IT 资源,只需要为所使用的资源付费,多用多付,少用少付,极其廉价
(2)随时服务:随时可用,购买服务后立即可用
(3)通用性:软件运行在云计算厂商服务器上,用户在任何有网络接人的地方都可以通过网络使用软件服务
(4)高可靠性:出现任何系统问题时, 云计算厂商都会凭借其专业化团队给出及时响应. 确保云服务的正常使用
(5)极其廉价:零成本投入就可以立即获得所需的IT 资源,只需要为所使用的资源付费,多用多付,少用少付,极其廉价,同时维护零成本.所有维护工作由云
★难度:易
参见章节:第6章 第1节
考核知识点:云数据库概述(上)
试题解析:
25、SQL Azure具有哪些特性
答案: 属于关系型数据库:支持使用TSQL(Transact Structured Query Language)来管理、创建和操作云数据库
支持存储过程:它的数据类型、存储过程和传统的SQL Server具有很大的相似性,因此,应用可以在本地进行开发,然后部署到云平台上
支持大量数据类型:包含了几乎所有典型的SQL Server 2008的数据类型
支持云中的事务:支持局部事务,但是不支持分布式事务
★难度:易
参见章节:第6章 第2节
考核知识点:云数据库概述(下)
试题解析:
26、UMP系统中的角色包括哪些
答案: controller 服务器、Proxy 服务器、Agent 服务器、Web 控制台、日志分析服务器、信息统计服务器、愚公系统;
★难度:易
参见章节:第6章 第3节
考核知识点:云数据库系统架构(上)
试题解析:
27、UMP系统实现对用户透明的哪些功能?
答案: UMP 系统是构建在一个大的集群之上的,通过多个组件的协同作业,整个系统实现了对用户透明的容灾、读写分离、分库分表、资源管理、资源调度、资源隔离和数据安全功能
★难度:易
参见章节:第6章 第4节
考核知识点:云数据库系统架构(下)
试题解析:
28、UMP采用了哪种机制来保证数据安全
答案: 1. SSL 数据库连接。
2.数据访问IP名单。
3. 记录用户操作日志。
4. SQL 拦截。
★难度:中
参见章节:第6章 第4节
考核知识点:云数据库系统架构(下)
试题解析:
29、请简述AWS全局基础设施的三个重要概念
答案: 1.第一个是Region(区域),每个Region是相互独立的,自成一套云服务体系,分布在全球各地。目前全球有10个Region(比如 北京)
2. 第二个是Availability Zone(可用区),每个Region又由数个可用区组成,每个可用区可以看做一个数据中心,相互之间通过光纤连接
3. 第三个是Edge Locations(边缘节点)。全球目前有50多个边缘节点,是一个内容分发网络(CDN,Content Distrubtion Network),可以降低内容分发的延迟,保证终端用户获取资源
★难度:中
参见章节:第6章 第5节
考核知识点:AWS和云数据库
试题解析:
30、请简述AWS提供的网络服务
答案: 1. Direct Connect:支持企业自身的数据中心直接与AWS的数据中心直连,充分利用企业现有的资源
2. VPN Connection:通过VPN连接AWS,保证数据的安全性
3. Virtual Private Cloud: 私有云,从AWS云资源中分一块给你使用,进一步提高安全性
4. Route 53:亚马逊提供的高可用的可伸缩的云域名解析系统。
★难度:中
参见章节:第6章 第5节
考核知识点:AWS和云数据库
试题解析:
31、请简述SQL Azure四层体系结构
答案: 1)Client Layer:将用户的请求转化为Azure内部的TDS格式流;
2)Services Layer:相当于网关,相当于普通Web系统的逻辑层
3)Platform Layer:存储节点集群,相当于普通Web系统的数据库层;
4)Infrastructure Layer:硬件和操作系统。
★难度:中
参见章节:第6章 第6节
考核知识点:微软云数据库SQL Azure
试题解析:
32、阿里云RDS的优点
答案: RDS具有安全稳定、数据可靠、自动备份、管理透明、性能卓越,灵活扩容等优点,可以提供专业的数据库管理平台、专业的数据库优化建议以及完善的监控体系
★难度:易
参见章节:第6章 第7节
考核知识点:云数据库实践
试题解析:
33、简述MapReduce的体系结构及其各部分功能
答案: 1.Client:MapReduce程序通过Client提交到JobTracker,还可以查看作业运行状态。
2.JobTracker:负责资源监控和作业调度。
3.TaskTracker:会周期性地通过“心跳”将本节点上资源的使用情况和任务的运行进度汇报给JobTracker,同时接收JobTracker 发送过来的命令并执行相应的操作
4.Task:具体任务,分为Map Task和Reduce Task两种,均由TaskTracker启动
★难度:中
参见章节:第7章 第1节
考核知识点:MapReduce概述
试题解析:
34、对于一个包含大量单词的文本文件,想使用MapReduce计算文件中每个单词出现的次数,请简述其设计思路。
答案: 1.把文件内容解析成许多个单词
2.把所有相同的单词聚集到一起
3.计算出每个单词出现的次数进行输出。
★难度:易
参见章节:第7章 第3节
考核知识点:实例分析:WordCount
试题解析:
35、MapReduce是处理大数据的有力工具,但不是每个任务都可以使用MapReduce来进行处理.试述适合用MapReduce 来处理的任务或者数据集需满足怎样的要求。
答案: 适合用MapReduce处理的数据集,需要满足一个前提条件: 待处理的数据集可以分解成许多小的数据集,而且每一个小数据集都可以完全并行地进行处理。
★难度:中
参见章节:第7章 第3节
考核知识点:实例分析:WordCount
试题解析:
36、是否所有的MapReduce程序都需要经过Map和Reduce这两个过程?如果不是,请举例说明。
答案: 不是。对于关系的选择运算,只需要Map过程就能实现,对于关系R中的每个元组t ,检测是否是满足条件的所需元组,如果满足条件,则输出键值对<t, t> 。这时的Reduce函数就只是一个恒等式,对输入不做任何变换就直接输出。
★难度:难
参见章节:第7章 第4节
考核知识点:MapReduce的具体应用
试题解析:
37、流数据具有哪些特征。
答案: 1.数据快速持续到达,潜在大小也许是无穷无尽的。
2.数据来源众多,格式复杂。
3.数据量大,但是不十分关注存储,一旦流数据中的某个元素经过处理,要么被丢弃,要么被归档存储。
4.注重数据的整体价值,不过分关注个别数据。
5.数据顺序颠倒,或者不完整,系统无法控制将要处理的新到达的数据元素的顺序。
★难度:易
参见章节:第8章 第1节
考核知识点:流计算概述
试题解析:
38、流处理系统与传统数据处理系统的不同是。
答案: 1.流处理系统处理的是实时的数据,而传统的数据处理系统处理的是预先存储好的静态数据
2.用户通过流处理系统获取的是实时结果,而通过传统的数据处理系统,获取的是过去某一时刻的结果
3.流处理系统无需用户主动发出查询,实时查询服务可以主动将实时结果推送给用户
★难度:易
参见章节:第8章 第2节
考核知识点:流计算处理流程
试题解析:
39、从流数据处理流程的不同步骤说明流计算在电商广告投放时的应用
答案: 1.实时采集:获取大量用户交易、浏览数据
2.实时计算:通过流处理系统进行广告推荐计算
3.实时查询:将计算出的广告实时推送给用户
★难度:易
参见章节:第8章 第3节
考核知识点:流计算应用
试题解析:
40、请列举Storm的特点
答案: 1.整合性:Storm可方便地与队列系统和数据库系统进行整合
2.简易的API:Storm的API在使用上即简单又方便
3.可扩展性:Storm的并行特性使其可以运行在分布式集群中
4.容错性:Storm可自动进行故障节点的重启、任务的重新分配
5.可靠的消息处理:Storm保证每个消息都能完整处理
6.支持各种编程语言:Storm支持使用各种编程语言来定义任务
7.快速部署:Storm可以快速进行部署和使用
8.免费、开源:Storm是一款开源框架,可以免费使用
★难度:易
参见章节:第8章 第4节
考核知识点:流计算开源框架Storm(1)
试题解析:
41、Storm框架包含五个重要术语,请分别描述。
答案: 1.Streams:Storm将流数据Stream描述成一个无限的Tuple序列,这些Tuple序列会以分布式的方式并行地创建和处理。
2.Spout:Storm认为每个Stream都有一个源头,并把这个源头抽象为Spout
3.Bolt:Storm将Streams的状态转换过程抽象为Bolt。
4.Topology:Storm将Spouts和Bolts组成的网络抽象成Topology,它可以被提交到Storm集群执行。
5.Stream Groupings:Storm中的Stream Groupings
★难度:易
参见章节:第8章 第5节
考核知识点:流计算开源框架Storm(2)
试题解析:
42、简述Storm的工作流程
答案: 1.客户端提交Topology 到Storm 集群中。
2.Nimbus 将分配给Supervisor 的任务写入Zookeeper。
3.Supervisor 从Zookeeper 中获取所分配的任务,并启动Worker 进程。
4.Worker 进程执行具体的任务。
★难度:易
参见章节:第8章 第5节
考核知识点:流计算开源框架Storm(2)
试题解析:
43、简述Storm进行单词统计的流程
答案: 1.从Spout中发送Stream(每个英文句子为一个Tuple)
2.用于分割单词的Bolt将接收的句子分解为独立的单词,将单词作为Tuple的字段名发送出去
3.用于计数的Bolt接收表示单词的Tuple,并对其进行统计
4.输出每个单词以及单词出现过的次数
★难度:中
参见章节:第8章 第6节
考核知识点:流计算开源框架Storm(3)
试题解析:
44、图计算中一次BSP主要包括哪三个组件
答案: 局部计算:每个参与的处理器都有自身的计算任务,它们只读取存储在本地内存中的值,不同处理器的计算任务都是异步并且独立的
通讯:处理器群相互交换数据,交换的形式是,由一方发起推送(put)和获取(get)操作
栅栏同步:当一个处理器遇到“路障”(或栅栏),会等到其他所有处理器完成它们的计算步骤;每一次同步也是一个超步的完成和下一个超步的开始,下图是一个超步的垂直结构图
★难度:中
参见章节:第9章 第1节
考核知识点:图计算简介
试题解析:
45、Pregel中的Combiner功能
答案: Pregel计算框架在消息发出去之前,Combiner可以将发往同一个顶点的多个整型值进行求和得到一个值,只需向外发送这个“求和结果”,从而实现了由多个消息合并成一个消息,大大减少了传输和缓存的开销
★难度:中
参见章节:第9章 第3节
考核知识点:Pregel的C++ API
试题解析:
46、请简述Pregel执行过程中一个顶点应该被分配到哪个分区上
答案: 一个顶点应该被分配到哪个分区上,是由一个函数决定的,系统默认函数为hash(ID) mod N,其中,N为所有分区总数,ID是这个顶点的标识符;当然,用户也可以自己定义这个函数。
★难度:易
参见章节:第9章 第4节
考核知识点:Pregel的体系结构
试题解析:
47、PageRank算法在Pregel和MapReduce中实现方式的区别
答案: (1)Pregel将PageRank处理对象看成是连通图,而MapReduce则将其看成是键值对
(2)Pregel将计算细化到顶点,同时在顶点内控制循环迭代次数,而MapReduce则将计算批量化处理,按任务进行循环迭代控制
(3)图算法如果用MapReduce实现,需要一系列的MapReduce的调用。从一个阶段到下一个阶段,它需要传递整个图的状态,会产生大量不必要的序列化和反序列化开销。而Pregel使用超步简化了这个过程
★难度:易
参见章节:第9章 第6节
考核知识点:Pregel和MapReduce实现PageRank算法的对比
试题解析:
48、数据可视化的基本思想
答案: 数据可视化技术的基本思想是将数据库中每一个数据项作为单个图元素表示,大量的数据集构成数据图像,同时将数据的各个属性值以多维数据的形式表示,可以从不同的维度观察数据,从而对数据进行更深入的观察和分析
★难度:中
参见章节:第10章 第1节
考核知识点:可视化概述
试题解析:
49、数据可视化有哪些重要作用
答案: 1 . 观测、跟踪数据
2. 分析数据
3. 辅助理解数据
4. 增强数据吸引力
★难度:中
参见章节:第10章 第1节
考核知识点:可视化概述
试题解析:
(四)、解答题
1、请阐述HBase 和传统关系数据库的区别
难易程度:中
所属章节:4-1
考核知识点:HBase概述
参考答案:
传统关系数据库 HBase
数据类型 关系模型 数据模型
数据操作
插入、删除、更新、查询、
多表连接 插入、查询、删除、清空,无法实现表与表之间关联
存储模式
基于行模式存储,元组或行会被连续地存储在磁
基于列存储,每个列族都由几个文件保存,不同列盘也中族的文件是分离的
数据索引 针对不同列构建复杂的多个索引 只有一个行键索引
数据维护 用最新的当前值去替换记录中原来的旧值 更新操作不会删除数据旧的版本,而是生成一个新的版本
可伸缩性 很难实现横向扩展,纵向
扩展的空间也比较有限
轻易地通过在集群中增
加或者减少硬件数量来
实现性能的伸缩 2、请阐述HBase实际应用中的性能优化方法
难易程度:中
所属章节:4-6
考核知识点:HBase应用方案
参考答案:
(1)行键:行键是按照字典序存储,因此,设计行键时,要充分利用这个排序特点,将经常一起读取的数据存储到一块,将最近可能会被访问的数据放在一块。
(2)InMemory:创建表的时候,可以通过HColumnDescriptor.setInMemory(true)将表放到Region服务器的缓存中,保证在读取的时候被cache命中。
(3)Max Version:创建表的时候,可以通过HColumnDescriptor.setMaxVersions(int maxVersions)设置表中数据的最大版本,如果只需要保存最新版本的数据,那么可以设置setMaxVersions(1)。
(4)Time To Live:创建表的时候,可以通过HColumnDescriptor.setTimeToLive(int timeToLive)设置表中数据的存储生命期,过期数据将自动被删除,例如如果只需要存储最近两天的数据,那么可以设置setTimeToLive
(2 * 24 * 60 * 60)。
3、请比较SQL和MongoDB中不同的术语概念。
难易程度:中
所属章节:5-5
考核知识点:文档数据库MonogoDB
参考答案:
1551964132(1)
4、请比较RDBMS和MongoDB中不同的术语概念。
难易程度:中
所属章节:5-5
考核知识点:文档数据库MonogoDB
参考答案:
1551964205(1)
5、下图是MapReduce的工作具体执行过程,请详细描述六个步骤。
难易程度:中
所属章节:7-3
考核知识点:实例分析:WordCount
参考答案:
执行如数程序的用户程序,会被系统分发部署到集群中的多台机器上,其中一个机器作为Master,负责协调调度作业的执行,其余机器作为Worker,可以执行Map或Reduce任务。
系统分配一部分Worker执行Map任务,一部分Worker执行Reduce任务;MapReduce将输入文件切分成M个分片,Master将M个分片分给处于空闲状态的N个Worker来处理。
执行Map任务的Worker读取输入数据,执行Map操作,生成一系列<key, value>形式的中间结果,并将中间结果保存在内存的缓冲区中。
缓冲区中的中间结果会被定期刷写到本地磁盘上,并被划分为R个分区,这R个分区会被分发给R个执行Reduce任务的Worker进行处理;Master会记录这R个分区在磁盘上的存储位置,并通知R个执行Reduce任务的Worker来”领取”属于自己处理的那些分区的数据。
执行Reduce任务的Worker收到Master的通知后,就到相应的Map机器上“领回”属于自己处理的分区。当位于所有Map机器上的、属于自己处理的数据,都已经领取回来以后,这个执行Reduce任务的Worker,会对领取到的键值对进行排序,使得具有相同key的键值对聚集在一起,然后就可以开始执行具体的Reduce 操作了。
执行Reduce任务的Worker遍历中间数据,对每一个唯一key,执行Reduce 函数,结果写入到输出文件中;执行完毕后,唤醒用户程序,返回结果。
6、Twitter也正是使用了Storm框架实现了实时热门话题,请画出Twitter实时热门话题处理流程图。
难易程度:中
所属章节:8-6
考核知识点:流计算开源框架Storm(3)
参考答案:
7、在理想的情况下(不发生任何错误),一个Pregel用户程序的执行过程
难易程度:中
所属章节:9-4
考核知识点:Pregel的体系结构
参考答案:
(1)选择集群中的多台机器执行图计算任务,每台机器上运行用户程序的一个副本,其中,有一台机器会被选为Master,其他机器作为Worker。Master只负责协调多个Worker执行任务,系统不会把图的任何分区分配给它。Worker借助于名称服务系统可以定位到Master的位置,并向Master发送自己的注册信息。
(2)Master把一个图分成多个分区,并把分区分配到多个Worker。一个Worker会领到一个或多个分区,每个Worker知道所有其他Worker所分配到的分区情况。每个Worker负责维护分配给自己的那些分区的状态(顶点及边的增删),对分配给自己的分区中的顶点执行Compute()函数,向外发送消息,并管理接收到的消息。
(3)Master会把用户输入划分成多个部分,通常是基于文件边界进行划分。划分后,每个部分都是一系列记录的集合,每条记录都包含一定数量的顶点和边。然后,Master会为每个Worker分配用户输入的一部分。如果一个Worker从输入内容中加载到的顶点,刚好是自己所分配到的分区中的顶点,就会立即更新相应的数据结构。否则,该Worker会根据加载到的顶点的ID,把它发送到其所属的分区所在的Worker上。当所有的输入都被加载后,图中的所有顶点都会被标记为“活跃”状态。
(4) Master向每个Worker发送指令,Worker收到指令后,开始运行一个超步。Worker会为自己管辖的每个分区分配一个线程,对于分区中的每个顶点,Worker会把来自上一个超步的、发给该顶点的消息传递给它,并调用处于“活跃”状态的顶点上的Compute()函数,在执行计算过程中,顶点可以对外发送消息,但是,所有消息的发送工作必须在本超步结束之前完成。当所有这些工作都完成以后,Worker会通知Master,并把自己在下一个超步还处于“活跃”状态的顶点的数量报告给Master。上述步骤会被不断重复,直到所有顶点都不再活跃并且系统中不会有任何消息在传输,这时,执行过程才会结束。
(5)计算过程结束后,Master会给所有的Worker发送指令,通知每个Worker对自己的计算结果进行持久化存储。
评分标准:每个节点2分
8、在处理二分匹配问题时,一个Pregel用户程序的执行过程的四个阶段
难易程度:中
所属章节:9-5
考核知识点:Pregel的应用实例
参考答案:
阶段0:对于左集合中的任意顶点V,如果V还没有被匹配,就发送消息给它的每个邻居顶点请求匹配,然后,顶点V会调用VoteToHalt()进入“非活跃”状态。如果顶点V已经找到了匹配,或者V没有找到匹配但是没有出射边,那么,顶点V就不会发送消息。当顶点V没有发送消息,或者顶点V发送了消息但是所有的消息接收者都已经被匹配,那么,该顶点就不会再变为“活跃(active)”状态的匹配工作
阶段1:对于右集合中的任意顶点U,如果它还没有被匹配,则会随机选择它接收到的消息中的其中一个,并向左集合中的消息发送者发送消息表示接受该匹配请求,然后给左集合中的其他请求者发送拒绝消息;然后,顶点U会调用VoteToHalt()进入“非活跃”状态
阶段2:左集合中那些还未被匹配的顶点,会从它所收到的、右集合发送过来的接受请求中,选择其中一个给予确认,并发送一个确认消息。对于左集合中已经匹配的顶点而言,因为它们在阶段0不会向右集合发送任何匹配请求消息,因而也不会接收到任何来自右集合的匹配接受消息,因此,是不会执行阶段2的
阶段3:右集合中还未被匹配的任意顶点U,会收到来自左集合的匹配确认消息,但是,每个未匹配的顶点U,最多会收到一个确认消息。然后,顶点U会调用VoteToHalt()进入“非活跃”状态,完成它自身的匹配工作
(五)、编程题
1.题干:
//建立连接
public static void init(){
configuration =1. .create();
configuration.2. (“hbase.rootdir”,”hdfs://localhost:9000/hbase”);
try{
connection =3. .createConnection(configuration);
admin = connection.4. ();
}catch (IOException e){
e.printStackTrace();
}
}
//关闭连接
public static void close(){
try{
if(admin != null){
5. .close();
}
if(null != connection){
6. .close();
}
}catch (IOException e){
e.printStackTrace();
}
} 要求:上述代码是HBase中建立连接和关闭连接代码。请补充空格处代码
难易程度:中
所属章节:4-7
考核知识点:Hbase编程实践
参考答案:
HBaseConfiguration
set
ConnectionFactory
getAdmin
admin
connection
评分标准:每个1.5分
2.题干:
/*创建表*/
/**
* @param myTableName 表名
* @param colFamily列族数组
* @throws Exception
*/
public static void createTable(String myTableName,String[] colFamily) throws IOException {
TableName tableName = TableName.1. (myTableName);
if(admin.2. (tableName)){
System.out.println(“table exists!”);
}else {
HTableDescriptor hTableDescriptor = new 3. (tableName);
for(String str: colFamily){
HColumnDescriptor 4. = new HColumnDescriptor(str);
hTableDescriptor.5. (hColumnDescriptor);
}
admin.6. (hTableDescriptor);
}
}
要求:上述代码是HBase中创建表代码。请补充空格处代码
难易程度:中
所属章节:4-7
考核知识点:Hbase编程实践
参考答案:
valueOf
tableExists
HTableDescriptor
hColumnDescriptor
addFamily
createTable
3.题干:
import com.mongodb.MongoClient;
……//这里省略其他需要导入的包
public class MongoDBJDBC{
public static void main( String args[] ){
try{
// 连接到 mongodb 服务
MongoClient mongoClient = new 1. ( “localhost” , 27017 );
// 连接到数据库
DB db = mongoClient.2. ( “test” );
System.out.println(“Connect to database successfully”);
boolean auth = db.3. (myUserName, myPassword);
System.out.println(“Authentication: “+auth);
}catch(Exception e){
System.err.println( e.getClass().getName() + “: ” + e.getMessage() );
}
}
}
要求:上述代码是使用Java程序访问MongoDB的代码。请补充空格处代码
难易程度:中
所属章节:5-5
考核知识点:文档数据库MongoDB
参考答案:
MongoClient
getDB
authenticate
4.题干:
public static class MyMapper extends Mapper<Object,Text,Text,IntWritable>{
private final static 1. one = new 1. (1);
private Text word = new Text();
public void map(Object 2. , Text 3. , Context context) throws IOException,InterruptedException{
StringTokenizer itr = new StringTokenizer(3. .toString());
while (itr.4. ())
{
word.5. (itr.nextToken());
context.write(6. ,one);
}
}
}
要求:上述代码是MapReduce处理计算词频问题时Map端处理逻辑,Map输入类型为<key,value>,期望的Map输出类型为<单词,出现次数>。请补充空格处代码
难易程度:中
所属章节:7-5
考核知识点:MapReduce编程实践
参考答案:
IntWritable
key
value
hasMoreTokens
set
word
5.题干:
import org.apache.storm.Config;
Import ……
public class WordCountTopology {
public class RandomSentenceSpout extends BaseRichSpout {
SpoutOutputCollector _collector;
Random _rand;
@Override
public void nextTuple() {
Utils.sleep(100);
String[] sentences = new String[]{ “the cow jumped over the moon”, “an apple a day keeps the doctor away”,
“four score and seven years ago”, “snow white and the seven dwarfs”, “i am at two with nature” };
String sentence = 1. [_rand.nextInt(sentences.length)];
_collector.2. (new Values(3. ));
}
@Override
public void declareOutputFields(OutputFieldsDeclarer declarer) {
declarer.declare(new Fields(“4. “));
}
}
public static class SplitSentence extends ShellBolt implements IRichBolt {
……
}
public static class WordCount extends BaseBasicBolt {
……
}
public static void main(String[] args) throws Exception {
TopologyBuilder builder = new TopologyBuilder();
builder.setSpout(“sentences”, new 5. (), 5);
builder.6. (“split”, new SplitSentence(), 8).shuffleGrouping(“sentences”);
builder.setBolt(“count”, new WordCount(), 12).fieldsGrouping(“split”, new Fields(“word”));
……
}
要求:上述代码是Storm的编程模型定义的单词统计Topology的整体逻辑,请补充代码。
难易程度:中
所属章节:8-6
考核知识点:流计算开源框架Storm(3)
参考答案:
sentences
emit
sentence
sentences
RandomSentenceSpout
setBolt
6.题干:
class PageRankVertex: public Vertex<double, void, double> {
public:
virtual void Compute(MessageIterator* 1. ) {
if (2. () >= 1) {
double sum = 0;
for (;!msgs->Done(); msgs->Next())
sum += msgs->Value();
*MutableValue() =
0.15 / NumVertices() + 0.85 * 3. ;
}
if (superstep() < 30) {
const int64 n = GetOutEdgeIterator().4. ();
SendMessageToAllNeighbors(GetValue()/ n);
} else {
VoteToHalt();
}
}
};
要求:上述代码是PageRank算法的Pregel实现代码,请补充代码。
难易程度:中
所属章节:9-6
考核知识点:Pregel和MapReduce实现PageRank算法的对比
参考答案:
msgs
superstep
sum
size