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

下载本文档

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

文档简介

2026年大数据知识试题及答案一、单项选择题(每题2分,共20分)1.以下哪项不属于非结构化数据?A.社交媒体评论B.传感器实时数据流C.关系型数据库表记录D.监控视频文件答案:C(解析:关系型数据库表记录是结构化数据,具有预定义的模式和行列结构;其他选项为非结构化或半结构化数据。)2.关于Hadoop生态中HBase的描述,正确的是?A.基于行存储的分布式数据库B.适合实时随机读写场景C.仅支持SQL查询D.数据模型为键值对,无列族概念答案:B(解析:HBase是基于列族存储的分布式NoSQL数据库,支持实时随机读写;数据模型包含行键、列族、时间戳;查询方式包括API和PhoenixSQL。)3.以下哪项是SparkRDD的特性?A.不可变、可分区、支持内存计算B.支持事务ACID特性C.默认存储在磁盘中D.仅支持窄依赖操作答案:A(解析:RDD是弹性分布式数据集,不可变且可分区,支持内存计算以提升性能;SparkSQL的DataFrame/Dataset支持部分ACID;RDD默认根据持久化策略存储;RDD支持窄依赖(如map)和宽依赖(如shuffle)操作。)4.数据湖(DataLake)与数据仓库(DataWarehouse)的核心区别是?A.数据湖存储结构化数据,数据仓库存储非结构化数据B.数据湖在存储时定义模式(Schema-on-Write),数据仓库在使用时定义模式(Schema-on-Read)C.数据湖支持原始数据存储,数据仓库存储经过清洗整合的结构化数据D.数据湖仅用于离线分析,数据仓库支持实时分析答案:C(解析:数据湖存储原始的、多格式的数据(Schema-on-Read),数据仓库存储经过ETL处理的结构化数据(Schema-on-Write);两者均支持多种分析场景。)5.以下哪种技术常用于解决大数据实时计算需求?A.HiveB.FlinkC.HBaseD.HDFS答案:B(解析:Flink是流批一体的实时计算框架;Hive用于离线批处理,HBase是存储系统,HDFS是分布式文件系统。)6.列式存储(如Parquet)相比行式存储(如CSV)的主要优势是?A.更适合实时写入B.减少查询时的I/O消耗C.支持事务处理D.存储成本更低答案:B(解析:列式存储将同一列数据连续存储,查询时仅需读取相关列,减少I/O;行式存储适合事务性写入;两者存储成本无绝对优劣。)7.数据倾斜(DataSkew)通常发生在以下哪个阶段?A.数据采集B.ShuffleC.数据清洗D.数据可视化答案:B(解析:数据倾斜指Shuffle阶段部分分区数据量远大于其他分区,导致任务执行时间过长甚至失败。)8.以下哪项不属于机器学习中的监督学习任务?A.预测用户是否会购买商品(二分类)B.识别图像中的物体类别(多分类)C.客户分群(聚类)D.预测房价(回归)答案:C(解析:聚类属于无监督学习,无需标签;其他选项需要标签进行训练。)9.在Kafka中,消费者组(ConsumerGroup)的主要作用是?A.提高生产者的消息发送速率B.实现消息的持久化存储C.支持消息的广播和负载均衡D.限制消费者的连接数量答案:C(解析:同一消费者组内的消费者通过分区分配实现负载均衡,不同消费者组可订阅同一主题实现广播。)10.以下哪项是数据脱敏的常用技术?A.数据去重B.哈希散列(如MD5)C.数据抽样D.主成分分析(PCA)答案:B(解析:数据脱敏通过哈希、替换、模糊化等技术保护敏感信息;去重是数据清洗,抽样是减少数据量,PCA是降维。)二、简答题(每题8分,共40分)1.简述HadoopMapReduce的执行流程。答案:MapReduce分为Map和Reduce两个阶段:(1)输入分片(InputSplit):将输入数据划分为多个分片,每个分片由一个Mapper处理;(2)Map阶段:每个Mapper对分片数据进行处理,输出键值对(Key-Value);(3)Shuffle阶段:Mapper输出的键值对按Key哈希分区,通过网络传输到对应的Reducer;(4)Reduce阶段:Reducer对相同Key的Value进行聚合处理,输出最终结果;(5)输出阶段:结果写入HDFS或其他存储系统。2.列举三种常见的大数据存储架构,并说明其适用场景。答案:(1)分布式文件系统(如HDFS):适用于存储海量非结构化/半结构化数据(如日志、文本),支持高吞吐量批处理;(2)NoSQL数据库(如HBase、Cassandra):适用于高并发、低延迟的随机读写场景(如实时查询、用户行为记录);(3)数据仓库(如Hive、ClickHouse):适用于结构化数据的复杂查询和分析(如OLAP、报表生成);(4)数据湖(如基于对象存储的AWSS3、阿里云OSS):适用于存储原始多格式数据,支持Schema-on-Read和高级分析(如机器学习、数据科学)。3.说明SparkRDD的持久化(Persistence)机制及常用存储级别。答案:RDD持久化通过缓存(Cache)或持久化(Persist)将数据存储在内存或磁盘中,避免重复计算。常用存储级别包括:MEMORY_ONLY:仅内存存储(默认);MEMORY_ONLY_SER:内存存储(序列化,节省空间);MEMORY_AND_DISK:内存不足时溢写磁盘;DISK_ONLY:仅磁盘存储;选择存储级别需权衡内存占用、计算时间和容错需求(如内存不足时优先选择MEMORY_AND_DISK)。4.数据清洗的主要任务有哪些?请举例说明。答案:数据清洗旨在提高数据质量,主要任务包括:(1)处理缺失值:如用均值填充数值型字段的缺失值,或删除缺失率过高的记录;(2)纠正错误值:如将“2026-13-01”(无效日期)修正为“2027-01-01”;(3)去除重复值:如通过唯一标识(用户ID+时间戳)删除重复的用户行为记录;(4)标准化格式:如将“138-1234-5678”统一为“+8613812345678”;(5)处理异常值:如通过IQR(四分位距)检测并修正或删除超出1.5倍IQR的数值(如用户年龄“200岁”)。5.对比Flink与SparkStreaming的实时计算特性。答案:(1)模型差异:Flink基于事件时间(EventTime)和水印(Watermark)处理乱序数据,支持精确一次(Exactly-Once)语义;SparkStreaming基于微批处理(Micro-Batch),将流数据拆分为小批次处理,延迟较高(通常秒级);(2)状态管理:Flink提供原生状态后端(如RocksDB),支持大状态和高效状态存储;SparkStreaming通过RDD持久化管理状态,状态规模受限;(3)窗口类型:Flink支持滚动窗口、滑动窗口、会话窗口等灵活窗口类型;SparkStreaming主要支持时间窗口(如1分钟窗口);(4)延迟与吞吐量:Flink支持毫秒级延迟,适合低延迟场景;SparkStreaming吞吐量高,适合对延迟不敏感的批流一体场景。三、应用题(每题20分,共40分)1.某电商平台需统计2026年1月用户订单数据,要求输出每个用户的总消费金额(订单表字段:user_id,order_id,amount,create_time)。(1)用HiveSQL编写统计语句;(2)说明Hive执行该语句时的底层处理流程。答案:(1)HiveSQL语句:```sqlSELECTuser_id,SUM(amount)AStotal_amountFROMorder_tableWHEREcreate_timeBETWEEN'2026-01-01'AND'2026-01-31'GROUPBYuser_id;```(2)处理流程:①词法/语法解析:Hive将SQL转换为抽象语法树(AST),检查语法正确性;②逻辑计划生成:将AST转换为逻辑执行计划(如Filter、GroupBy、Sum操作);③物理计划优化:通过谓词下推(将时间过滤提前)、列裁剪(仅读取user_id和amount)等优化逻辑计划;④任务执行:生成MapReduce任务(或Spark任务,取决于Hive配置),Map阶段读取符合时间条件的数据,输出(user_id,amount);Shuffle阶段按user_id分区;Reduce阶段对相同user_id的amount求和,输出结果;⑤结果存储:最终结果写入Hive表或临时文件。2.用SparkRDD实现以下功能:读取文本文件(每行是一个英文句子),统计每个单词出现的次数(区分大小写),并按词频降序输出前10个单词。答案:```scalaimportorg.apache.spark.{SparkConf,SparkContext}objectWordCount{defmain(args:Array[String]):Unit={valconf=newSparkConf().setAppName("WordCount")valsc=newSparkContext(conf)//读取文本文件vallines=sc.textFile("hdfs://path/to/input.txt")//拆分单词(按空格分割)valwords=lines.flatMap(line=>line.split("\\s+"))//转换为(单词,1)的键值对valwordCounts=words.map(word=>(word,1))//按单词聚合计数valtotalCounts=wordCounts.reduceByKey(_+_)//按词频降序排序,取前10valtopWords=totalCounts.sortBy(-_._2).take(10)//输出结果topWords.foreach{case(word,count)=>println(s"wo}sc.stop()}}```关键步骤解析:`flatMap`:将每行句子拆分为单词数组,展开为单个单词;`map`:将每个单词映射为(单词,1)的元组;`reduceByKey`:按单词分组,对计数求和;`sortBy(-_._2)`:按词频(元组第二个元素)降序排序;`take(10)`:取前10个高频单词。3.某物联网平台需处理传感器实时数据流(每秒10万条,字段:sensor_id,value,timestamp),要求检测异常值(value超过该传感器历史均值±3倍标准差),并输出异常记录。设计技术方案(包括工具选择、处理流程、关键步骤)。答案:技术方案:(1)工具选择:数据采集:Kafka作为消息队列,缓冲高并发数据流;实时计算:Flink处理实时流数据,支持低延迟和状态管理;存储:HBase存储传感器历史数据(用于计算均值和标准差),或Redis缓存近期统计值(提升查询速度);(2)处理流程:①数据摄入:传感器数据通过Kafka生产者写入主题(如`sensor_topic`);②实时处理:Flink消费者订阅Kafka主题,按sensor_id分组;③状态管理:为每个sensor_id维护状态(包含历史数据的计数、总和、平方和,用于计算均值和标准差);④异常检测:实时计算当前value是否超出均值±3σ(σ=√(平方和/n(总和/n)²));⑤输出:异常记录写入报警系统(如消息队列、数据库)或日志;(3

温馨提示

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

评论

0/150

提交评论