版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2025年大数据技术与应用职业资格考试题及答案一、单项选择题(每题1分,共20分。每题只有一个正确答案,请将正确选项字母填入括号内)1.在Hadoop生态中,负责资源管理与任务调度的组件是()A.HDFS B.YARN C.Hive D.Flume答案:B2.SparkCore默认的存储级别是()A.MEMORY_ONLY B.MEMORY_AND_DISK C.DISK_ONLY D.OFF_HEAP答案:A3.下列关于KafkaPartition的描述,错误的是()A.每个Partition内部消息有序 B.Partition数量一旦创建不可调整C.消费者组内每个消费者负责一个或多个Partition D.Partition可跨Broker分布答案:B4.在Flink的时间语义中,EventTime是指()A.数据进入Flink系统的时间 B.数据在算子中处理的时间C.事件在源头发生的时间 D.数据被Sink写出时间答案:C5.使用HBaseRowKey设计时,为了避免热点,下列策略无效的是()A.加盐 B.反转 C.哈希 D.顺序递增答案:D6.在数据仓库分层模型中,DWD层的主要职责是()A.原始数据保留 B.明细数据清洗与规范化 C.维度建模 D.面向应用汇总答案:B7.下列算法中,属于集成学习Bagging思想的是()A.XGBoost B.RandomForest C.LightGBM D.GBDT答案:B8.在SparkMLlib中,用于特征归一化的转换器是()A.Tokenizer B.StandardScaler C.PCA D.ChiSqSelector答案:B9.某电商公司使用HiveSQL计算近30天GMV,最佳分区字段是()A.user_id B.sku_id C.dt D.category答案:C10.下列关于数据倾斜的说法,正确的是()A.只会发生在Shuffle阶段 B.Map阶段不可能出现倾斜C.可以通过两阶段聚合缓解 D.增加Executor数量必然解决答案:C11.在ClickHouse中,最适合做高并发点查的引擎是()A.MergeTree B.SummingMergeTree C.Log D.TinyLog答案:C12.使用Airflow调度时,任务A成功触发任务B,二者依赖关系应定义为()A.B.set_upstream(A) B.A.set_downstream(B) C.A>>B D.B<<A答案:C13.在PythonPandas中,将DataFramedf的列col类型转为int64,正确写法是()A.df.col.astype('int64') B.df['col'].astype('int64')C.df['col'].to_int64() D.df.col.to_numeric()答案:B14.某集群NameNode内存持续升高,最可能的原因是()A.DataNode磁盘损坏 B.小文件过多 C.副本数过低 D.网络延迟答案:B15.在Elasticsearch中,默认对text字段使用的分析器是()A.keyword B.standard C.whitespace D.simple答案:B16.下列关于数据血缘的描述,错误的是()A.可用于影响分析 B.必须手工维护C.支持字段级追溯 D.有助于合规审计答案:B17.在Scala中,下列代码输出结果为()valrdd=sc.parallelize(List(1,2,3,4));valsum=rdd.aggregate(0)(_+_,_+_);println(sum)A.4 B.6 C.10 D.0答案:C18.使用Sqoop从MySQL导入数据到Hive,若目标表不存在,需添加参数()A.createhivetable B.hiveimport C.hiveoverwrite D.targetdir答案:A19.在数据治理成熟度模型中,达到“已管理”级别的标志是()A.制定数据标准 B.建立数据质量监控流程 C.实施数据资产目录 D.实现自动化治理答案:B20.某模型AUC从0.81提升到0.90,但线上CTR下降,最可能发生了()A.过拟合 B.特征泄露 C.样本不均衡 D.训练集验证集同分布答案:B二、多项选择题(每题2分,共20分。每题至少有两个正确答案,多选少选均不得分)21.下列属于NoSQL数据库CAP权衡中放弃一致性C的典型系统有()A.Cassandra B.MongoDB C.HBase D.DynamoDB答案:A、D22.在Spark中,可能导致ShuffleWrite溢写到磁盘的原因包括()A.map端聚合内存不足 B.reduce任务并发高 C.分区数据量过大 D.关闭spark.shuffle.spill答案:A、C23.关于FlinkCheckpoint,下列说法正确的有()A.基于ChandyLamport算法 B.支持ExactlyOnce语义C.保存点与Checkpoint格式完全一致 D.开启Checkpoint必须开启HA答案:A、B、C24.使用Python进行缺失值处理时,下列做法合理的包括()A.数值型用中位数填充 B.类别型用众数填充 C.直接删除缺失率>60%的列 D.对所有列用0填充答案:A、B、C25.数据湖与数据仓库相比,其优势体现在()A.存储原始格式 B.支持schemaonread C.强事务支持 D.更低的存储成本答案:A、B、D26.在Kafka中,提高吞吐量的调优手段有()A.增加batch.size B.增大linger.ms C.开启压缩 D.降低acks答案:A、B、C、D27.下列属于特征选择过滤法的有()A.方差选择 B.卡方检验 C.递归特征消除 D.互信息答案:A、B、D28.使用HDFSFederation带来的好处包括()A.单NameNode内存瓶颈缓解 B.全局统一命名空间 C.水平扩展NameNode D.单点故障消除答案:A、C29.在数据安全合规中,属于GDPR赋予数据主体的权利有()A.访问权 B.删除权(被遗忘权) C.可携带权 D.修改权答案:A、B、C、D30.下列关于ClickHouse索引的描述,正确的有()A.主键索引为稀疏索引 B.每8192行生成一条索引项 C.支持二级索引 D.主键必须唯一答案:A、B、C三、填空题(每空1分,共20分)31.Hadoop3.x默认的HDFS块大小为________MB。答案:12832.Spark中,一个Job可包含多个________,一个________可包含多个Task。答案:Stage;Stage33.Flink的窗口函数apply()与process()的主要区别是后者可以访问________上下文。答案:Window34.Kafka消费者的位移默认存储在________系统的内部topic。答案:__consumer_offsets35.在Hive中,设置动态分区开关的参数为________。答案:hive.exec.dynamic.partition=true36.XGBoost的目标函数由损失函数和________两部分组成。答案:正则化项37.Elasticsearch集群中,负责集群状态管理的节点角色称为________节点。答案:Master38.数据质量维度中,衡量同一字段在不同系统取值一致性的指标称为________。答案:一致性39.在Scala中,惰性求值的集合类型为________。答案:Stream40.使用Airflow的Sensor任务时,若超时后仍不满足条件,需设置参数________。答案:timeout41.HBase中,用于管理Region生命周期及负载均衡的进程是________。答案:HMaster42.在PythonSklearn中,用于交叉验证的函数为________。答案:cross_val_score43.数据湖存储层常使用的三种文件格式为Parquet、ORC与________。答案:Avro44.在SparkStructuredStreaming中,输出模式Complete要求输出Sink支持________语义。答案:聚合后全量重写45.使用Sqoop导出Hive数据到MySQL时,必须指定参数________以控制并发。答案:nummappers46.在ClickHouse中,用于合并同一分区相同主键数据的引擎为________。答案:SummingMergeTree47.数据治理元数据三类中,描述数据加工逻辑的血缘元数据属于________元数据。答案:过程48.在FlinkCEP中,模式序列后跟.oneOrMore()表示________匹配策略。答案:循环49.在Linux中,查看HDFS目录磁盘使用占比的命令为hdfsdfsdu________。答案:h50.在数据科学项目CRISPDM流程中,紧随“数据理解”之后的是________阶段。答案:数据准备四、简答题(共6题,每题10分,共60分)51.(封闭型)请写出Spark中广播变量(BroadcastVariable)的创建与使用步骤,并说明其适用场景。答案:步骤:1.调用SparkContext.broadcast(value)创建广播变量,返回Broadcast[T]对象。2.在算子函数内通过.value属性读取广播值,避免重复发送。3.任务完成后可调用.unpersist()释放集群缓存,或依赖自动清理。适用场景:1.大表与小表做mapsidejoin,小表(<1GB)可广播到每个Executor,避免Shuffle。2.机器学习模型预测阶段,将模型参数广播到各节点并行推理。3.配置字典、规则库等只读数据需要在多Task共享时,减少网络与内存开销。52.(开放型)某电商公司每天新增订单数据约500GB,需实时计算分省份GMV并写入MySQL供报表查询。请给出技术选型和架构图文字描述,并说明如何保证端到端ExactlyOnce。答案:技术选型:1.采集层:Canal伪装成MySQLSlave实时拉取binlog,写入Kafka。2.计算层:FlinkSQL消费Kafka,按province字段分组,tumble窗口10s,计算sum(pay_amount)。3.存储层:Flink使用JDBCSink写入MySQL,采用幂等写入(insertintoduplicatekeyupdate)。4.维表:省份维表存储于MySQL,通过Flink异步维表Join提升性能。ExactlyOnce措施:1.Source端Kafka开启事务,Canal按事务粒度投递。2.Flink启用Checkpoint,状态后端为RocksDB,间隔30s,语义ExactlyOnce。3.Sink端MySQL采用幂等SQL,并利用Flink两阶段提交:预提交写入临时表,Checkpoint完成后正式提交。4.监控:FlinkWebUI监控Checkpoint成功率和端到端延迟,失败自动回滚。架构文字描述:Canal→Kafka→Flink→MySQL,各层均支持水平扩展,KafkaPartition按订单id哈希,保证同一订单进入同一分区,避免乱序。53.(封闭型)简述HDFS写数据流程,并指出Packet在Pipeline中如何容错。答案:流程:1.Client通过DistributedFileSystem向NameNode申请创建文件,NN检查权限并返回可写DataNode列表(Pipeline)。2.Client将数据切分为Packet(默认64KB),第一个DN收到后写入本地磁盘并转发给下一个DN,形成Pipeline。3.每个DN写入成功后向Client发送ACK,Client收到所有ACK后视为写入成功。容错:1.若某DN失败,Client立即移除该节点,通知NameNode重新分配新DN,剩余节点继续组成新Pipeline。2.失败的DN上已写入数据块在后续副本同步阶段由NN调度复制,保证副本数达标。3.Client维护未确认Packet队列,收到ACK后移除,失败时重发队列中Packet,确保不丢数据。54.(开放型)给定用户行为表user_action(user_idstring,item_idstring,actionstring,tsbigint),需统计每个用户最近30天购买的商品去重数。请写出SparkSQL实现,并说明如何优化长周期窗口计算。答案:SQL:selectuser_id,count(distinctitem_id)asbuy_cntfromuser_actionwhereaction='buy'andts>=unix_timestamp()30243600groupbyuser_id;优化:1.分区:按dt分区,每日离线写入,避免全表扫描。2.索引:使用BloomFilter索引item_id,减少Shuffle。3.增量:每日预聚合生成user_buy_daily,再滚动合并30天结果,降低重复计算。4.缓存:将最近31天数据cache到内存,复用中间结果。5.参数:调高spark.sql.shuffle.partitions=1000,避免倾斜;开启自适应查询执行AQE。55.(封闭型)说明XGBoost中“缺失值默认方向”算法的原理,并指出如何防止过拟合。答案:原理:1.在节点分裂寻找最优切分点时,XGBoost把缺失值样本集中到右子节点,计算增益;再集中到左子节点,计算增益;选择增益大的方向作为缺失值默认方向。2.若训练阶段无缺失值,预测阶段出现缺失,则按学习到的默认方向划分。防止过拟合:1.正则化参数lambda、alpha对权重进行L2、L1惩罚。2.subsample、colsample_bytree进行行、列采样。3.设置max_depth、min_child_weight限制树复杂度。4.使用earlystopping,验证集指标不再提升时终止迭代。5.采用交叉验证选择最佳超参数。56.(综合型)某市交通卡口每天产生2亿条车辆通行记录,结构为(car_id,road_id,speed,ts)。需实时检测平均速度低于20km/h的拥堵路段并推送预警,要求延迟<1min。请给出完整技术方案,包括数据流、关键参数、窗口设计、触发条件及性能估算。答案:数据流:1.卡口边缘服务器将数据通过MQTT推送到Kafka,Topic按road_id哈希分区,Partition=300。2.Flink消费Kafka,采用EventTime,watermark=5s,并行度300。窗口设计:1.滑动窗口size=60s,slide=30s,允许迟到10s,侧流输出迟到数据。2.聚合逻辑:avg(speed)<20且通过车辆数>10视为拥堵。触发条件:1.窗口结束且watermark到达即触发计算。2.结果写入Redis,Key=road_id+窗口结束时间,TTL=300s。3.预警服务订阅RedisKeyspace通知,推送到交管平台。性能估算:1.每秒约2.3万条,单条100B,峰值流量2.3MB/s,Kafka可承受。2.Flink单核5000条/s,300并行度理论峰值150万条/s,富余65倍。3.状态大小:窗口60s,2.3万60=138万条,RocksDB压缩后约200MB,内存缓存10%,20MB,可接受。关键参数:1.kafka.retention.ms=86400000,segment.bytes=512MB。2.erval=30s,语义ExactlyOnce,状态后端RocksDB增量Checkpoint。3.Rediscluster3主3从,每节点内存32GB,可缓存全天拥堵结果。扩展:若流量增加10倍,Partition扩至1000,Flink并行度同步提升,Kafka磁盘扩容至10TB,Redis采用64分片,水平扩展即可。五、应用题(共4题,每题15分,共60分)57.(计算类)某电商大促期间,订单表order(order_id,user_id,amount,dt)共60亿行,存储为Parquet,压缩率1:4,单副本。集群节点12台,每节点磁盘12×8TB,HDFS三副本。问:(1)估算原始数据存储所需裸空间(单位TB,保留两位小数)。(2)若采用冷热分层,热数据占10%,保留两副本,冷数据保留一副本,计算节省空间百分比。答案:(1)Parquet大小=60×10^9×100B/(4×1024^4)=1.40TB,三副本裸空间=1.40×3=4.20TB。(2)热数据0.14TB×2=0.28TB,冷数据1.26TB×1=1.26TB,合计1.54TB,节省(4.201.54)/4.20=63.33%。58.(分析类)给定用户标签表tag(user_id,tag_name,tag_value,update_time),需找出近7天内标签值发生变更的用户列表。请写出Spark实现,要求去重、输出(user_id,changed_tag_cnt),并说明如何验证结果正确性。答案:代码:valdf=spark.read.parquet("tag")vallast=df.filter('update_time>=current_date()7)valprev=df.filter('update_time<current_date()7).select('user_id,'tag_name,'tag_value)valjoined=last.join(prev,Seq("user_id","tag_name"),"inner").filter(last("tag_value")=!=prev("tag_value"))valres=joined.groupBy("user_id").count.withColumnRenamed("count","changed_tag_cnt")res.write.parquet("output")验证:1.随机抽样100用户,手工比对DB前后值,确认变更。2.单元测试构造user_id=1,tag_name=gender,tag_value由M→F,验证输出changed_tag_cnt=1。3.对比全量countdistinct与leftantijoin结果,确保无漏无重。59.(综合类)某视频App日志字段为(user_id,video_id,play_duration,ts),需实时统计每视频最近1分钟播放完成率(完成=play_duration≥video_duration0.9)。视频元数据存储于MySQL,video(video_id,video_duration)。请给出FlinkSQL完整脚本,包括维表Join、UDF、结果写入Kafka,并说明如何容忍视频元数据更新延迟。答案:脚本:CREATETABLElog(user_idSTRING,video_idSTRING,play_durationINT,tsBIGINT,rowtimeASTO_TIMESTAMP_LTZ(ts/1000,0),WATERMARKFORrowtimeASrowtimeINTERVAL'5'SECOND)WITH('connector'='kafka','topic'='play_log','properties.bootstrap.servers'='kafka:9092','format'='json');CREATETABLEvideo_dim(video_idSTRING,video_durationINT,PRIMARYKEY(video_id)NOTENFORCED)WITH('connector'='jdbc','url'='mysql://mysql:3306/video','tablename'='video','username'='root','password'='','lookup.cache.maxrows'='10000','lookup.cache.ttl'='30min');CREATETABLEsink_kafka(video_idSTRING,complete_rateDOUBLE,window_startTIMESTAMP(3),window_endTIMESTAMP(3))WITH('connector'='kafka','topic'='video_stat','format'='json');INSERTINTOsink_kafkaSELECTvideo_id,SUM(CASEWHENplay_duration>=video_duration0.9THEN1ELSE0END)1.0/COUNT()AScomplete_rate,TUMBLE_START(rowtime,INTERVAL'1'MINUTE),TUMBLE_END(rowtime,INTERVAL'1'MINUTE)FROMlogJOINvideo_dim
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026校招:东实集团面试题及答案
- 2026校招:比亚迪试题及答案
- 2025-2026学年健康亮亮的眼睛教案
- 2025-2026学年健康教案智齿大班
- 2025-2026学年冷雨夜吉他谱教学设计
- 2026年山西省吕梁市单招职业适应性测试题库含答案详解(培优a卷)
- 2026年嵩山少林武术职业学院单招职业适应性测试题库及答案详解(夺冠系列)
- 船体装配工安全文化模拟考核试卷含答案
- 2026年广东农工商职业技术学院单招职业技能考试题库附答案详解(培优)
- 2026年广东松山职业技术学院单招职业技能考试题库及答案详解1套
- 苏教版五年级数学下册全册教案与反思
- 2023年驾驶台资源管理真题模拟汇编(共873题)
- (苏科2024版)信息科技四年级全一册(新教材)全册教学课件(共10课) - 副本
- 【外研】八上英语期末复习 专题08 完形填空20篇
- 会阴裂伤的分度及护理
- 男方婚后承诺保证书
- 2024陆上风力发电工程施工质量验收规程
- 中煤陕西能源化工集团有限公司招聘笔试题库2024
- 2024-2030年中国二手工程机械行业市场发展趋势与前景展望战略分析报告
- JBT 7946.2-2017 铸造铝合金金相 第2部分:铸造铝硅合金过烧
- 天津市民用建筑空调系统节能运行技术规程
评论
0/150
提交评论