大数据技术习题整理

第一章

1.选择题
下列选项中,哪个属于半结构化数据?(C )
A.html
B.文本文件
C.json
D.声音
解析:半结构化数据半结构化数据适用于数据库集成,通过灵活键值对获取相应信息,格式不固定例如json,xml。本题中html、声音、文本文件均为非结构化数据。
(多选)下面内容中,那些属于数字可视化的分支(ACD)
A.科学可视化
B.图表可视化
C.信息可视化
D.可视分析学
解析:数据可视化分为:科学可视化、信息可视化、可视分析学这三个主要分支。
为大数据的集中管理和分布式访问提供了必要的场所和分享的渠道的是(B)。
A.云计算
B.HDFS
C.Hbase
D.物联网
解析:云计算为大数据的集中管理和分布式访问提供了必要的场所和分享的渠道,大数据是云计算的灵魂必然的升级方向。

2.填空题
2.1大数据结构分为()()()三种
答:结构化数据、半结构化数据、非结构化数据
2.2大数据技术主要包括 数据采集与预处理、数据存储和管理,()、和数据安全和隐私保护这四个方面简答题
答: 数据处理和分析
3.数据管理经历了哪几个阶段?
数据管理是利用计算机硬件与软件对数据进行有效的收集存储处理应用过程,目的在于充分有效地发挥数据作用,实现数据有效管理是关键组织数据。数据管理经历了人工管理、文件系统、数据库系统三个发展阶段。

Hadoop

1.下面哪个不是hadoop的四大组件(B)?
A.common
B.ZoopKeeper
C.MapReduce
D.YARN

2.NameNode和DataNode之间用什么通信()
A 有源脉冲
B 心跳
C H信号

3.hadoop的核心组件是(A)
A HDFS和MapReduce
B Hbase和Hive
C ZooKeeper和Pig
DMahout

4.Hadoop体系机构包括许多内容,最底层的是_HDFS____,它存储Hadoop集群中所有存储节点上的文件。

5.数据挖掘的常用方法为分类,回归分析,聚类,关联原则,特征分析,变化和偏差分析,Web页发掘。

6.大数据的4V特征是?
Volume(大量),Variety(多样),Velocity(高速),Veracity(精确)
数据体量大,数据类别多和类型多样,处理速度快,价值真实性高和密度低。

选择题:

1.HDFS中的block默认保存几份?
A.3份
B.2份
C.1份
D.不确定
答案:A
知识点:考察hadoop中默认的规则

2.以下哪个组件是Hadoop体系架构中用于分布式协作服务的?
A HDFS
B MapReduce
C Hbase
D Zookeeper
答案:D
知识点:考察Hadoop体系结构中各组件的功能

3.以下哪项不属于hadoop可以运行的?
A 单机(本地)模式
B 伪分布式模式
C 互联模式
D 分布式模式
答案:C
知识点:考察Hadoop的配置模式

填空题:

1 HDFS是一个主/从体系结构,其中有两类节点,分别为____和____:
答案:DataNode、NameNode
知识点:考察HDFS的体系结构

2.一个gzip文件大小75MB,Hadoop客户端设置的Block大小为64MB,该文件占用___个block。
答案:2个
知识点:考察Hadoop中lock大小与文件存储的关系。

简答题:

1.Hadoop的优点有哪5点?
答案:
1.高可用性
2.高扩展性
3.高效性
4.高容错性
5.低成本

知识点:考察Hadooo的特点

HDFS

填空题
1.HDFS是基于流数据模式访问和处理超大文件的需求而开发的,HDFS(2.0以后版本)默认BlockSize是( ) ;其适合读写的任务是( )。
答案:128MB 一次写入 多次读取
解析:
(1)在Hadoop 1.X版本中,默认blocksize为64MB;
(2)在Hadoop 2.X版本中,默认blocksize为128MB;
(3)HDFS 是设计成适应一次写入,多次读出的场景,且不支持文件的修改。正因为如此,HDFS 适合用来做大数据分析的底层存储服务,并不适合用来做网盘等应用,因为修改不方便,延迟大,网络开销大,成本太高。

选择题
2. HDFS的缺点不包括哪一项?
A.不支持多用户写入和任意修改文件
B.不适合低延迟数据访问
C.不兼容廉价的硬件设备
D.无法高效存储大量小文件
答案:C
解析:
(1)HDFS优点:兼容廉价的硬件设备、流数据读写、大数据集、跨平台兼容性、简
单的文件模型
(2)HDFS的缺点:不支持多用户写入和任意修改文件、不适合低延迟数据访问、无
法高效存储大量小文件

  1. 以下哪个不是 HDFS 的守护进程()
    A.secondary namenode
    B.datanode
    C.mrappmaster/yarnchild
    D.namenode
    答案:C
    解析:mrappmaster/yarnchild 是 YARN 中的。
  2. 分布式文件系统HDFS采用了主从结构模型,由计算机集群中的多个节点构成的,这些
    节点分为两类,一类存储元数据叫________,另一类存储具体数据叫 ________。
    A、名称节点,数据节点
    B、从节点,主节点
    C、数据节点,名称节点
    D、名称节点,主节点
    答案:A
    简答题:
  3. HDFS相比于其他的文件系统有什么特征?
    答:1.对于整个集群有单一的命名空间。
    2.数据一致性。适合一次写入多次读取的模型,客户端在文件没有被成功创建之前无法看到文件存在。
    3.文件会被分割成多个文件块,每个文件块被分配存储到数据节点上,而且根据配置会有复制文件块来保证数据的安全性。

1.一个HDFS集群是由()个NameNode和()个DataNode组成
A.一,多
B.多,一
C.一,一
D.多,多
答案:A
难易程度:易
答案解析:HDFS集群分别是由一个NameNode和多个的 DataNode组成
知识点:HDFS集群分别是由一个NameNode和多个的 DataNode组成。其中,NameNode是HDFS集群的主节点,负责管理文件系统的命名空间以及客户端对文件的访问;DataNode是集群的从节点,负责管理它所在节点上的数据存储。

2.以下哪个不是HDFS的守护进程?
A、secondarynamenode
B、datanode
C、mrappmaster/yarnchild
D、namenode
答案:C
难易程度:中
知识点:Hadoop 在正常启动后有五个重要的守护进程,分别是NameNode,SecondaryNameNode,DataNode,JobTracker,TaskTracker。这五个进程肩负着 HDFS 在存储和计算上的各项任务。

3.关于SecondaryNameNode 哪项(C)是正确的?
A:它是NameNode 的热备
B:它是内存没有要求
C:他的目的是帮助NameNode 合并编辑日志,减少NameNode 启动时间
D:SecondaryNameNode 应与NameNode 部署到一个节点
答案:C
难易程度:中
答案解析:A.冷备B.需求一定的内存D.SecondaryNameNode内存需求和NameNode在一个数量级上,所以通常SecondaryNameNode(运行在单独的物理机器上)和NameNode运行在不同的机器上。
知识点:SecondryNameNode相关知识
4.HDFS采用____________的架构来存储数据
答案:master/slave

5.HDFS提供了一个____________和____________的海量数据存储解决方案。
答案:高度容错性,高吞吐量

