2026年大数据分析与应用专业考试题库及答案解析_第1页
2026年大数据分析与应用专业考试题库及答案解析_第2页
2026年大数据分析与应用专业考试题库及答案解析_第3页
2026年大数据分析与应用专业考试题库及答案解析_第4页
2026年大数据分析与应用专业考试题库及答案解析_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

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

文档简介

2026年大数据分析与应用专业考试题库及答案解析一、单项选择题(每题1分,共20分。每题只有一个正确答案,请将正确选项字母填入括号内)1.在HDFS中,NameNode的主要职责是()A.存储实际数据块B.维护文件系统元数据C.执行Map任务D.执行Reduce任务答案:B解析:NameNode负责维护整个文件系统的元数据,包括文件目录结构、块与DataNode的映射关系等。2.下列关于SparkRDD的描述,错误的是()A.RDD是只读的分区记录集合B.RDD支持容错通过血缘关系(Lineage)C.RDD的转换操作会立即触发计算D.RDD的持久化默认存储在内存答案:C解析:转换操作(如map、filter)属于惰性计算,只有遇到行动操作(如collect、count)才会触发实际计算。3.在Kafka中,负责分区副本之间数据同步的角色是()A.ProducerB.ConsumerC.LeaderReplicaD.ZooKeeper答案:C解析:每个分区有一个LeaderReplica负责读写,FollowerReplica从Leader同步数据。4.使用Apriori算法时,若频繁k-项集数目为0,则()A.继续生成k+1-项集B.算法终止C.降低最小支持度阈值D.增大最小置信度阈值答案:B解析:Apriori算法的核心性质是“频繁项集的所有子集必须频繁”,若某层无频繁项集,则算法终止。5.在Pythonpandas中,对DataFramedf按列col降序排序的正确写法是()A.df.sort_values(by='col',ascending=False)B.df.sort('col',ascending=False)C.df.order(by='col',ascending=False)D.df.sort_index(axis=1,ascending=False)答案:A解析:sort_values为pandas1.0+推荐接口,sort方法已废弃。6.在HiveQL中,将表table_a的列col1类型由STRING改为INT的语句是()A.ALTERTABLEtable_aCHANGEcol1col1INT;B.ALTERTABLEtable_aMODIFYcol1INT;C.UPDATEtable_aSETcol1=CAST(col1ASINT);D.ALTERTABLEtable_aREPLACECOLUMNS(col1INT);答案:A解析:Hive使用CHANGE子句修改列类型,需重复列名。7.在Flink中,下列哪个窗口机制可以实现“每收到5条元素就计算一次”?()A.TumblingProcessingTimeWindowsB.SlidingCountWindowsC.SessionWindowsD.GlobalWindows答案:B解析:SlidingCountWindows可定义窗口大小=5,滑动步长=5,实现每5条触发一次。8.使用梯度下降法优化逻辑回归时,若学习率设置过大,可能导致()A.收敛速度变慢B.损失函数震荡或发散C.过拟合D.精确率下降答案:B解析:学习率过大使得参数更新步长过大,越过最优解,导致损失震荡甚至发散。9.在HBase中,RowKey设计应避免()A.散列化B.时间戳前缀C.反转域名D.随机前缀答案:B解析:时间戳前缀容易造成“热点”写入,所有新数据集中在同一Region。10.下列关于PCA的叙述,正确的是()A.主成分方向是协方差矩阵特征值最小的方向B.主成分之间相关系数不为零C.主成分方向是协方差矩阵特征向量对应最大特征值的方向D.必须对原始变量做标准化后才能使用答案:C解析:主成分是协方差矩阵特征向量,按特征值从大到小排序,方向正交。11.在Airflow中,定义任务依赖t2在t1成功后执行,正确的写法是()A.t1>>t2B.t1.set_upstream(t2)C.t2<<t1D.t1.follow(t2)答案:A解析:>>表示t1先执行,t2后执行,符合依赖语义。12.在SparkMLlib中,使用LR模型时,若特征维度为n,样本量为m,采用L-BFGS优化,则每次迭代内存消耗约为()A.O(m)B.O(n)C.O(m+n)D.O(m×n)答案:B解析:L-BFGS存储近似海森逆矩阵,维度与特征数n成正比。13.下列关于数据倾斜的说法,错误的是()A.可以通过加盐(Salt)技术缓解B.必然导致Reduce端OOMC.可通过两阶段聚合(局部+全局)缓解D.在Spark中可用repartition增加分区答案:B解析:数据倾斜不一定OOM,但会拖慢整体任务。14.在Elasticsearch中,实现“字段col精确匹配value”的查询DSL是()A.{"match":{"col":"value"}}B.{"term":{"col":"value"}}C.{"query_string":{"default_field":"col","query":"value"}}D.{"range":{"col":{"eq":"value"}}}答案:B解析:term查询用于精确匹配,不分析文本。15.在Python中,使用scikit-learn的GridSearchCV时,参数cv=5表示()A.5折交叉验证B.5次随机划分C.5个并行作业D.5个候选参数组合答案:A解析:cv=5表示5折交叉验证。16.在Kafka2.8+中,已可移除的组件是()A.ZooKeeperB.BrokerC.ProducerD.Consumer答案:A解析:KIP-500实现ZooKeeper-less架构。17.在Hive中,使用ORC文件格式相比TEXTFILE,优势不包括()A.支持列式存储B.支持压缩C.支持谓词下推D.支持事务回滚答案:D解析:ORC本身不提供事务回滚,需依赖Hive事务管理器。18.在FlinkCEP中,定义“a后跟b,中间不超过5分钟”的模式,应使用()A.Pattern.begin("a").next("b").within(Time.minutes(5))B.Pattern.begin("a").followedBy("b").within(Time.minutes(5))C.Pattern.begin("a").followedByAny("b").within(Time.minutes(5))D.Pattern.begin("a").notNext("b").within(Time.minutes(5))答案:B解析:followedBy允许中间有其他事件,within定义时间窗口。19.在Spark中,使用DataFrameAPI进行join时,默认join类型为()A.innerB.leftC.rightD.fullouter答案:A解析:未指定时为innerjoin。20.在数据仓库维度建模中,缓慢变化维类型2的做法是()A.直接覆盖旧值B.新增一行,标记版本与有效期C.新增一列保存旧值D.新建一张表存储历史答案:B解析:类型2通过新增行记录历史,保留版本号或时间戳。二、多项选择题(每题2分,共20分。每题有两个或以上正确答案,多选、少选、错选均不得分)21.下列属于NoSQL数据库的是()A.MongoDBB.HBaseC.Neo4jD.PostgreSQL答案:ABC解析:PostgreSQL为关系型数据库。22.在Spark中,可能导致Shuffle的操作有()A.groupByKeyB.reduceByKeyC.mapD.distinct答案:ABD解析:map为窄依赖,不触发Shuffle。23.关于A/B测试,正确的有()A.实验组与对照组应同时期采样B.需计算最小样本量C.可用t检验比较均值差异D.可无限期运行直到显著答案:ABC解析:D错误,长期运行可能引入时间偏差。24.在Python中,下列可用来处理缺失值的库有()A.pandasB.numpyC.missingnoD.statsmodels答案:ABCD解析:四者均提供缺失值检测或处理功能。25.下列属于FlinkExactly-Once语义实现机制的有()A.分布式快照(Checkpoint)B.两阶段提交(2PC)C.Kafka事务写入D.幂等Sink答案:ABCD解析:四种机制均可协同实现Exactly-Once。26.在机器学习特征工程中,可用于文本向量化的方法有()A.TF-IDFB.Word2VecC.One-HotD.HashingTrick答案:ABD解析:One-Hot用于类别变量,不直接用于文本序列。27.下列关于数据湖的说法,正确的有()A.存储原始格式数据B.支持结构化、半结构化、非结构化C.必须基于HDFS实现D.通常与元数据管理工具(如HiveMetastore)结合答案:ABD解析:数据湖可基于S3、OSS等对象存储。28.在Hive中,可用作分区字段的数据类型有()A.STRINGB.INTC.FLOATD.DATE答案:ABCD解析:Hive支持任意原始类型作为分区字段。29.下列属于SparkMLlib支持的分类算法有()A.RandomForestB.GradientBoostedTreesC.SVMD.K-Means答案:ABC解析:K-Means为聚类算法。30.在数据可视化中,适合展示时间序列趋势的有()A.折线图B.面积图C.箱线图D.日历热力图答案:ABD解析:箱线图用于展示分布,不直接体现趋势。三、填空题(每空2分,共20分)31.在Linux中,查看当前目录下各子目录磁盘使用情况的命令是________。答案:du-h--max-depth=1解析:du统计磁盘用量,-h人性化显示,--max-depth=1限制深度。32.在SQL中,窗口函数ROW_NUMBER()OVER(PARTITIONBYcol1ORDERBYcol2)的作用是________。答案:按col1分组,按col2排序,生成组内连续行号。解析:ROW_NUMBER为每条记录分配唯一序号。33.在Spark中,设置日志级别为WARN的语句为________。答案:spark.sparkContext.setLogLevel("WARN")解析:通过SparkContext对象设置。34.在Pythonpandas中,将列col转换为category类型以节省内存的代码为df['col']=________。答案:df['col'].astype('category')解析:category类型使用字典编码,降低内存。35.在Elasticsearch中,创建索引时指定分片数为3、副本数为1的JSON片段为{"settings":{"number_of_shards":________,"number_of_replicas":________}}。答案:3,1解析:分片与副本在settings中指定。36.在FlinkTableAPI中,将流表table_a注册为临时视图,名称为view_a的语句为________。答案:table_a.createTemporaryView("view_a")解析:Table对象提供createTemporaryView方法。37.在Hive中,查看表table_a所有分区信息的命令为SHOW________table_a;答案:PARTITIONS解析:SHOWPARTITIONS列出所有分区。38.在Kafka中,消费者组重新均衡(Rebalance)的触发条件之一是________。答案:消费者加入或离开组解析:组成员变化会触发Rebalance。39.在逻辑回归中,若正类标签为1,负类为0,则sigmoid函数输出0.8对应的odds为________。答案:4解析:odds=p/(1-p)=0.8/0.2=4。40.在Git中,将暂存区文件回退到工作区且不丢失改动的命令是git________--staged<file>。答案:reset解析:gitreset--staged将文件从暂存区移出。四、简答题(每题8分,共40分)41.(封闭型)简述MapReduce中Combiner的作用及使用条件。答案:Combiner是本地端的Reducer,用于减少Map端输出数据量,降低网络IO。使用条件:1.业务逻辑满足结合律与交换律;2.不影响最终Reduce结果,如求和、最大值可用,平均值不可用。42.(开放型)某电商公司日活1000万,需在首页实现“猜你喜欢”实时推荐,延迟<200ms,请给出技术方案并说明理由。答案:采用在线特征服务+预训练模型+Redis缓存方案:1.离线训练:使用SparkMLlib训练矩阵分解或深度FM模型,存储用户与物品隐向量;2.特征存储:用户隐向量存入RedisCluster,物品隐向量存入另一组Redis,采用分片+压缩;3.在线服务:推荐API接收用户ID,从Redis读取隐向量,通过Faiss或本地向量计算Top-N,延迟<50ms;4.实时修正:通过Flink消费点击流,实时更新用户隐向量并写入Redis,采用增量SGD;5.兜底策略:冷启动采用热门推荐+标签召回。理由:Redis提供毫秒级读取,Faiss加速向量检索,Flink实现增量更新,整体满足延迟与规模要求。43.(封闭型)写出使用Pythonpandas计算DataFramedf各列缺失值占比的一行代码,并说明结果类型。答案:df.isnull().sum()/len(df),结果类型为Series,索引为列名,值为缺失比例。44.(开放型)描述一次你解决数据倾斜导致Spark任务失败的完整过程。答案:场景:ETL任务按用户ID分组求订单金额总和,某大V用户订单量达千万,导致单个ReduceOOM。步骤:1.定位:通过SparkHistoryServer发现某Reduce耗时4h,GC占90%;2.采样:用sample(0.1)发现top1用户占比30%;3.加盐:在原始用户ID后拼接随机后缀0-9,将大V拆分为10个虚拟ID;4.局部聚合:先按虚拟ID聚合,再按真实用户ID二次聚合,消除热点;5.参数调优:将spark.sql.shuffle.partitions从200提到1000,增加并行度;6.验证:任务总耗时从4h降至12分钟,无OOM。45.(封闭型)说明FlinkCheckpoint与Savepoint的区别,并给出各一种触发命令。答案:Checkpoint由Flink自动触发,用于故障恢复,生命周期由系统管理;Savepoint由用户手动触发,用于版本升级、迁移,生命周期由用户管理。触发命令:Checkpoint:env.enableCheckpointing(60000)在代码中设置;Savepoint:bin/flinksavepoint<jobID>[targetDirectory]。五、应用题(共50分)46.计算题(10分)某数据集含100万条样本,特征维度20万,采用稀疏逻辑回归,使用L-BFGS优化。已知:每样本平均非零特征100;双精度浮点8字节;存储梯度向量需内存多少GB?答案:梯度向量维度=20万,双精度,8字节/参数,总内存=200000×8=1.6×10^6字节≈1.53MB。解析:梯度为稠密向量,与样本量无关,仅需存储参数维度。47.分析题(15分)给定用户行为表user_action(user_id,item_id,action,ts),action含click、buy、cart。请用HiveSQL编写:(1)计算最近30天每个用户的购物转化率(buy/click);(2)过滤点击数<10的用户;(3)结果输出user_id,clicks,buys,conversion_rate,保留4位小数。答案:```sqlWITHtmpAS(SELECTuser_id,SUM(CASEWHENaction='click'THEN1ELSE0END)ASclicks,SUM(CASEWHENaction='buy'THEN1ELSE0END)ASbuysFROMuser_actionWHEREts>=unix_timestamp(date_sub(current_date,30),'yyyy-MM-dd')GROUPBYuser_id)SELECTuser_id,clicks,buys,ROUND(buys/clicks,4)ASconversion_rateFROMtmpWHEREclicks>=10;```解析:先聚合计算点击与购买,再过滤,最后计算转化率。48.综合题(25分)某视频平台欲构建实时Top-N热门榜单(N=50),指标为过去1小时视频播放量,更新频率1分钟。要求:1.延迟<30s;2.可扩展至百万级视频;3.支持Exactly-Once。请给出完整技术架构、关键表结构、核心Flink代码片段(Java/Scala/Python均可),并说明如何验证正确性。答案:架构:数据源:用户播放日志通过Kafkatopicplay_log,分区100,副本2;计算层:Flink集群(JobManagerHA,TaskManager20节点,并行度200);存储层:RedisSortedSet存储Top50,Key=“hot_top50”,Score=播放量;MySQL存储全量视频播放量,用于故障恢复;监控:Prometheus+Grafana监控延迟与Checkpoint。表结构(MySQL):```sqlCREATETABLEvideo_play_stat(video_idBIGINTPRIMARYKEY,play_cntBIGINTNOTNULL,update_timeTIMESTAMPNOTNULL);```Flink核心代码(Scala):```scalavalenv=StreamExec

温馨提示

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

最新文档

评论

0/150

提交评论