版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2025年大数据工程师人员招聘面试试题及参考答案一、单项选择题(每题2分,共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.下列Kafka配置参数中,控制消息在日志中保留时间的参数是A.log.retention.bytes B.log.retention.hours C.log.segment.bytes D.replica.fetch.max.bytes答案:B4.在Flink中,用于实现端到端exactlyonce语义的核心机制是A.Checkpoint B.Savepoint C.Window D.Slot答案:A5.若Hive表分区字段为dt(string),查询2025年5月所有数据,最高效的写法是A.selectfromtwheredtlike'202505%'B.selectfromtwheresubstr(dt,1,7)='202505'C.selectfromtwheredtbetween'20250501'and'20250531'D.selectfromtwhereyear(dt)=2025andmonth(dt)=5答案:C6.HDFS写入数据时,默认副本放置策略中,第一副本放在A.随机节点 B.客户端所在节点 C.与客户端不同机架的节点 D.NameNode本地磁盘答案:B7.在Scala中,下列哪个表达式返回Array(1,4,9)A.Array(1,2,3).map(x=>xx)B.Array(1,2,3).filter(_>0)C.Array(1,2,3).flatMap(x=>Array(x,xx))D.Array(1,2,3).reduce(__)答案:A8.使用Pythonpandas读取10GBCSV时,为降低内存占用,最佳实践是A.先采样再读取 B.指定dtype与usecols C.使用chunksize=1000 D.转换为HDF5再读取答案:B9.在AWS中,适合存放流式数据并供KinesisAnalytics直接消费的存储是A.S3 B.DynamoDB C.KinesisDataStreams D.Redshift答案:C10.根据GDPR,数据主体行使“被遗忘权”时,数据控制者需在收到请求后A.7天内 B.15天内 C.30天内 D.无硬性时限答案:C二、多项选择题(每题3分,共15分,多选少选均不得分)11.下列属于SparkSQL优化器Catalyst提供的优化策略有A.谓词下推 B.列裁剪 C.常量折叠 D.代码生成 E.索引选择答案:ABCD12.关于HBaserowkey设计,合理的做法包括A.将时间戳放在rowkey高位 B.使用哈希前缀打散热点 C.长度控制在100字节以内 D.采用逆序时间戳+设备ID E.使用递增Long型答案:BCD13.在Kafka2.8之后,无需Zookeeper即可运行的特性依赖A.KRaftmetadataquorum B.metadata.log.dir C.process.roles=broker,controller D.listeners=PLAINTEXT E.transaction.state.log.replication.factor答案:ABC14.使用Airflow时,可实现任务幂等性的手段有A.使用模板变量ds B.设置retries=0 C.利用task_instance_key_str D.写入分区表覆盖模式 E.在SQL中使用CREATETABLEIFNOTEXISTS答案:ACDE15.下列Python库中,支持GPU加速的机器学习库有A.XGBoost B.LightGBM C.CatBoost D.RapidscuML E.PyTorch答案:ABDE三、填空题(每空2分,共20分)16.Spark中,DataFrame的join操作若未指定连接条件,默认执行的是________连接,会导致________。答案:笛卡尔,数据膨胀17.在Hive中,将非分区表转换为分区表并重新组织数据的语句关键字是________。答案:INSERTOVERWRITETABLE…PARTITION…18.Flink的StateBackend中,________状态后端将工作状态存储在TaskManager内存,checkpoint存储在JobManager内存,适用于________级别的小状态作业。答案:MemoryStateBackend,MB19.HDFS的NameNode在启动时,首先加载________文件,然后加载________文件,完成元数据合并。答案:fsimage,edits20.在Linux中,查看某进程打开文件句柄数的命令是________。答案:lsofpPID|wcl21.使用pandas将DataFrame写入MySQL时,依赖的引擎类名是________。答案:create_engine(SQLAlchemy)22.在AWSS3中,实现对同名对象上传时可触发Lambda函数的事件类型应设置为________。答案:s3:ObjectCreated:23.在Scala中,惰性求值的集合类型是________。答案:Stream(或LazyList,Scala2.13+)24.若Kafkatopic有6个partition,消费者组内最多有________个消费者能同时消费。答案:625.在DataWorks中,节点依赖的上游节点输出名称格式为________。答案:项目.节点名称四、判断题(每题1分,共10分,正确写“T”,错误写“F”)26.Spark的RDD一旦缓存,其分区数量不可再改变。答案:T27.HBase中列族数量越多,随机读性能越好。答案:F28.Kafka的consumeroffset可以存储在Kafka内部topic__consumer_offsets中。答案:T29.Hive支持事务表,但必须使用ORC格式并开启表属性transactional=true。答案:T30.Flink的checkpoint屏障对齐机制会导致反压时checkpoint超时。答案:T31.在Python中,使用multiprocessing.Pool可完全避免GIL限制。答案:T32.Parquet文件不支持列级压缩算法不同。答案:F33.使用AWSGlueCrawler可自动生成DataCatalog表结构。答案:T34.在Linux中,命令ulimitn可查看当前用户最大可打开文件数。答案:T35.在DataFrame中,dropDuplicates()与distinct()语义完全相同。答案:F五、简答题(封闭型,每题6分,共18分)36.简述SparkSQL中广播join的触发条件与调优参数。答案:触发条件:小表大小低于参数spark.sql.autoBroadcastJoinThreshold(默认10MB);小表需先缓存到Driver并广播到Executor。调优参数:spark.sql.autoBroadcastJoinThreshold、spark.sql.adaptive.enabled、spark.sql.adaptive.coalescePartitions.enabled。关闭广播可设置spark.sql.statistics.fallBackToHdfs=false并手动hint/+broadcast(a)/。37.说明HDFS写数据时DataNode故障的处理流程。答案:客户端写入pipeline,若某DataNode故障,客户端收到ACK失败,立即将故障节点从pipeline移除,通知NameNode,NameNode分配新DataNode,剩余节点继续传输未完成数据包,客户端无需重新写入全部数据,仅重传未确认数据包,保证数据一致性。38.列举Flink实现端到端exactlyonce的两阶段提交步骤。答案:1)预提交:Flink调用TwoPhaseCommitSinkFunction.beginTransaction打开外部事务;2)写入:快照阶段将数据写入外部系统但未提交;3)checkpoint完成:notifyCheckpointComplete调用commit提交事务;4)若checkpoint失败调用abort回滚;5)依赖幂等外部系统或事务型存储(Kafka事务、MySQLXA)。六、简答题(开放型,每题8分,共16分)39.某电商公司每日新增100亿条订单明细,需支持按用户ID、商品ID、日期三维条件快速查询,预计存储3年,请给出数据模型与分层设计方案,并说明技术选型理由。答案:采用Iceberg分区表,按dt(日期)+bucket(用户ID,256)+bucket(商品ID,256)三级分区,底层Parquet+ZSTD压缩,存储于OSS/S3。分层:ODS贴源层(Kafka→Flink→Iceberg),DIM维度层(MySQL→FlinkCDC→Iceberg),DWD明细层(去重脱敏),DWS汇总层(FlinkStreaming→IcebergMergeInto)。技术选型:Iceberg支持隐式分区、行级更新、时间旅行;Flink流式入湖保证分钟级延迟;Trino/Presto提供秒级OLAP;HBase+Redis缓存热点用户,实现毫秒级点查。3年数据约30PB,压缩后8PB,按S3低频访问+生命周期冷存,成本降低70%。40.描述一次Kafka集群扩容的完整流程,包括分区重分配、性能验证与回滚预案。答案:1)评估:监控CPU、网络、磁盘,确定瓶颈为broker节点不足;2)准备:新节点安装同版本Kafka,配置broker.id递增,关闭自动创建topic;3)扩容:使用kafkareassignpartition.sh生成扩容计划,增加副本因子可同步提升;4)重分配:执行计划,设置throttle100MB/s避免影响生产;5)验证:kafkaproducerperftest.sh与kafkaconsumerperftest.sh压测,目标吞吐提升30%,P99延迟<50ms;6)监控:观察UnderReplicatedPartitions、ISRshrinkrate;7)回滚:保留原副本分配JSON,若异常立即执行rollback脚本,将leader迁回原节点,下线新节点;8)收尾:更新Prometheustarget、Grafanadashboard,清理临时throttle配置,撰写SOP文档。七、计算题(每题10分,共20分)41.某Spark批处理作业读取HDFS目录/hdfs/data/2025/,目录下共600个Parquet文件,总大小180GB,单个文件平均300MB,集群配置200executor,每个executor4cores8GB。当前任务耗时45分钟,driver端发现任务提交阶段耗时2分钟,其余为task运行时间。现计划将文件合并为60个文件,每个1.8GB,其他参数不变,请估算新耗时并说明理由。答案:原并行度:600个文件→600个分区→600个task。合并后60个文件→60个分区→60个task。集群并发能力:200×4=800core,可同时跑800task。原600task可一次性调度,CPU非瓶颈,耗时45分钟主要受I/O与CPU混合。合并后task数减少为60,并行度下降,但每个task处理数据量增大10倍,磁盘顺序读效率提升,Parquet列裁剪+下推减少网络,预计单task耗时从4.5分钟升至约13分钟,总耗时≈13分钟+2分钟=15分钟,节省约67%。42.某Flink作业消费Kafkatopic,每秒输入100万条订单,每条1KB,并行度设为200,checkpoint间隔30秒,使用RocksDBStateBackend,开启增量checkpoint,状态数据键值平均大小200字节,去重窗口24小时,计算一天内状态大小与单次checkpoint上传数据量(假设去重率为50%,压缩比1:4)。答案:一天输入量:1000000×86400=86.4亿条,去重后状态条数43.2亿,每条200字节,总状态≈43.2亿×200B=864GB,压缩后864/4=216GB。增量checkpoint:30秒新增100万×30=3000万条,去重后1500万条,新增状态≈1500万×200B=3GB,压缩后3/4=0.75GB,故单次上传约750MB。八、综合分析题(21分)43.背景:某金融公司实时风控系统,需毫秒级拦截高风险交易。系统架构:交易网关→Kafka→FlinkCEP→Redis→API返回。需求:1)99th延迟<50ms;2)可用性99.99%;3)数据需可审计,保存30天;4)支持灰度发布。问题:(1)给出FlinkCEP模式序列定义示例,识别“同一卡5分钟内连续3次异地登录且金额>1万”的模式。(5分)(2)如何设计Rediskey以保证高并发读写且支持版本回滚?(5分)(3)如何在不停止Flink作业情况下完成代码升级与灰度?(5分)(4)审计数据如何存储与检索,保证合规?(6分)答案:(1)Pattern<Transaction,?>pattern=Pattern.<Transaction>begin("first",AfterMatchSkipStrategy.skipPastLastEvent()).where(newSimpleCondition<Transaction>(){@Overridepublicbooleanfilter(Transactiont){returnt.getAmount()>10000&&!t.getCity().equals(t.getLastCity());}}).followedBy("second").where(newSimpleCondition<Transaction>(){@Overridepublicbooleanfilter(Transactiont){return!t.getCity().equals(t.getLastCity());}}).followedBy("third").where(newSimpleCondition<Transaction>(){@Overridepublicbo
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年大学人类学(体质人类学)试题及答案
- 2025年高职机电(机电设备维修)试题及答案
- 2026年电工考证(电工理论考核)试题及答案
- 2025年中职园艺(园艺植物栽培)试题及答案
- 2025年大学药品与医疗器械(医药技术推广)试题及答案
- 2025年高职传感器维修(传感器维修技术)试题及答案
- 2025年大学第四学年(通信原理)信号处理阶段测试题及答案
- 2025年高职工艺美术品设计(工艺品设计技能)试题及答案
- 2025年大学粮食工程(粮食加工技术)试题及答案
- 2025年大学广播电视新闻学(节目策划与制作)试题及答案
- QGDW11970.7-2023输变电工程水土保持技术规程第7部分水土保持设施质量检验及评定
- 2024-2025学年四川省达州市高一上学期1月期末考试语文试题(解析版)
- 2025至2030年中国止鼾器行业市场现状调查及前景战略研判报告
- 人教版信息科技五年级全一册 第26课 寻找最短的路径 课件
- 人民军队性质宗旨教育
- T-CEPPEA 5002-2019 电力建设项目工程总承包管理规范
- 护士长管理培训课件
- 暂缓行政拘留申请书
- 小学班主任经验交流课件
- TSG 21-2015《固定式压力容器安全技术监察规程》
- 2025个人年终工作总结
评论
0/150
提交评论