6.HDFS的优点和缺点有哪些?
答案:优点:①处理超大文件;②流式的数据访问;③运行于廉价的商用机器集群上;
缺点:①不适合低延迟数据访问;②无法高效存储大量小文件。

一、选择题

  1. 以下对名称节点(NameNode)理解错误的是( )
    A. 名称节点的数据保存在内存中
    B. 名称节点通常用来保存元数据
    C. 名称节点作为中心服务器,负责管理文件系统的命名空间及客户端对文件的访问
    D. 名称节点用来负责具体用户数据的存储
    答案:D
    难易程度:中
    解析:名称节点最主要功能是记录每个文件中各个块所在的数据节点的位置信息。名称节点在启动时,系统会将FsImage中的内容加载到内存中去,之后再执行EditLog中的操作,使得内存中的数据和实际同步,存在内存中的支持客户端的读。而D选项错误,应为数据节点负责具体用户数据的存储,故选择D。
    知识点:名称节点(NameNode)的功能

  2. 下列关于HDFS的描述,哪个不正确?( )
    A. HDFS采用了相应的数据存放、数据读取和数据复制策略,来提升系统整体读写响应性能
    B. HDFS采用了主从(Master/Slave)结构模型
    C. HDFS采用块的概念,使得系统的设计变得更加复杂
    D. HDFS采用了冗余数据存储,增强了数据可靠性
    答案:C
    难易程度:易
    解析:
    与一般文件系统一样,HDFS也有块(block)的概念,HDFS上的文件也被划分为块大小的多个分块作为独立的存储单元。HDFS设置数据块的好处有:(1)一个文件的大小可以大于集群任意节点磁盘的容量(2)容易对数据进行备份,提高容错能力(3)使用抽象块概念而非整个文件作为存储单元,大大简化存储子系统的设计。因此选项C错误。
    知识点:HDFS数据块的相关概念

  3. DataNode的主要功能包括哪些?( )
    A.负责数据的存储和读取
    B.根据客户端或者是名称节点的调度来进行数据的存储和检索
    C.向名称节点定期发送自己所存储的块的列表
    D.用来保存名称节点中对HDFS元数据信息的备份,并减少名称节点的重启时间
    答案:ABC
    难易程度:中
    答案解析:选项D描述的是第二名称节点的功能,而不是DataNode的功能。
    DataNode负责数据的存储和读取,同时根据名称节点的命令创建、删除数据块的冗余复制,DataNode会周期性的运行block扫描器,来检查block是否损坏,每个Datanode结点会周期性地向NameNode发送心跳信号和文件块状态报告,其具体工作流程如下图所示。

知识点:DataNode的功能
二、填空题

  1. HDFS采用master/slave的架构来存储数据,这种架构主要由4个部分组成,分别为 、 、 和 。
    答案:HDFS Client NameNode DataNode Secondary NameNode
    难易程度:易
    解析:HDFS 的Master/Slave架构主要由四个部分组成,分别为HDFS Client、NameNode、DataNode和Secondary NameNode。一个HDFS集群是由一个NameNode和一定数目的DataNode组成的。NameNode是一个中心服务器,负责管理文件系统的名字空间 (Namespace )及客户端对文件的访问。集群中的DataNode一般是一个节点运行一个DataNode进程,负责管理它所在节点上的存储。
    知识点:HDFS组成
    2 . HDFS是基于流数据模式访问和处理超大文件的需求而开发的,具有高容错、高可靠性、高可扩展性、高吞吐率等特征,适合的读写任务是 、 。
    答案:一次写入、多次读取
    难易程度:中
    解析:HDFS被设计成适应一次写入,多次读出的场景,且不支持文件的修改。一个文件经过创建、写入和关闭之后就不需要改变。这一假设简化了数据一致性问题,并且使高吞吐量的数据访问成为可能。也正因为如此,HDFS适合用来做大数据分析的底层存储服务,并不适合用来做网盘等应用,因为修改不方便,延时高,网络开销大。
    知识点:HDFS的特点
    三、简答题
    请根据下图简述HDFS读数据的过程。

