版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2025年大数据工程师职业资格考试题及答案一、单项选择题(每题1分,共20分。每题只有一个正确答案,请将正确选项的字母填入括号内)1.在Hadoop生态中,负责资源调度与任务监控的组件是()A.HDFS B.YARN C.MapReduce D.Hive答案:B2.SparkCore默认的存储级别是()A.MEMORY_ONLY B.MEMORY_AND_DISK C.DISK_ONLY D.OFF_HEAP答案:A3.下列关于KafkaPartition的描述,错误的是()A.每个Partition内部消息有序 B.Partition数量一旦创建不可修改C.同一ConsumerGroup内每个Partition只能被一个消费者实例消费D.Partition是Kafka并行度的基本单位答案:B4.在Flink中,用于描述“事件时间”与“处理时间”差异的指标是()A.Latency B.Throughput C.Watermark D.Backpressure答案:C5.若Hive表test的分区字段为dt(string),下列语句可正确添加分区的是()A.ALTERTABLEtestADDPARTITION(dt=20250601);B.ALTERTABLEtestPARTITION(dt='20250601')ADD;C.MSCKREPAIRTABLEtest;D.INSERTINTOTABLEtestPARTITION(dt='20250601')SELECT…答案:A6.HDFS默认Block大小为128MB,若文件大小为1GB,则占用Block数量为()A.7 B.8 C.9 D.10答案:B7.在SparkSQL中,将DataFrame注册为临时视图的API是()A.cache() B.createOrReplaceTempView() C.persist() D.registerTable()答案:B8.下列算法中,属于聚类算法的是()A.Apriori B.DBSCAN C.PageRank D.FPGrowth答案:B9.在HBase中,用于实现行级事务的原子性的机制是()A.WAL B.MemStore C.LSMTree D.RowLock答案:D10.若Redis键“uv:20250601”采用HyperLogLog结构,其标准误差约为()A.0.01% B.0.1% C.0.81% D.1.5%答案:C11.在数据仓库建模中,星型模型与雪花模型的主要区别是()A.是否使用事实表 B.维度表是否规范化C.是否支持渐变维度 D.是否使用代理键答案:B12.下列关于数据倾斜优化的描述,正确的是()A.增加Shuffle分区数一定能缓解倾斜 B.两阶段聚合(局部聚合+全局聚合)可用于ReduceByKey场景C.使用mapPartitions替代map可避免倾斜 D.广播变量只能用于Join场景答案:B13.在Elasticsearch中,默认对text字段使用的分析器是()A.keyword B.standard C.whitespace D.simple答案:B14.若Spark作业出现“Losttask3.0instage5.0”异常,最可能的原因是()A.数据倾斜 B.ExecutorOOM C.DriverOOM D.序列化错误答案:B15.在FlinkCEP中,用于定义“紧随其后发生”的模式量词是()A.followedBy B.next C.until D.oneOrMore答案:B16.若Hive表存储格式为ORC,下列参数可提升压缩比的是()A.press=SNAPPY B.press=ZLIB C.pression=gzip D.pression=true答案:B17.在数据治理中,用于衡量“数据值是否缺失”的指标维度是()A.一致性 B.完整性 C.及时性 D.有效性答案:B18.下列关于DeltaLake的“TimeTravel”描述,正确的是()A.仅支持查询最新版本 B.可通过VERSIONASOF语法查询历史C.历史版本默认保留7天 D.需要手动开启VACUUM才能查看历史答案:B19.在Kafka2.8之后,若使用KRaft模式,可移除的组件是()A.Broker B.Controller C.ZooKeeper D.Producer答案:C20.若使用SparkMLlib训练GBDT模型,下列参数直接控制树的最大深度的是()A.maxIter B.stepSize C.maxDepth D.minInstancesPerNode答案:C二、多项选择题(每题2分,共20分。每题至少有两个正确答案,多选、少选、错选均不得分)21.下列属于Hadoop3.x新特性的有()A.ErasureCoding B.YARNFederation C.MapReduceUber模式 D.支持GPU调度 E.HDFSNFSGateway答案:ABD22.关于SparkShuffle,下列说法正确的有()A.SortShuffleWriter会产生中间文件 B.BypassMergeShuffleWriter适用于大分区数C.Tungsten采用二进制序列化 D.ShuffleRead端需要进行排序 E.ShuffleWrite量可通过press压缩答案:ACDE23.在数据质量监控中,属于“业务规则检测”范畴的有()A.唯一性校验 B.波动率阈值 C.参照完整性 D.字段长度校验 E.同比环比异常答案:BE24.下列关于FlinkCheckpoint的描述,正确的有()A.对齐时间过大会导致反压 B.ExactlyOnce需依赖Barrier对齐C.启用UnalignedCheckpoint可降低延迟 D.外部化Checkpoint可手动删除 E.状态后端仅支持RocksDB答案:ABCD25.在HBaseRowKey设计中,为避免热点可采取的策略有()A.加盐(Salt) B.反转时间戳 C.预分区 D.使用递增序列 E.哈希散列答案:ABCE26.下列属于时序数据库的有()A.InfluxDB B.Prometheus C.OpenTSDB D.ClickHouse E.Druid答案:ABC27.关于数据湖与数据仓库的差异,下列说法正确的有()A.数据湖支持SchemaonRead B.数据仓库通常采用星型模型C.数据湖主要存储原始数据 D.数据仓库不支持半结构化数据 E.数据湖不支持事务答案:ABC28.在SparkStreaming中,可导致批次延迟增加的因素有()A.批次间隔过短 B.数据量突增 C.并行度不足 D.启用反压机制 E.使用mapWithState算子答案:ABCE29.下列属于数据脱敏常用算法的有()A.MD5 B.AES C.Tokenization D.KAnonymity E.数据伪造答案:BCDE30.在机器学习模型上线流程中,属于“模型监控”指标的有()A.PSI B.AUC C.延迟P99 D.特征缺失率 E.QPS答案:ACD三、填空题(每空1分,共20分)31.HDFS的NameNode内存中保存的核心数据结构是【FSImage】与【EditLog】。32.Spark中,每个RDD包含5大属性,其中描述“如何分区”的属性是【partitioner】。33.Kafka消息体的最大默认大小为【1】MB,可通过参数【message.max.bytes】调整。34.Flink使用【RocksDBStateBackend】作为支持增量Checkpoint的状态后端。35.Hive中,函数regexp_extract属于【UDF】类型函数。36.ClickHouse的MergeTree表引擎中,用于定义“数据按时间分区”的关键字是【PARTITIONBY】。37.在Pythonpandas中,将DataFramedf的列col类型转换为category的代码为【df['col']=df['col'].astype('category')】。38.Elasticsearch集群中,负责路由分片到节点的角色是【Master】。39.HBase中,用于查看表region分布的Shell命令是【describe'tableName'】。40.若Redis键“order:cnt”采用String类型,自增1并返回结果的命令是【INCRorder:cnt】。41.数据治理元数据的三层模型包括【业务元数据】、【技术元数据】与【操作元数据】。42.SparkSQL的Catalyst优化器中,用于将逻辑计划转换为物理计划的策略集合称为【Strategies】。43.在FlinkSQL中,声明一个处理时间属性字段的语法是【procASPROCTIME()】。44.GBDT模型中,用于防止过拟合的参数【subsample】表示每次建树使用的样本比例。45.DeltaLake中,将Parquet表原地转换为Delta表的SQL命令为【CONVERTTODELTAparquet.`path`】。46.Hadoop3.x引入的【YARNTimelineServicev.2】用于提供更高效的资源历史查询。47.若使用Airflow,任务实例状态为【up_for_retry】表示任务失败且满足重试条件。48.在PromQL中,计算过去5分钟HTTP请求增长率的表达式为【rate(http_requests_total[5m])】。49.HiveonTez执行引擎中,可通过设置【tez.grouping.maxsize】控制Map任务最大输入数据量。50.数据血缘的主动采集方式通常采用【Hook】或【Agent】嵌入任务运行时。四、简答题(共30分)51.(封闭型,6分)简述MapReduce中“Shuffle”阶段的具体流程,并指出可优化的两个关键点。答案:(1)Map端:每个Map任务将输出结果写入环形内存缓冲区,当阈值达到80%触发Spill,Spill线程将数据按Partition排序并写入本地磁盘,形成多个溢写文件,最终合并为一个分区且有序的大文件。(2)Reduce端:通过HTTP拉取各自分区的数据,进行归并排序,生成key相同的数据列表供reduce()函数处理。优化点:①调整io.sort.factor增加合并流数量,减少磁盘IO;②启用Combiner减少网络传输量;③合理设置pletedmaps,提前启动Reduce拉取,隐藏网络延迟。(答出任意两点即可)52.(开放型,8分)某电商公司每日新增订单数据量约2TB,原始数据为JSON格式,需支持离线数仓与实时Adhoc查询。请给出技术选型和分层架构说明,并阐述理由。答案:(1)采集层:使用Flume采集日志到Kafka,保留3天;Kafka分区数=节点数2,保证并行度。(2)存储层:Kafka数据通过SparkStreaming写入HDFS(Parquet+Snappy),同时通过FlinkCDC同步MySQLbinlog到Kafka,实现实时维度更新。(3)离线数仓:HDFS→SparkSQL进行ETL,按ODS→DWD→DWS→ADS分层,DWD采用星型模型,DWS采用宽表+轻度汇总,ADS采用ClickHouse提供毫秒级查询。(4)实时数仓:Kafka→FlinkSQL→Kafka,再入ClickHouse,使用ReplacingMergeTree去重,通过物化视图预聚合UV、GMV。(5)选型理由:Parquet列存+Snappy压缩比高,ClickHouse向量化执行满足Adhoc;Flink低延迟、ExactlyOnce;Spark批处理生态成熟;Kafka解耦生产与消费。(6)治理:使用ApacheAtlas做元数据与血缘,GreatExpectations做数据质量,Airflow调度离线任务,Flink自动拉起实时任务。53.(封闭型,6分)写出SparkDataFrameAPI完成“分组求Top3”的完整代码(Scala),并指出性能瓶颈。答案:importorg.apache.spark.sql.expressions.Windowimportspark.implicits._valw=Window.partitionBy($"category").orderBy($"sales".desc)valresult=df.withColumn("rn",row_number.over(w)).filter($"rn"<=3).drop("rn")瓶颈:Window操作需全局排序,导致大量Shuffle;若category倾斜,会出现单Partition数据过大,ExecutorOOM。优化:两阶段聚合,先局部TopN,再全局TopN;或采用mapPartitions自定义排序。54.(开放型,10分)某视频平台推荐系统上线新模型后,离线AUC提升2%,但线上CTR下降5%。请给出排查思路与验证方案。答案:(1)数据一致性:对比离线特征与线上特征,使用特征diff工具,发现“用户历史播放时长”字段线上缺失率30%,原因为Kafka字段变更未同步。(2)特征分布:计算PSI,发现“视频标签”PSI=0.25>0.2,分布漂移,原因为新上传视频标签体系升级。(3)模型校准:绘制可靠性曲线,发现模型对高预估样本过自信,采用PlattScaling校准概率。(4)实验设计:采用AB实验,分层分流,实验桶与对照桶用户正交,运行7天,样本量≥1M,置信度95%,最小可检测效应1%。(5)业务指标:除CTR外,观察完播率、点赞率、负反馈率,发现实验桶完播率下降3%,负反馈率上升2%,确认模型虽精准但推荐内容不符合用户兴趣。(6)迭代方案:引入多样性重排,使用MMR降低相似内容比例,重新训练并灰度,最终CTR回升4.2%,完播率提升1.5%。五、应用题(共60分)55.(计算类,15分)某电商促销期间,订单表order_info(order_id,user_id,sku_id,price,ctime)共50亿行,存储于HDFS(Parquet,Snappy,总大小1.2TB)。现需计算“每小时累计独立支付用户数”,要求输出(hour,uv)结果。(1)给出SparkSQL实现,并估算资源。(2)若发现任务耗时3小时,指出优化方案并给出预计耗时。答案:(1)SQL:SELECTfrom_unixtime(unix_timestamp(ctime),'yyyyMMddHH')hour,approx_count_distinct(user_id)uvFROMorder_infoGROUPBYhour;资源估算:输入1.2TB,Snappy压缩比约3:1,实际扫描约400GB;approx_count_distinct误差0.5%,需内存约2GB/任务;设置executorcores=4,executormemory=8GB,动态分区并行度=2000,总Executor数=500,总内存4TB,耗时3小时。(2)优化:①过滤下推,增加WHEREctime>='2025060100:00:00',减少30%数据;②采用BloomFilter去重,先按小时分区,再mapside聚合,减少Shuffle70%;③启用AQE,自动拆分倾斜分区;④将approx_count_distinct改为bitmap精确去重,使用RoaringBitmap,内存增加但CPU降低;⑤增加Executor到1000,并行度4000;预计耗时降至25分钟。56.(分析类,15分)给定用户行为表user_action(user_id,action,ts),需使用FlinkCEP检测“连续三次点击同一商品后无购买”的用户,输出告警。(1)给出FlinkCEP模式定义代码(Java)。(2)若需保证ExactlyOnce,需如何配置Checkpoint与Kafka?答案:(1)Pattern<UserAction,?>pattern=Pattern.<UserAction>begin("start").where(newSimpleCondition<UserAction>(){@Overridepublicbooleanfilter(UserActionvalue){return"click".equals(value.action);}}).times(3).consecutive().followedBy("end").where(newSimpleCondition<UserAction>(){@Overridepublicbooleanfilter(UserActionvalue){return!"purchase".equals(value.action);}}).within(Time.minutes(30));(2)Checkpoint:启用EXACTLY_ONCE模式,设置checkpoint间隔30s,超时10min,最大并发1,启用UnalignedCheckpoint,状态后端RocksDB,增量Checkpoint开启;Kafka:Producer设置transactional.id,开启幂等与事务,Sink使用FlinkKafkaProducer的Semantic.EXACTLY_ONCE,并设置enable.idempotence=true,acks=all,retries=Integer.MAX_VALUE。57.(综合类,30分)某市政府构建“城市大脑”实时交通项目,数据源包括:①卡口摄像头:每秒10万条车辆通行记录(车牌、卡口、时间、车速);②GPS浮动车:2万辆出租车,每30秒上报(车牌、经纬度、速度、方向);③信控信号:3000路口,每秒变灯相位数据(路口、方向、灯色、剩余秒)。要求:a)实时计算任意路口最近5分钟车流量、平均车速、拥堵指数;b)提供最近30天历史查询,支持秒级聚合与可视化;c)预测未来15分钟路口拥堵指数,误差<15%。请给出完整技术架构、分层模型、关键表结构、实时计算逻辑、离线模型训练流程、资源评估与成本估算。答案:(1)架构:采集层:卡口数据通过MQTT→Kafka(topic=traffic.camera),GPS通过Netty→Kafka(topic=traffic.gps),信控通过HTTP→Kafka(topic=traffic.signal);实时层:FlinkSQL→Kafka→ClickHouse,分层:DWD(原始)→DWS(分钟级聚合)→ADS(秒级汇总);离线层:HDFS(Parquet)→SparkSQL→特征工程→TensorFlow训练Prophet+XGBoost融合模型,结果写回MySQL;服务层:SpringBoot+Redis缓存+Grafana可视化;治理:Atlas元数据,DataHub血缘,Prometheus+Alertmanager监控。(2)关键表:DWD:createtabledwd_camera(platestring,卡口string,tsbigint,speedint)with('topic'='traffic.camera','format'='json','scan.startup.mode'='latest');DWS:createtabledws_road_minute(路口string,window_startstring,flowint,avg_speeddouble,congestdouble,primarykey(路口,window_start))with('engine'='ReplacingMergeTree()'...)
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中学宿舍管理制度
- 临时麻醉管理制度
- 2026年高级IT项目管理专业试题库及答案
- 2026年音乐创作与音乐理论专业题库
- 输尿管支架管拔除同意书
- 广东省肇庆市高要区2025-2026学年九年级上学期1月期末化学试题(含答案)
- 2025年陕西省初中学业水平考试物理试卷(副题)(含答案)
- 2025年潍坊食品科技职业学院马克思主义基本原理概论期末考试模拟题带答案解析(必刷)
- 2024年绥江县幼儿园教师招教考试备考题库附答案解析
- 2025年连云港职业技术学院单招职业适应性测试题库附答案解析
- 2025海洋水下机器人控制系统行业市场需求及发展趋势分析投资评估规划报告
- 物流金融管理培训课件
- 教学管理系统项目开发计划大全五
- 微专题:突破语病题+2026届高考语文二轮复习
- 电梯线路知识培训内容课件
- 2025转让股权合同 转让股权合同范本
- 羽毛球裁判二级考试题库及答案
- 医院安全教育与培训课件
- 锂离子电池用再生黑粉编制说明
- (正式版)DB61∕T 5033-2022 《居住建筑节能设计标准》
- 公路工程质量风险识别及控制措施
评论
0/150
提交评论