2026年大数据学试题及答案_第1页
2026年大数据学试题及答案_第2页
2026年大数据学试题及答案_第3页
2026年大数据学试题及答案_第4页
2026年大数据学试题及答案_第5页
已阅读5页,还剩22页未读, 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2026年大数据学试题及答案一、单项选择题(本大题共20小题,每小题2分,共40分。在每小题给出的四个选项中,只有一项是符合题目要求的)1.在大数据的“4V”特征中,指的是数据产生和处理速度极快,强调数据流和实时处理需求的是()。A.Volume(大量)B.Variety(多样)C.Velocity(高速)D.Value(价值)2.Hadoop分布式文件系统(HDFS)默认的块大小(BlockSize)在较新版本中通常设置为()。A.32MBB.64MBC.128MBD.256MB3.在MapReduce计算模型中,主要负责将输入数据切分成若干个split,并将其传递给Mapper的阶段是()。A.Map阶段B.Reduce阶段C.Shuffle阶段D.InputFormat阶段4.下列关于HBase的描述中,错误的是()。A.HBase是一个分布式的、面向列的NoSQL数据库B.HBase适合存储结构化数据,支持复杂的SQL查询C.HBase的数据模型是稀疏的、多维的、排序的映射表D.HBase依赖于HDFS作为其底层文件存储系统5.Spark的核心数据抽象是RDD,RDD具有的特性不包括()。A.弹性B.分布式C.可变D.只读6.在HadoopYARN架构中,负责管理集群中的资源(内存、CPU等),并向ApplicationMaster分配资源的组件是()。A.ResourceManagerB.NodeManagerC.ApplicationMasterD.Container7.FlumeNG架构中,负责从数据源收集数据并传递给Channel的核心组件是()。A.SinkB.ChannelC.SourceD.Interceptor8.下列关于Kafka的消息存储机制,正确的是()。A.Kafka使用内存存储消息以保证极低延迟B.Kafka将消息按照Topic进行分类,每个Topic分为多个PartitionC.Kafka的消息一旦被消费,就会立即从磁盘上删除D.Kafka不支持消息的回溯消费9.在Hive中,用于将结构化数据文件映射为一张数据库表,并提供类SQL查询功能的组件是()。A.HQLB.MetastoreC.DriverD.Compiler10.SparkSQL与HiveonSpark的主要区别在于()。A.SparkSQL不支持Hive元数据B.SparkSQL不需要Hive支持即可运行C.SparkSQL只能处理结构化数据,HiveonSpark可以处理半结构化数据D.SparkSQL的执行引擎必须基于MapReduce11.下列哪种算法常用于在大数据环境下的推荐系统中,通过分析用户历史行为来预测用户兴趣?()A.K-Means聚类B.协同过滤C.决策树D.逻辑回归12.在HDFS的读写机制中,为了保证数据可靠性,默认情况下每个数据块会保存()份副本。A.1B.2C.3D.513.Redis数据库主要支持的数据结构不包括()。A.String(字符串)B.List(列表)C.Table(表)D.Set(集合)14.Zookeeper在Hadoop生态系统中主要扮演的角色是()。A.数据存储B.资源调度C.分布式协调服务D.数据计算15.在数据预处理阶段,用于将不同量纲的数据缩放到同一范围(如[0,1])的标准化方法是()。A.Min-Max标准化B.Z-Score标准化C.对数变换D.独热编码16.SparkStreaming处理实时流数据时,核心的抽象是()。A.RDDB.DataFrameC.DStreamD.Dataset17.关于列式存储格式Parquet和ORC,下列说法正确的是()。A.它们都不支持谓词下推B.Parquet不支持嵌套数据结构C.ORC是Hive优化的列式存储格式,支持高效的压缩和索引D.它们主要用于文本日志的存储18.在机器学习PAI(PlatformforAI)或MLlib中,用于评估分类模型性能的指标不包括()。A.准确率B.召回率C.均方误差D.F1分数19.数据仓库的四个基本特征中,指的是数据一旦进入,通常不再进行更新或删除的是()。A.面向主题B.集成性C.非易失性D.随时间变化20.在分布式系统中,CAP理论指出,在一致性、可用性和分区容错性中,系统通常只能同时满足()。A.C和AB.A和PC.C和PD.C、A和P二、多项选择题(本大题共10小题,每小题3分,共30分。在每小题给出的四个选项中,有两项或两项以上是符合题目要求的。多选、少选、错选均不得分)21.下列属于Hadoop生态系统核心组件的有()。A.HDFSB.MapReduceC.YARND.LinuxKernel22.SparkRDD的创建方式包括()。A.从外部存储系统创建(如HDFS)B.通过并行化集合创建C.从其他RDD转换得到D.直接通过new关键字实例化23.HBase中RowKey的设计原则包括()。A.长度尽可能短B.散列性要好,避免热点C.根据查询频率进行排序D.必须是数字类型24.Flume的Channel类型主要有()。A.MemoryChannelB.FileChannelC.KafkaChannelD.JDBCChannel25.下列属于NoSQL数据库的类型有()。A.键值存储B.列族存储C.文档型存储D.图数据库26.MapReduce的Shuffle阶段主要包括()。A.PartitionB.SortC.SpillD.Merge27.Spark的算子中,属于Transformation(转换)算子的有()。A.mapB.reduceC.filterD.count28.数据清洗的主要任务包括()。A.缺失值处理B.异常值检测与处理C.数据去重D.数据规范化29.关于Kafka的消费者组,描述正确的有()。A.同一个消费者组内的消费者共同消费Topic中的分区B.不同消费者组可以独立消费同一条消息C.消费者组内的消费者数量不能超过Topic的分区数D.消费者组用于实现消息的广播机制30.在大数据安全与隐私保护中,常用的技术手段包括()。A.数据加密B.数据脱敏C.访问控制D.差分隐私三、填空题(本大题共15小题,每小题2分,共30分)31.HDFS采用________架构,包含NameNode、DataNode和SecondaryNameNode等角色。32.MapReduce的输入数据通常被切分为固定大小的块,每个块作为一个________输入给Map任务。33.Spark的运行模式包括Local模式、Standalone模式、________模式和YARN模式等。34.Hive的元数据通常存储在关系型数据库中,如MySQL、________等。35.HBase中,数据是按照________有序存储的,这是其快速查询的基础。36.Kafka通过________机制来实现消息的持久化和高吞吐量。37.在Python的Pandas库中,用于读取CSV文件的函数是________。38.数据挖掘中,________算法是一种无监督学习算法,用于将数据集划分为K个不同的簇。39.HDFS的副本放置策略中,第一个副本通常放在________所在的节点。40.SparkRDD提供了两种算子类型:Transformation和________。41.Sqoop主要用于在________和关系型数据库之间传输数据。42.Redis支持数据持久化到磁盘,两种主要方式是RDB和________。43.在数据仓库建模中,________模型由事实表和维度表组成,星型模型是其中一种。44.Scala语言是Spark的主要开发语言,它是一种面向对象和________的混合语言。45.ELT流程通常指Extract(抽取)、Load(加载)和________。四、判断题(本大题共10小题,每小题1分,共10分。正确的选“A”,错误的选“B”)46.HDFS适合存储大量的小文件,因为其设计初衷就是为了处理海量小文件。()47.Spark是基于内存的分布式计算框架,因此在迭代计算场景下通常比MapReduce快。()48.Hive是完全基于MapReduce的,无法将HiveSQL翻译为Spark任务执行。()49.Zookeeper通过Zab协议保证集群中各节点数据的一致性。()50.MongoDB是典型的关系型数据库,支持复杂的表关联查询。()51.在HBase中,修改或删除数据实际上是通过插入新的版本或标记删除来实现的。()52.Kafka保证消息在Topic内的顺序性,但不保证跨Topic的全局顺序。()53.数据归一化只能使用Min-Max方法,其他方法都不行。()54.在机器学习中,训练集、验证集和测试集的作用是完全相同的,可以混用。()55.Flink是真正的流处理框架,支持低延迟、高吞吐的流式数据处理。()五、简答题(本大题共5小题,每小题6分,共30分)56.简述HDFS的读写流程(以读取数据为例)。57.列举并解释SparkRDD的五大特性。58.请说明数据仓库中的维度建模与实体关系建模的主要区别。59.简述Kafka的高吞吐量设计原理。60.在大数据处理中,什么是数据倾斜?请列举两种常见的解决数据倾斜的方法。六、综合应用题(本大题共3小题,共30分)61.(本题10分)某电商网站需要分析用户行为日志,日志格式为:`时间戳,用户ID,商品ID,行为类型`。请使用MapReduce伪代码描述如何统计“每个商品被浏览的次数”。要求:(1)写出Map函数的输入键值对和输出键值对。(2)写出Reduce函数的输入键值对和输出键值对。(3)简述Shuffle阶段的作用。62.(本题10分)假设有一份学生成绩数据(CSV格式),包含字段:`学号,姓名,科目,分数`。请使用Spark(Scala或Python)代码片段,完成以下任务:(1)读取数据并创建DataFrame。(2)计算每个学生的平均分。(3)找出平均分大于85分的学生,并按平均分降序排列。(4)将结果保存为JSON格式。63.(本题10分)设计一个实时日志分析系统架构。场景:某APP需要实时统计每分钟的活跃用户数(DAU的实时分钟级波动),并能够将结果实时推送到大屏展示。要求:(1)画出系统架构简图(可用文字描述组件及数据流向)。(2)说明每个组件(如日志采集、消息队列、流计算、存储)选型的理由。(3)简述如何处理“精确一次”语义,确保统计不重不漏。参考答案及解析一、单项选择题1.【答案】C【解析】Velocity代表高速,指数据生成和流动速度快,需要实时处理。2.【答案】C【解析】HDFS2.x及以后版本默认块大小通常为128MB,以减少NameNode内存压力并提高传输效率。3.【答案】D【解析】InputFormat负责逻辑切分输入文件,生成InputSplit,并创建RecordReader读取数据传给Mapper。4.【答案】B【解析】HBase是NoSQL数据库,不支持复杂的多表关联SQL查询,适合海量简单读写。5.【答案】C【解析】RDD是ResilientDistributedDataset(弹性分布式数据集),具有不可变性,只能通过转换生成新的RDD。6.【答案】A【解析】ResourceManager是YARN的全局资源管理器。7.【答案】C【解析】Source负责从数据源接收数据;Channel负责缓冲;Sink负责发送数据。8.【答案】B【解析】Kafka将消息按Topic分类,Topic下有Partition,支持磁盘持久化和回溯。9.【答案】B【解析】Metastore存储Hive的元数据(表结构、列定义等),Driver负责编译和执行。10.【答案】B【解析】SparkSQL是Spark自带的SQL模块,可以独立运行,也可以使用Hive的Metastore支持Hive表。11.【答案】B【解析】协同过滤是推荐系统中最经典的算法,包括基于用户和基于物品的协同过滤。12.【答案】C【解析】HDFS默认副本系数为3。13.【答案】C【解析】Redis不支持Table这种关系型结构,主要支持String,List,Set,Hash,ZSet等。14.【答案】C【解析】Zookeeper提供分布式协调服务,如配置管理、Leader选举等。15.【答案】A【解析】Min-Max标准化将数据线性映射到[0,1]区间;Z-Score标准化为标准正态分布。16.【答案】C【解析】SparkStreaming核心抽象是DStream(DiscretizedStream),本质是RDD的序列。17.【答案】C【解析】ORC是Hive优化的列式存储,支持索引、压缩;Parquet支持嵌套数据。18.【答案】C【解析】均方误差(MSE)通常用于回归模型评估,A、B、D用于分类模型。19.【答案】C【解析】非易失性指数据进入数仓后主要用于分析,不进行更新操作。20.【答案】B【解析】在分布式系统中,分区容错性(P)必须保证,因此通常在CP和AP之间权衡。二、多项选择题21.【答案】ABC【解析】LinuxKernel是操作系统内核,不属于Hadoop生态组件。22.【答案】ABC【解析】RDD不能直接new,通过sc.parallelize或textFile创建,或通过transformation转换。23.【答案】AB【解析】RowKey设计要短(节省存储)且散列(避免Region热点),类型不限于数字。24.【答案】ABC【解析】FlumeChannel主要有MemoryChannel,FileChannel,KafkaChannel等。25.【答案】ABCD【解析】NoSQL包含键值、列族、文档、图数据库四种主要类型。26.【答案】ABCD【解析】Shuffle包括Map端的Partition,Sort,Spill,Merge以及Reduce端的Copy,Merge,Sort。27.【答案】AC【解析】map和filter是Transformation,返回新RDD;reduce和count是Action,触发作业提交。28.【答案】ABCD【解析】数据清洗涵盖缺失值、异常值、去重、规范化等处理。29.【答案】ABC【解析】消费者组内是负载均衡(非广播),组间是广播。消费者数<=分区数,否则有空闲。30.【答案】ABCD【解析】加密、脱敏、访问控制、差分隐私均为常见安全手段。三、填空题31.【答案】Master/Slave32.【答案】InputSplit33.【答案】Mesos34.【答案】PostgreSQL35.【答案】RowKey36.【答案】顺序写37.【答案】read_csv38.【答案】K-Means39.【答案】客户端40.【答案】Action41.【答案】Hadoop(HDFS/Hive)42.【答案】AOF43.【答案】多维44.【答案】函数式45.【答案】Transform(转换)四、判断题46.【答案】B【解析】HDFS不适合存储大量小文件,因为会产生大量元数据,撑爆NameNode内存。47.【答案】A【解析】Spark基于内存,减少磁盘IO,迭代计算优势明显。48.【答案】B【解析】HiveonSpark可以将HiveSQL翻译为Spark任务执行。49.【答案】A【解析】Zab协议(原子广播)是Zookeeper保证一致性的核心协议。50.【答案】B【解析】MongoDB是文档型NoSQL数据库,不是关系型数据库。51.【答案】A【解析】HBase的LSM-Tree结构决定了更新和删除是追加写新版本或墓碑标记。52.【答案】A【解析】Kafka只保证分区内有序。53.【答案】B【解析】数据归一化方法很多,如Z-Score,Log变换等。54.【答案】B【解析】训练集用于训练模型,验证集用于调参,测试集用于最终评估,不能混用。55.【答案】A【解析】Flink是原生流处理引擎,支持EventTime和低延迟。五、简答题56.【答案】HDFS读取数据流程如下:(1)客户端调用DistributedFileSystem.open()方法,向NameNode发起请求。(2)NameNode返回文件的部分块位置信息(按距离客户端由近到远排序)。(3)客户端创建FSDataInputStream,开始读取数据。(4)客户端连接最近的DataNode读取数据。(5)读取完一个块后,客户端关闭连接,寻找下一个块的最优DataNode继续读取。(6)读取完毕后,关闭流。57.【答案】SparkRDD的五大特性:(1)分区列表:RDD被逻辑上切分为多个分区,分布式处理。(2)计算函数:每个分区都有一个计算函数,用于处理数据。(3)依赖关系:RDD之间存在依赖关系,构成血统,用于容错。(4)分区器:可选,对于Key-Value类型的RDD,可以指定分区策略(如Hash或Range)。(5)最佳位置:可选,数据本地性偏好,Spark尽量将任务调度到数据存储的节点。58.【答案】维度建模与实体关系(ER)建模的区别:(1)目标不同:ER建模面向事务处理系统(OLTP),旨在减少数据冗余;维度建模面向分析系统(OLAP),旨在提高查询性能。(2)结构不同:ER建模结构复杂,表多且关系复杂;维度建模结构简单,通常由事实表和维度表构成星型或雪花模型。(3)规范化程度:ER建模高度规范化(3NF);维度建模通常是反规范化的(允许冗余以换取查询速度)。(4)易用性:维度建模更符合业务人员的分析直觉。59.【答案】Kafka高吞吐量的设计原理:(1)顺序写磁盘:Kafka利用磁盘的顺序写性能,远高于随机写。(2)零拷贝技术:使用sendfile系统调用,数据直接从磁盘文件复制到网卡接口,减少内核态与用户态的上下文切换和内存拷贝。(3)页缓存:充分利用操作系统的PageCache,不将数据全部加载到应用内存中。(4)批处理:支持批量发送和批量消费消息,减少网络请求开销。(5)分区并发:通过分区机制实现并行读写。60.【答案】数据倾斜:在分布式计算中,由于数据分布不均匀,导致大部分节点很快完成计算,而个别节点处理的数据量极大,成为瓶颈,拖慢整个任务进度。解决方法:(1)提高并行度:调整Reduce任务个数或SparkShuffle分区数,可能打散数据。(2)广播Join:如果大表倾斜是因为Key为空或特定值,且小表可以放入内存,使用MapJoin避免Shuffle。(3)数据预处理:对倾斜的Key添加随机前缀,将其分散到不同的Reducer处理,最后再聚合结果。(4)自定义分区器:根据数据特点自定义分区策略,均匀分布数据。六、综合应用题61.【答案】(1)Map函数:输入:(Key:行偏移量,Value:日志内容`时间戳,用户ID,商品ID,行为类型`)逻辑:解析日志,判断行为类型是否为“浏览”。输出:(Key:商品ID,Value:1)(2)Reduce函数:输入:(Key:商品ID,Value:[1,1,1,...])(迭代器)逻辑:对Value列表求和。输出:(Key:商品ID,Value:总浏览次数)(3)Shuffle阶段作用:Shuffle阶段负责连接Map和Reduce。它包括Map端的输出数据根据Key进行分区、排序、溢写到磁盘并合并;Reduce端通过网络拉取属于自己分区的数据,并进行归并排序,将相同Key的Value聚合成列表传递给Reduce函数。62.【答案】```python#假设使用PySparkfrompyspark.sqlimportSparkSessionfrompyspark.sql.functionsimportavg,col#(1)创建SparkSession并读取数据spark=SparkSession.builder.appName("StudentScore").getOrCreate()d

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论