答案:
1.客户端通过 FileSystem.open() 打开文件。
2.客户端向NameNode发起RPC远程调用,请求读取文件数据。NameNode检查文件是否存在,如果存在则获取文件的元信息(blockID以及对应的DataNode列表。
3.客户端收到元信息后,选取一个距离网络最近的DataNode,依次请求读取每个数据块。客户端首先要校验文件是否损坏,如果损坏,客户端会选取另外的DataNode请求。
4.DataNode与客户端连接,传输对应数据块,客户端收到数据缓存到本地之后写入文件。
5.依次传输剩下的数据块,直到整个文件合并完成。
6.当客户端全部读取完毕后,调用 Close() 函数关闭文件。
难易程度:中
解析:客户端将要读取的文件路径发给NameNode,NameNode获取文件的元信息(主要是block的存放位置信息)返回给客户端,客户端根据返回的信息找到相应DataNode逐个获取文件的block并在客户端本地进行数据追加合并,从而获得整个文件。

知识点:HDFS文件的读过程

MapRduce

1、有关MapReduce,下面哪个说法是正确的()
A.它提供了资源管理能力
B.它是开源数据仓库系统,用于查询和分析存储在Hadoop中的大型数据集
C.它是Hadoop数据处理层
答案:C
答案解析:yarn提供了资源管理能力;Hive是开源数据仓库系统,用于查询和分析存储在Hadoop中的大型数据集。

2、在MapReduce中,Map数取决于()的总量
A.任务数
B.输入数据
C.输出数据
答案:B
答案解析:map的数量通常是由hadoop集群的DFS块大小确定的,也就是输入文件的总块数,正常的map数量的并行规模大致是每一个Node是10~100个。

3、下列关于MapReduce说法不正确的是( )
A. MapReduce是一种计算框架
B. MapReduce来源于google的学术论文
C. MapReduce程序只能用java语言编写
D.MapReduce隐藏了并行计算的细节,方便使用。
答案:C
答案解析:MapReduce可以使用java,python,c++等语言编程

4、MapReduce将复杂的、运行于大规模集群上的并行计算过程高度地抽象到了两个函数:(Map和Reduce)
5、HDFS以固定大小的block为基本单位存储数据,MapReduce的处理单位是(split)。

6、在MapReduce出现之前,已经有像MPl这样非常成熟的并行计算框架了,那么为什么Google还需要MapReduce? MapReduce 相较于传统的并行计算框架有什么优势?
传统并行计算框架 MapReduce
集群架构/容错性 共享式(共享内存/共享存储), 容错性差 非共享式, 容错性好
硬件/价格/扩展性 刀片服务器、高速网、SAN,价格贵,扩展性差 普通PC机,便宜,扩展性好
编程/学习难度 what-how,难 what,简单
适用场景 实时、细粒度计算、计算密集型 批处理、非实时、数据密集型

1.下列说法错误的是________。
A、Map函数将输入的元素转换成<key,value>形式的键值对
B、Hadoop框架是用Java实现的,MapReduce应用程序则一定要用Java来写
C、不同的Map任务之间不能互相通信
D、MapReduce框架采用了Master/Slave架构,包括一个Master和若干个Slave
答案:B
解析:Hadoop框架是用Java实现的,但是MapReduce应用程序不一定要用Java来写

2.关于Hadoop MapReduce的叙述错误的是________。
A、MapReduce采用“分而治之”的思想
B、MapReduce的输入和输出都是键值对的形式
C、MapReduce将计算过程划分为Map任务和Reduce任务
D、MapReduce的设计理念是“数据向计算靠拢”
答案:D
解析:MapReduce的设计理念是“计算向数据靠拢”

3.Hadoop MapReduce计算的流程是________。
A、Map任务—Shuffle—Reduce任务
B、Map任务—Reduce任务—Shuffle
C、Reduce任务—Map任务—Shuffle
D、Shuffle—Map任务—Reduce任务
答案:A

填空题
1.MapReduce体系结构主要由________、、________组成。
答案:TaskTracker、Task、JobTracker、Client
解析:Client:客户端,用于提交作业
JobTracker:作业跟踪器,负责作业调度,作业执行,作业失败后恢复
TaskTracker:任务跟踪器,负责任务管理(启动任务,杀死任务等)
Task:分为Map Task 和Reduce Task

  1. 所谓___过程,是指对Map输出结果进行分区、排序、合并等处理,并交给Reduce的过程。
    答案:shuffle

简答题
比较传统并行计算框架(比如MPI)和MapReduce并行计算框架
答案:前者相比后者学习起来更难
前者适用于实时、细粒度计算、计算密集型,后者适用于批处理、非实时、数据密集

前者是共享式(共享内存/共享存储),容错性差,后者是非共享式的,容错性好
前者所需硬件价格贵,可扩展性差,后者硬件便宜,扩展性好

1.MapReduce编程模型,键值对<key, value>的key必须实现哪个接口? ( )
A.WritableComparable B. Comparable
C. Writable D. LongWritable
答案:A

2.HDFS1.0 默认 Block Size大小是多少。 ( )
A. 32MB B. 64MB
C. 128MB D. 256MB
答案:B

3.Client 端上传文件的时候下列哪项正确? ( )
A. 数据经过 NameNode 传递给 DataNode
B. Client 端将文件切分为 Block,依次上传
C. Client 只上传数据到一台 DataNode,然后由 NameNode 负责 Block 复制工作
D. 以上都不正确
答案:B

  1. Hadoop框架最核心的设计:_。
    答案:HDFS; MapReduce
    难易程度:低
    答案解析:Hadoop框架最核心的设计就是HDFS和MapReduce。
    知识点:Hadoop的核心设计

5.HDFS为海量的数据提供了___,MapReduce为海量的数据提供了__
答案:存储,计算
难易程度:中
答案解析:HDFS和MapReduce对数据提供的操作分别是存储和计算 知识点:Hadoop核心设计的功能

6.简述Hadoop的特点。
答案:1.高可靠性。Hadoop按位存储和处理数据的能力值得人们信赖 。
2.高扩展性。Hadoop是在可用的计算机集簇间分配数据并完成计算任务的,这些集簇可以方便地扩展到数以千计的节点中。
3.高效性。Hadoop以并行的方式工作,能够在节点之间动态地移动数据,并保证各个节点的动态平衡,因此处理速度非常快。
4.高容错性。Hadoop能够自动保存数据的多个副本,并且能够自动将失败的任务重新分配。
5.低成本。与一体机、商用数据仓库以及QlikView、Yonghong Z-Suite等数据集市相比,hadoop是开源的,依赖于社区服务,项目的软件成本因此会大大降低,任何人都可以使用。
难易程度:低
答案解析:略
知识点:Hadoop的特点

第4章 MapReduce习题
黄宁安 陈正起 阎子涵 高恒 杜博超
一、选择题
1.在使用MapReduce程序WordCount进行词频统计时,对于文本行“hello hadoop hello world”,经过WordCount程序的Map函数处理后直接输出的中间结果,应该是下面哪种形式( )。
A. <“hello”,1>、<“hello”,1>、<“hadoop”,1>和<“world”,1>
B. <“hello”,2>、<“hadoop”,1>和<“world”,1>
C. <“hello”,1,1>、<“hadoop”,1>和<“world”,1>
D. <“hello”,<1,1>>、<“hadoop”,1>和<“world”,1>
答案:A
解析:Mapreduce处理大数据集的核心部分由map和reduce函数完成。这两个函数的具体功能由用户根据需要自己设计实现,只要能够按照用户自定义的规则,将输入的<key,value>对转换成另一个或另一批<key,value>对输出即可。
Wordcount中用户自定义的的map函数的功能为:把一行的起始偏移量作为key,一行的文本内容作为value输入。先将输入的一行文本转换为String类型的字符串,再将字符串根据空格分割(即将文本切分成单词),截取出的单词设置为key,value设置为1,然后直接输出<key,value>。
hello hadoop hello world输入到Wordcount程序后,调用map函数:hello hadoop hello world首先被转换成字符型,然后切分成hello,hadoop,hello,world,最后输出<hello,1>,<hadoop,1>,<hello,1>,<world,1>。
2.对于文本行“hello hadoop hello world”,经过WordCount的Reduce函数处理后的结果是( )。
A. <“hello”,<1,1>><“hadoop”,1><“world”,1>
B. <“hello”,2><“hadoop”,1><“world”,1>
C. <“hello”,1><“hello”,1><“hadoop”,1><“world”,1>
D. <“hello”,1,1><“hadoop”,1><“world”,1>
答案:B
解析:reduce()函数以key及对应的value列表作为输入,经合并key相同的value值后,产生另外一系列key/value对作为最终输出写入HDFS。“hello hadoop hello world”输入到Wordcount程序后,调用map函数:“hello hadoop hello world”首先被转换成字符型,然后切分成hello,hadoop,hello,world,输出<“hello”,1><“hello”,1><“hadoop”,1><“world”,1>然后合并key相同的value值后,产生另外一系列key/value,为<“hello”,2><“hadoop”,1><“world”,1>。
3.Hadoop MapReduce计算的流程是( )。
A. Map任务—Shuffle—Reduce任务
B. Map任务—Reduce任务—Shuffle
C. Reduce任务—Map任务—Shuffle
D. Shuffle—Map任务—Reduce任务
答案:A
解析:总的来说MapReduce的过程可以划分为三个部分:
1)Map: 数据映射。首先通过Map读取HDFS中的数据,然后经过拆分,将每个文件中的每行数据分拆映射成键值对,最后输出作为Reduce的输入。
2)Shuffle:从Map的数据输出到Reduce的数据输入过程对数据的分区,排序过程。
3)Reduce: 数据汇总。Reducer任务接收Mapper任务的输出,归约处理后写入到HDFS中。
二、填空题
1.reduce任务可以分为 、 、 和 四个阶段。
答案:混排、排序、reducer、输出格式。
解析:教材第86页。
2.Hadoop中的每个map任务可以细分为为 、 、 和 四个阶段。
答案:record reader、mapper、combiner、partitioner
解析:教材第85页。
三、简答题
问题:简述适合用MapReduce来处理的任务或者数据集需满足怎样的要求。
答案:待处理的数据集可以分解成许多小的数据集,而且每一个小数据集都可以完全并行地进行处理。
解析:Mapreduce处理任务的思想是“分而治之,迭代汇总”,Mapreduce将作业分成一系列运行在分布式集群中的的map任务和reduce任务。其中map负责把任务分成多个子任务,ruduce将分解后多个子任务的结果汇总起来,在map阶段,Mapreduce将任务的输入数据分割成固定大小的片段(splits),每一个split会对应一个map任务。也就是说每个任务都被指定在小的数据集上,所以用Mapreduce进行处理的任务或者数据集需要满足可以分解成许多小的数据集,而且每一个小数据集都可以完全并行地进行处理的条件。

Hbase

第五章:
选择题:

  1. HBase来源于哪篇博文?
    AThe Google File System
    B MapReduce
    C BigTable
    D Chubby
    答案:C
    2.下面哪些选项正确描述了HBase的特性?
    A高可靠性
    B高性能
    C面向列
    D可伸缩
    答案:A B C D
    解析:本题考察HBase数据库的特性。
    3 HFile数据格式中的Data字段用于()。
    A存储实际的KeyValue数据
    B存储数据的起点
    C指定字段的长度
    D存储数据块的起点
    答案:A
    解析:本题考察HFile数据格式中的Data字段作用。

填空题:
1.HBase是一个分布式、面向_的开元数据库,HBase在_方向上将表分成多个_
答案:列、行、Region
解析:涉及知识点:HBase存储结构及重要模块
HBase最大的特点之一就是面向列存储,这使得在查询时,能大大减少读取的数据量;Region是HBase中的重要模块,是真实存放数据的地方,而HBase是在行方向上将表分成多个Region
2.HBase在表里存储数据使用的四维坐标是_、、_。
答案:行键、列族、列限定符、时间版本(时间戳)ps:注意顺序不能打乱
解析:涉及知识点:数据坐标
HBase中需要根据第一步索引行键、第二步索引列族、第三步索引列限定符、第四部步索引时间戳来确定一个单元格。

简答题:
在HBase中,每个HRegion Server维护一个HLog,而不是每个HRegion维护一个,请说明这种做法的优点与缺点?
解析:本题涉及HBase体系结构中具体到HLog的知识点。
答案:每个HRegion Server维护一个HLog,而不是每个HRegion一个。这样不同HRegion(来自不同表)的日志会混在一起,这样做的目的是,(优点)不断追加单个文件相对于同时写多个文件而言,可以减少磁盘寻址次数,因此,可以提高对表的写性能。带来的麻烦是,(缺点)如果一台HRegionServer下线,为了恢复其上的HRegion,需要将HRegionServer上的HLog进行拆分,然后分发到其它HRegionServer上进行恢复。

1.下面对HDFS和HBase的描述正确的是?D
A HDFS是适于存储大容量文件的分布式文件系统
B HBase是建立在HDFS之上的数据库
C HDFS不支持快速单独记录查询
D HBase不提供在较大的表中快速查找
答案解析:D HBase提供在较大的表中快速查找
知识点:HDFS和HBase的区别
2.下面对HBase的相关描述错误的是?B、C
A 客户端Client是整个HBase系统的入口,使用者直接通过客户端操作HBase
B Client与HMaster进行数据操作类通信
C Client与HRegionServer进行管理类通信
D Client使用HBase的RPC机制与HMaster、HRegionServer及进行通信
答案解析:Client与HRegionServer进行数据操作类通信,Client与HMaster进行管理类通信。
知识点:HBase的相关架构、Client的作用
3.41. 解压.tar.gz结尾的HBase压缩包使用的Linux命令是?A
A tar -zxvf
B tar -zx
C tar -s
D tar -nf
答案解析:linux中tar的解压命令:-x:解压,-z:有gzip属性的,-f: 使用档案名字,切记,这个参数是最后一个参数,后面只能接档案名,-v:显示所有过程。
知识点:HBase安装的相关过程以及操作。
4.HBase是一款开源的NoSQL数据库?
答案: 对!
知识点:HBase的相关概念
5.HMaster是Hbase的主节点,它管理用户对Table的 、___、___操作
答案:增、删、改、查
知识点:HMaster与HBase的关系以及HMaster在HBase中的作用
6.HBase的特点有哪些?
答案:容量大、面向列、多版本、稀疏性、扩展性、高可靠性、高性能、分布式的等。
知识点:HBase的特点以及相关概念。

Spark

HBase
1.如果对HBase表添加数据记录,可以使用(C)命令进行操作
A.create
B.get
C.put
D.scan
难易程度:中
解析:HBase 为用户提供了一个非常方便的命令行使用方式——HBase Shell。HBase Shell 提供了大多数的 HBase 命令,通过 HBase Shell,用户可以方便地创建、删除及修改表,还可以向表中添加数据,列出表中的相关信息等。
知识点:create:创建表
get:查询某行记录
put:向表中插入数据
scan:扫描全表数据
2.下面对HBase的描述哪个是错误的(A)
A.不是开源的
B.是面向列的
C.是分布式的
D.是一种NoSQL数据库
难易程度:中
解析:HBase是基于Hadoop的开源数据库。
知识点:Hbase是一个高可靠、高性能、面向列、可伸缩的分布式数据库。
3.HBase通过(D)提供强大的计算能力
A.Zookeeper
B.Chubby
C.RPC
D.MapReduce
难易程度:中
解析:MapReduce是处理分布在数百台机器上的数据的计算框架,为HBase提供强大的计算能力。
知识点:Zookeeper是一个分布式的、开源的程序协调服务
Chubby是一个分布式锁服务
RPC是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议
4.Hbase伪分布式模式需要(1)个节点?
难易程度:易
解析:所谓伪分布模式的含义是:把所有的角色全部运行在一个节点上,就叫做伪分布式。
知识点:全分布:实体机或者虚拟机组件的机群。
伪分布:把所有的角色全部运行在一个节点上
5.安装Hbase之前必须安装(操作系统)和(JDK)
难易程度:易
解析:HBase部署在操作系统上,并由JDK编写。
知识点:HBase部署在操作系统上,并由JDK编写。
6.Hbase的架构中包含了那些组件,每个组件有什么作用?
难易程度:难
答:Cilent:可以由javaApi HbaseShell充当,向Zookeeper发送请求;维护缓存(数据和HRegion的地址信息),加快访问速度
Zookeeper:负责HMaster的选举,保证集群里只有一个HMaster;存储HBase元数据信息;监听HRS
HRegionServer:具体执行读写操作的;负责HRegion的拆分;负责StoreFile的合并;处理客户端的请求;维护HLog日志信息;和HDFS交互,存储数据
HMaster:更新元数据的操作;HRegion分裂后,负责HRegion新地址的分配;HRegionServer挂掉后,负责故障转移;空闲时负载均衡;StoreFile的合并
Spark
1.下面哪个不是Spark的组件(c)
A.Spark Streaminh
B.MLlib
C.Spark R
D.Graph X
难易程度:难
解析:SparkR是一个R语言包,它提供了轻量级的方式使得可以在R语言中使用Apache Spark
知识点:spark四大组件分别为:1、Spark Streaming,针对实时数据进行流式计算的组件;2、SparkSQL,用来操作结构化数据的组件;3、GraphX,Spark面向图计算提供的框架与算法库;4、MLlib,一个机器学习算法库。
2.Spark支持的分布式部署方式中哪个是错误的(A)
A.Spark on Local
B.Standalone
C.Spark on Mesos
D.Spark on YARN
难易程度:中
解析:Spark on Local是本地部署。
知识点:Spark 支持很多种分布式部署模式,其中包括,Standalone、YARN、Mesos 以及 Kubernetes
3.下面哪个不是RDD的特点(C)
A.可分区
B.可序列化
C.可修改
D.可持久化
难易程度:中
解析:RDD是不可变的。
知识点:RDD的特点:
它是在集群节点上的不可变的、已分区的集合对象;通过并行转换的方式来创建如(map, filter, join, etc);失败自动重建;可以控制存储级别(内存、磁盘等)来进行重用;必须是可序列化的;是静态类型的。
4.Spark的集群安装模式分为(Standalone模式)、(Hadoop YARN模式)、(Apache Mesos模式)
解析:Spark 支持很多种分布式部署模式,其中包括,Standalone、YARN、Mesos 以及 Kubernetes
知识点:Spark 支持很多种分布式部署模式,其中包括,Standalone、YARN、Mesos 以及 Kubernetes
难易程度:中
5.Spark生态圈以(Spark Core)为核心,从HDFS、Amazon S3和Hbase等持久层读取数据。
解析:Spark 生态圈以 Spark Core 为核心,从 HDFS、Amazon S3 和 HBase 等持久层读取数据,以 Mesos、YARN 和自身携带的 Standalone 为 Cluster Manager 调度 Job 完成 Spark 应用程序的计算,这些应用程序可以来自于不同的组件。
难易程度:难
知识点:

6.简述spark core在spark中的作用,并说明spark core与rdd之间的关系
答:用于实现spark的基本功能,如任务调度,内存管理,错误恢复与存储系统交互等。
spark core中包含对rdd的api定义,是spark的主要编程对象。
难易程度:中

一、选择题
1.Spark默认的存储级别()
A. MEMORY_ONLY
B. MEMORY_ONLY_SER
C. MEMORY_AND_DISK
D. MEMORY_AND_DISK_SER
2.
答案:A

2.spark的特点包括()
A. 快速
B. 通用
C. 可延伸
D. 兼容性

答案:ABD

Spark driver的功能是什么()
A. 是作业的主进程
B. 负责了作业的调度
C. 负责向HDFS申请资源
D. 负责作业的解析

答案:ABD

二、填空题
1.Stage 的 Task 的数量由_____决定。
答案:Partition
3.Spark的组件_____用于支持实时计算需求。
答案:SparkStreaming

三、简答题
1.简述一下SparkRDD的概念,DataFrame和RDD有什么区别?
答案:
弹性分布式数据集,RDD是分布式内存的一个抽象概念,提供了一种高度受限的共享内存模型,是只读的记录分区集合,RDD可以看作是Spark的一个对象,本身存在于内存中,是Spark主要的编程对象。
Dataframe比RDD多了schema。

第七章 集群计算spark
数科2002 马贤至小组
一、选择题
1.下列哪个不是Spark的适用场景场景?()
A.快速查询系统 B.业务推荐系统 C.高实时性的流计算 D.用户图计算
答案:C
难易程度:易
答案解析:Spark Streaming是一个对实时数据进行高通量、容错处理的流式处理系统,但是在实时性要求很高,如毫秒级的情况下是不适用的,此时应该使用Storm。A选项,Spark最大的特点就是快,使用内存计算比MapReduce快上一百倍;B选项,如果听过第十二章同学们的展示就知道,推荐系统的实现需要用到Spark MLlib;D选项,GraphX是Spark的重要组件,用于图计算,上课讲过。
知识点:Spark的应用场景(书P167)、Spark的组件(书P159)

2.RDD的操作算子包括Transformation和Action,请问下列哪个选项是Action操作?()
A.map B.count C.union D.reduceByKey

答案:B
难易程度:易
答案解析:Transformation操作不会有输出结果,而Action操作会触发集群计算并得到返回值。在书P176页图中可以看到count操作可以统计一篇文档的行数,有返回结果,是Action,而且在书P175页的表中明确写出count是Action。而A、C、D选项是Transformation,在P175页表中明确提到,且如果上课听过陈洋捷、杨泽伟等同学讲解的Spark操作实例的话是一定知道的这三个是中间过程Transformation的。
知识点:RDD操作算子的类型(书P174-P176、书P177操作实例)

3.下列哪个选项是Spark程序运行的单机模式?()
A.Spark on Local B.Spark on YARN C.Spark on Mesos D.Standalone

答案:A
难易程度:中
答案解析:Spark安装有两种模式,一种是本地模式(又称单机模式),仅在一台计算机上安装,即Spark on Local;另一种是集群模式,分为Standalone、Spark on YARN、Spark on Mesos。这个题书上有原题并且老师在微信群中出过,上课的时候还表扬知道Standalone是集群模式的同学,因为看着其中的单词’alone’确实可能让人觉得这个是单机。
知识点:Spark的安装模式(P167例7-3、书P169)

二、填空题
1.RDD有两种血缘关系,分别是宽依赖和窄依赖,其中最主要的区别是宽依赖比窄依赖多了_____过程。

答案:Shuffle
难易程度:易
答案解析:RDD之间的血缘关系称为依赖,依赖包括两种:一种是宽依赖,RDDs之间的分区是一一对应的;另一种是宽依赖,下游RDD的每个分区与上游RDD的每个分区都有关,是多对多的关系。通过RDDs之间的依赖关系,一个任务流可以描述为DAG,在实际执行过程中宽依赖对应于Shuffle,这是老师和同学们多次强调的。
知识点:RDD的依赖关系(书P160)

2.通常情况下,Spark的开发者会采用Java+Maven和_______的搭配组合,其中加号的前一项是编程语言,后一项是对该语言进行编译的工具。

答案:Scala+SBT
难易程度:中
答案解析:Spark应用程序的开发可以使用python、java、scala,其中使用Maven对java进行编译,使用SBT对Scala进行编译,这在我组陈洋捷同学的展示中有详细讲解和应用,安装的视频在学习通。
知识点:Spark的编程语言和编译工具(书P177)

三、简答题
1.Spark on Yarn分为Spark on Yarn-cluster和Spark on Yarn-client两种模式,请写出决定运行模式的因素并简述这两种运行模式的不同点。

答案:
决定运行模式的因素:SparkContext
运行模式的不同点:
1.在client模式下Driver驱动程序运行在提交任务的客户端上,与集群通信成本高。在cluster模式下驱动程序运行在Yarn集群上,与集群通信成本低。
2.在client模式下Driver在客户端上,故Driver程序的输出结果可以在控制台查看。在cluster模式Driver在Yarn集群上,故Driver程序的输出结果需要在Yarn日志中查看。
3.client模式会导致本地机器负责Spark任务的调度,网卡流量会激增;而cluster模式没有流量激增问题。
难易程度:难
答案解析:实际应用中,Spark应用程序的运行模式取决于传递给SparkContext的MASTER环境变量的值。另外,上课时1班同学介绍.Spark on Yarn的两种模式时老师提问这两种模式的不同,老师说最大的不同就是Context不同。而运行模式的不同点需要比较课本上的流程或看学习通的课件。
知识点:Spark on Yarn的运行模式和区别(书P172、课件)

第六章

第一、六章

1.NoSQL的主要存储模式不包括()。
A.键值对存储模式  B.列存储模式  C.文件存储模式  D.图存储模式
答案:C
难易程度:简单
答案解析:应该为:文“档“存储模式而不是文”件“存储模式
知识点:NoSQL的主要存储模式包括:键值(key–value)、文档(Document)、列族(Column Families)、图(Graph)4种存储模式

  1. 下列关于NoSQL数据库和关系型数据库的比较,不正确的是
    A. NoSQL数据库缺乏统一的查询语言,而关系型数据库有标准化查询语言
    B. NoSQL数据库的可扩展性比传统的关系型数据库更好
    C. NoSQL数据库很容易实现数据完整性,关系型数据库很难实现数据完整性
    D. NoSQL数据库具有弱一致性,关系型数据库具有强一致性
    答案:C
    难易程度:简单
    答案解析:关系数据库可以很容易实现数据完整性,比如通过主键或者非空约束来实现实体完整性,通过主键、外键来实现参照完整性,通过约束或者触发器来实现用户自定义完整性;NoSQL数据库却无法实现完整性约束

  2. 以下不是大数据特征的是?
    A.数据体量大 B.数据种类多 C.价值密度高 D.处理速度快
    答案:C
    难度程度:简单
    知识点:大数据的4个特点,数据量大(volume),数据类型繁多(variety),处理速度快(velocity),价值密度低(value)。

  3. NoSQL数据库得以存在的三大理论基石分别是____、
    答案:CAP理论、BASE原理、最终一致性

  4. NoSQL是一种___、___、不遵循ACID、不提供SQL 功能的数据库。
    难度:简单
    答案:非关系型、分布式

6.简述NoSql四大类型及其优点。
答案:
1.key-value键值存储数据库:
优点:查找速度快,大量操作时性能高
2.列存储数据库:
优点:查找速度快,可扩展性强,容易进行分布式扩展
3.文档型数据库
优点:数据结构灵活,表结构可变,复杂性低
4.Graph图形数据库
优点: 利用图结构相关算法, 可用于构建复杂的关系图谱

一、选择题
1.下列一致性模型哪些属于最终一致性模型的范畴?
A.因果一致性
B.单调读一致性
C.读自写一致性
D.弱一致性
答案:A,B,C
难易程度:中
答案解析:弱一致性:用户读到某一操作对系统的更新需要一段时间。
最终一致性:它是弱一致性的一种特例,是保证用户最终能读取到某操作的更新。
根据提供的保证不同,最终一致性模型可以划分为更多的模型,如单调读一致性、读自写一致性、因果一致性等
知识点:NOSQL技术基础的一致性策略——数据一致性模型

  1. CAP理论不包括以下哪一个()
    A.分区容忍性
    B.一致性
    C.隔离性
    D.可用性
    答案:A,B,D
    难易程度:中
    答案解析:C: 一致性:访问所有的节点,得到的数据结果都是一样的。A:可用性:所有节点都保持高可用性。P:分区容错性:这里的分区指的是网络意义上的分区。由于网络是不可靠的,所有节点之间很可能出现无法通讯的情况,在节点不能通信时,要保证系统可以继续正常服务。
    知识点:nosql技术基础-CAP原理

  2. 对比关系型数据库,关于NoSQL说法错误的是()。
    A.采用非关系的数据模型
    B.弱化模式或表结构、弱化完整性约束、弱化甚至取消事务机制
    C.无法支持,或不能完整的支持SQL语句
    D.不能实现强大的分布式部署能力
    答案: D
    难易程度:中
    答案解析:NoSQL是一些分布式非关系型数据库的统称;它采用非关系的数据模型,弱化模式或表结构、弱化完整性约束、弱化甚至取消事务机制,可能无法支持,或不能完整的支持SQL语句。
    知识点:Nosql数据库特点
    二、填空题

  3. NoSQL数据库的三大理论基石是___、
    答案:BASE,最终一致性,CAP
    难易程度:中
    答案解析:NoSQL数据库的三大理论基石是BASE,最终一致性,CAP。
    知识点:NoSQL数据库的理论基石

5.数据分区的技术有___、、___。
答案:范围分区、列表分区、散列分区、范围—散列组合分区
难易程度:中
答案解析:数据分区技术共有范围分区、列表分区、散列分区、范围—散列组合分区4种。
知识点:数据分区技术
三、简答题
6.Redis本质上是一个Key-Value类型的内存数据库,请说出其优势及缺点。
答案:Redis的出色之处不仅仅是性能,Redis 可以用来实现很多有用的功能,比如用它的List来做FIFO双向链表,能实现个轻量级的高性能消息队列服 务,用Set 可以做高性能的tag标签系统等。另外,Redis 也可以对存人的Key-Value设置过期失效时间,因此也可以当作一个功能加强版的memcached来用。
Redis的主要缺点是数据库容量受到内部内存的限制,不能用作海量数据的高性能读/写,并且它没有原生的可扩展机制,不具有可扩 展能力,要依赖客户端来实现分布式读/写,因此Redis适合的场景主要局限在较小数据量的高性能操作和运算上。
难易程度:中
知识点:Nosql典型工具-Redis

1.选择题
下列选项中,哪个属于列式存储数据库?(D )
A.MongoDB
B.Redis
C.Neo4j
D.HBase

HBase、MongoDB分别属于那种类型的NoSQL数据库?(C)
A.键值数据库、图形数据库
B.文档数据库、文档数据库
C.列族数据库、文档数据库
D.文档数据库、列族数据库

下面不属于NoSQL数据库的特点的是(B)。
A.开源
B.支持SQL
C.分布式
D.非关系型
2.填空题
海量数据容错技术面临的挑战有哪些?
3V挑战,即数量(Volume)、速度(Velcity)、多样( Variety)。

NoSQL数据库主要有四大类型,键值对存储数据库_、文档存储数据库、__列式存储数据库__及图形存储数据库。
3.简答题
试简述CAP理论的具体含义。
C代表着一致性(Consistency),指的是数据同步的性质
A代表着可用性(Availabilir)可以理解为是否获取数据,以及数据获取的速度
P代表着分区容忍性(Partion Tolerance)。指的是系统中的数据分布性的大小对系统的正确性、性能的影响(一定程度上就是可扩展性)。

而CAP理论的核心理论就是上述的CAP三点无法同时满足,所以就要在其中进行取舍,选取两个。

第三题解析:
传统关系数据库:关系代数理论,支持ACID四性,借助索引实现高效查询。
事务具有ACID四性:保证强一致性
NOSQL数据库摒弃了传统关系型数据库ACID的特性,采用分布式多节点的方式,基于CAP理论,BASE原理和最终一致性,更适合大数据的存储和管理

第一题、第二题、第五题解析:
在这里插入图片描述

storm

选择:
1.关于storm集群框架,下列说法正确的是( )
A.用户在向Nimbus提交Topology后,由Nimbus直接为Supervisor分配任务
B.每个Supervisor节点只能开辟一个worker进程
C.Bolt即可以处理Tuple,也可以将处理后的Tuple作为新的Streams发送给其他Bolt
D.Storm认为每个流都有一个源头,并把这个源头抽象为Stream
答案:C
难易程度:中
答案解析:
错误。用户在提交Topology后,Nimbus将从节点的任务分配情况提交给ZooKeeper,不是直接与从节点进行交互
错误。每个Supervisor节点可以开辟多个worker进程
正确。
错误。Storm将流数据源头抽象为Spout
知识点: Storm的集群框架
2、Storm的特点和特性是什么?
①编程简单②延迟高③分布式④可扩展
A、①②③
B、①②④
C、②③④
D、①③④
答案:D
难易程度:易
答案解析:
编程简单:开发人员只需要关注应用逻辑,而且跟Hadoop类似,Storm提供的编程原语也很简单
高性能,低延迟:可以应用于广告搜索引擎这种要求对广告主的操作进行实时响应的场景。
分布式:可以轻松应对数据量大,单机搞不定的场景
可扩展: 随着业务发展,数据量和计算量越来越大,系统可水平扩展
3、下列关于Storm的说法,哪种是错误的?()
A.Supervisor负责接受Nimbus分配的任务
B.Nimbus负责资源分配和任务调度
C.Worker运行具体处理组件逻辑,并管理Supervisor
D.Zookeeper协调Nimbus和Supervisor的工作
难度:中
答案:C
答案解析:
Streaming 中分为了业务进程和数据进程,其中业务逻辑进程有以下几种:(1) Topology:Streaming中运行的一个实时应用程序。(2)Nimbus:负责资源分配和任务调度。(3)Supervisor:负责接受 Nimbus 分配的任务,启动和停止属于自己管理的worker进程。(4) Worker:Topology 运行时的物理进程。每个Worker是一个JVM进程。(5)ZooKeeper :为Streaming服务中各进程提供分布式协作服务。主备 Nimbus、Supervisor、Worker将自己的信息注册到 ZooKeeper中,Nimbus据此感知各个角色的健康状态。(6) Task:Worker中每一个 Spout/Bolt的线程称为一个task。
填空:
1、Storm消息处理至少( )次
难度:易
答案:一
解析:实现Storm消息处理至少一次需要ACK机制完成,至少一次是因为若一个Spout发消息多个Bolt处理时,其中一个Bolt处理失败调用fail,则Spout会重发消息给所有Bolt,消息处理成功的Bolt将会处理消息两次。
2、storm集群中包含两类节点是:主控节点和工作节点。
难度:易
答案:主控节点、工作节点
答案解析:考查基础知识点

简答题:

storm的设计理念与特点:
Storm的特点
(1) 整合性。方便地与队列系统和数据库系统进行整合
(2) 简易的API。Storm的API在使用上简单方便。
(3) 可扩展性。并行特点,可以部署在分布式集群。
(4) 容错性。自动故障节点重启。
(5) 可靠的消息处理。保证每个消息都能完整处理。
(6) 支持各种编程语言。
(7) 快速部署。
(8) 开源、免费。
Storm设计思想
Streams:流数据是一个无限的Tuple序列。
Spouts:流数据的源头。Bolts:流数据的转换过程。Topology:Spouts和Bolts组成的拓扑网络,流转换图。Stream Groupings: 告知两个Bolt之间怎样进行Tuple传递。
ShuffleGrouping: 随机分组,随即分发Stream中的Tuple,保证每个Bolt的Task接收Tuple数量大致一致。
FiledsGouping: 按照字段分组,保证相同字段的Tuple分配到同一个Task中。AllGrouping: 广播发送,每一个Task都会收到所有的Tuple.
GlobalGrouping:全局分组,所有Tuple分到同一个Task中。
NonGrouping: 不分组。
DirectGrouping:直接分组,直接指定由某个Task来执行Tuple的处理。

选择题:

  1. hadoop运行的是MapReduce任务,类似的Storm运行的为()任务。
    A. Bolt
    B. Spout
    C. Tuple
    D. Topology
    答案:D
    解析:考察storm的计算框架
  2. storm集群中,()用来管理节点上的任务
    A Nimbus进程
    B Supervisor进程
    C Worker进程
    D Zookeeper
    答案:B
    解析:考察storm的总体架构设计,考察三种守护进程的功能
  3. 以下为流计算框架的是()
    A. Storm
    B. Spark Streaming
    C. Flink
    D. 以上都是
    答案:D
    解析:考察流计算框架

填空题:
1.Flink是一个针对( )和( )的分布式处理引擎。
答案:流数据 批数据
解析:本题考察流计算框架中Flink的理解
2. Storm的适用场景为( )和( )。
答案:流数据处理 分布式RPC
解析:本题考察Storm框架的简介

简答题:
Storm框架设计中,nimbus进程和supervisor进程发生短暂故障时,系统仍能正常运行,表现出良好的稳定性,请简述原因。
解析:本题涉及Storm的框架设计和设计思想知识点
答案:Storm采用了Zookeeper作为分布式协调组件,一个Zookeeper集群负责Nimbus和多个Supervisor之间的所有协调工作(一个完整的拓扑可能被分为多个子拓扑,并由多个supervisor完成)。Nimbus后台程序和Supervisor后台程序都是快速失败(fail-fast)和无状态的,所有状态维持在Zookeeper或本地磁盘中。在这种设计中,master节点并没有直接和worker节点通信,而是借助中介Zookeeper,这样一来可以分离master和 worker的依赖,将状态信息存放在Zookeeper集群内以快速回复任何失败的一方。这意味着nimbus进程和supervisor进程发生短暂宕机时,系统仍能正常运行,这种设计使得Storm极其稳定。

1.下列关于流计算的说法不正确的是()
A. 流计算框架包括:Storm、Spark Streaming、Flink、Apache Flink等。
B.流计算的特点是将流式数据不经存储直接在内存中进行计算
C.MapReduce适用于处理流数据
D.流计算处理系统中用户处于被动接收的状态
答案:D
答案解析:MapReduce是专门面向静态数据的批量处理的,各种实现机制都为批处理做了高度优化,不适合用于处理持续动态到达的流数据。
知识点:知识点1:流计算框架包括:Storm、Spark Streaming、Flink、Apache Flink、Kafka、Samza和Heron;知识点2:流计算的特点是全内存计算;知识点3: MapReduce是专门面向静态数据的批量处理的,各种实现机制都为批处理做了高度优化,不适合用于处理持续动态到达的流数据。知识点4:流计算处理系统在流数据不断变化的运动过程中实时分析,捕捉到可能对用户有用的信息,整个过程中,数据分析处理系统是主动的,用户处于被动接收的状态。

2.下列关于Storm的说法不正确的是()
A.Storm可以保证每一条数据都被处理到
B.Storm的处理逻辑和消息处理组件都可以使用任何语言来进行定义
C.Storm不支持本地模式运行Topology
D.Storm适用于流数据处理和分布式RPC
答案:C
答案解析:Storm有一种“本地模式”,可以在进程中模拟一个Storm集群的所有功能;
知识点:知识点1:Storm具有保证数据不丢失的特点,确保每一条数据都被处理到,这是Storm的关键特征;知识点2:Stom具有语言无关性,可以在Storm之上使用各种编程语言,默认支持Java、Ruby和Python。要增加对其他语言的支持,只需实现简单的Storm通信协议即可;知识点3:Storm有一种“本地模式”,可以在进程中模拟一个Storm集群的所有功能;知识点4:Storm作为免费开源、分布式、高容错的实时计算系统可以很好地适用于流数据处理和分布式RPC。

3.Storm计算模型以什么为单位?()
A.Bolt
B.Data Stream
C.Tuple
D.Topology
答案:B
答案解析:Storm计算模型以Topology为单位。
知识点:知识点1:Storm计算模型以Topology为单位,而Bolt负责Topology中所有的数据处理。知识点2:Tuple是Storm中最小的数据传输单元;知识点3:Data Stream是在分布式环境中并行创建处理的一组元组的无序序列。

4.Storm中Nimbus和Supervisor之间的通信依靠 来完成。
答案:Zookeeper
答案解析&知识点:Storm使用Zookeeper来作为分布式协调组件,来负责Nimbus和Supervisor之间所有协调工作。

5.在Storm中处理输入流的是 组件。
答案:Spout
答案解析&知识点:在Storm中处理输入流的是Spout组件,Spout是拓扑中数据流的来源。

6.为什么从时延来看,流计算要快于Hadoop?
答:流计算的网络直传,内存计算的时延必然比Hadoop通过HDFS传输的时延低得多;当计算模型比较适合流式时,流计算的流式处理省去了批处理的收集数据时间;因为流计算时服务型的作业,也省去了作业调度的时延。所以从时延来看,流计算要快于Hadoop。
知识点:流计算和Hadoop的区别。

Zookeeper

选择题
1.Zookeeper中的数据存储结构和标准文件系统非常类似,两者采用的层次结构是()
A 树形
B 星形
C 网形
D 分布式
答案 :A
难易程度:简单
答案解析:Zookeeper存储结构采用树形结构
知识点:Zookeeper的存储结构
2. 为了保证Leader选举能够通过半数以上台服务器选举支持,因此Zookeeper集群搭建的服务器为()
A 2n+2
B 2n
C 2n+1
D以上均错误
答案 :C
难易程度:中等
答案解析:Zookeeper如果保证半数以上服务器选举支持,需要搭建2n+1台服务器
知识点:Zookeeper的选举所需服务器
3. 当Zookeeper的节点数据发生变化时,被触发的事件是()
A NodeCreated
B NodeDataChanged
C NodeChildrenChanged
D NodeDeleted
答案 :B
难易程度:中等
答案解析:当Zookeeper的节点数据发生变化时,被触发的事件是NodeDataChanged
知识点:Zookeeper数据变更
填空题
1.Zookeeper的Leader节点在收到数据变更请求后的读写流程为________。
答案:先写入磁盘再写入内存
2.Zookeeper的核心功能有_____,,
答案:文件系统、通知机制、集群管理机制
简答题
Zookeeper中的角色都有哪些?

  1. leader
    处理所有的事务请求(写请求),可以处理读请求,集群中只能有一个leader。
  2. follower
    只能处理读请求,同时作为leader的候选节点,即如果leader宕机,follower节点要参与到新的leader选举中,有可能成为新的leader节点。
  3. observer
    只能处理读请求,不能参与选举。

1.下列哪项不是Zookeeper的特征( )
A.实用性
B.可靠性
C.实时性
D. 一致性
答案:A
难易程度:低
答案解析:ZooKeeper的特征

2.Zookeeper有几种类型的节点( )
A.1种
B.2种
C.3种
D.4种
答案: B
难易程度:低
答案解析:ZooKeeper的节点类型

3.下列哪项不是ZooKeeper的功能( )
A.组服务
B.分布式同步
C.配置维护
D.DNS解析
答案:D
难易程度:中
答案解析:ZooKeeper的功能

4.在实际过程中ZooKeeper的领导者选举有两种实现方式:_。

答案:LeaderElection; FastLeaderElection
难易程度:中
答案解析:在实际过程中ZooKeeper的领导者选举有两种实现方式LeaderElection和FastLeaderElection。
知识点:ZooKeeper的领导者选举方式

5.Zookeeper的特征有____、____、_____、等待无关、顺序性、监控
答案:最终一致性、可靠性、实时性
难易程度:低
答案解析:Zoopkeeper的特征有最终一致性、可靠性、实时性、等待无关、顺序性、监控 知识点:ZooKeeper的特征

6.zookeeper底层提供两个主要功能是什么?zookeeper集群角色有哪些?
答案:
功能:1.管理数据:存储和查询的功能 [利用HDFS实现存储,利用YARN实现查询
2.数据节点监听服务
集群角色:leader,follower


考试题目

  1. MapReduce是什么及怎么工作的?
  2. Spark生态圈及各部分功能?
  3. Storm功能及体系结构?
  4. HDFS中第二名称节点的作用?
  5. Zookeeper的工作原理?
  6. 请问CAP原理?
  7. Hadoop生态系统基本组成及各组件功能?
  8. HBase Shell命令创建表person
    • 创建表
    • 查看所有记录
    • 列出所有表、并获得表的描述
    • 删除stud2的city原理
    • 更新一条记录,stud2的age改为23
    • 查询表中有多少数据
  • 5
    点赞
  • 70
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
很好,让我们来看一些习题吧。 1. 什么是大数据? 答:大数据是指数据量巨大、数据类型多样、数据增长速度快,且难以通过传统数据管理工具进行处理和分析的数据集合。 2. 大数据的四个特点是什么? 答:大数据的四个特点是:数据量巨大、数据类型多样、数据增长速度快、数据处理复杂。 3. 大数据的应用领域有哪些? 答:大数据的应用领域常广泛,包括但不限于:金融、医疗、能源、交通、零售、媒体、教育、政府等。 4. 什么是数据挖掘? 答:数据挖掘是从大量数据中挖掘出有用的信息和知识的过程,包括数据预处理、模型构建、模型评估等步骤。 5. 什么是Hadoop? 答:Hadoop是一个开源的分布式计算框架,用于存储和处理大规模数据集。它包含了Hadoop Distributed File System(HDFS)和MapReduce两个核心模块。 6. 什么是NoSQL数据库? 答:NoSQL数据库是一类关系型的数据库,用于处理大规模分布式数据集。它们通常具有高可伸缩性、高性能、灵活的数据模型等特点,适合于海量数据的存储和处理。 7. 大数据技术的发展趋势是什么? 答:大数据技术的发展趋势包括:更加智能化、更加实时化、更加高效化、更加安全化等方面的发展。同时,大数据技术也将与云计算、人工智能等技术相结合,形成更加强大的解决方案。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值