版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
2025年大數(shù)據(jù)工程師職業(yè)資格考試題及答案一、單項(xiàng)選擇題(每題1分,共20分。每題只有一個(gè)正確答案,請將正確選項(xiàng)的字母填入括號內(nèi))1.在Hadoop生態(tài)中,負(fù)責(zé)資源調(diào)度與任務(wù)監(jiān)控的組件是()A.HDFS??B.YARN??C.MapReduce??D.Hive答案:B2.SparkCore默認(rèn)的存儲級別是()A.MEMORY_ONLY??B.MEMORY_AND_DISK??C.DISK_ONLY??D.OFF_HEAP答案:A3.下列關(guān)于KafkaPartition的描述,錯(cuò)誤的是()A.每個(gè)Partition內(nèi)部消息有序??B.Partition數(shù)量一旦創(chuàng)建不可修改C.同一ConsumerGroup內(nèi)每個(gè)Partition只能被一個(gè)消費(fèi)者實(shí)例消費(fèi)D.Partition是Kafka并行度的基本單位答案:B4.在Flink中,用于描述“事件時(shí)間”與“處理時(shí)間”差異的指標(biāo)是()A.Latency??B.Throughput??C.Watermark??D.Backpressure答案:C5.若Hive表test的分區(qū)字段為dt(string),下列語句可正確添加分區(qū)的是()A.ALTERTABLEtestADDPARTITION(dt=20250601);B.ALTERTABLEtestPARTITION(dt='20250601')ADD;C.MSCKREPAIRTABLEtest;D.INSERTINTOTABLEtestPARTITION(dt='20250601')SELECT…答案:A6.HDFS默認(rèn)Block大小為128MB,若文件大小為1GB,則占用Block數(shù)量為()A.7??B.8??C.9??D.10答案:B7.在SparkSQL中,將DataFrame注冊為臨時(shí)視圖的API是()A.cache()??B.createOrReplaceTempView()??C.persist()??D.registerTable()答案:B8.下列算法中,屬于聚類算法的是()A.Apriori??B.DBSCAN??C.PageRank??D.FPGrowth答案:B9.在HBase中,用于實(shí)現(xiàn)行級事務(wù)的原子性的機(jī)制是()A.WAL??B.MemStore??C.LSMTree??D.RowLock答案:D10.若Redis鍵“uv:20250601”采用HyperLogLog結(jié)構(gòu),其標(biāo)準(zhǔn)誤差約為()A.0.01%??B.0.1%??C.0.81%??D.1.5%答案:C11.在數(shù)據(jù)倉庫建模中,星型模型與雪花模型的主要區(qū)別是()A.是否使用事實(shí)表??B.維度表是否規(guī)范化C.是否支持漸變維度??D.是否使用代理鍵答案:B12.下列關(guān)于數(shù)據(jù)傾斜優(yōu)化的描述,正確的是()A.增加Shuffle分區(qū)數(shù)一定能緩解傾斜??B.兩階段聚合(局部聚合+全局聚合)可用于ReduceByKey場景C.使用mapPartitions替代map可避免傾斜??D.廣播變量只能用于Join場景答案:B13.在Elasticsearch中,默認(rèn)對text字段使用的分析器是()A.keyword??B.standard??C.whitespace??D.simple答案:B14.若Spark作業(yè)出現(xiàn)“Losttask3.0instage5.0”異常,最可能的原因是()A.數(shù)據(jù)傾斜??B.ExecutorOOM??C.DriverOOM??D.序列化錯(cuò)誤答案:B15.在FlinkCEP中,用于定義“緊隨其后發(fā)生”的模式量詞是()A.followedBy??B.next??C.until??D.oneOrMore答案:B16.若Hive表存儲格式為ORC,下列參數(shù)可提升壓縮比的是()A.press=SNAPPY??B.press=ZLIB??C.pression=gzip??D.pression=true答案:B17.在數(shù)據(jù)治理中,用于衡量“數(shù)據(jù)值是否缺失”的指標(biāo)維度是()A.一致性??B.完整性??C.及時(shí)性??D.有效性答案:B18.下列關(guān)于DeltaLake的“TimeTravel”描述,正確的是()A.僅支持查詢最新版本??B.可通過VERSIONASOF語法查詢歷史C.歷史版本默認(rèn)保留7天??D.需要手動開啟VACUUM才能查看歷史答案:B19.在Kafka2.8之后,若使用KRaft模式,可移除的組件是()A.Broker??B.Controller??C.ZooKeeper??D.Producer答案:C20.若使用SparkMLlib訓(xùn)練GBDT模型,下列參數(shù)直接控制樹的最大深度的是()A.maxIter??B.stepSize??C.maxDepth??D.minInstancesPerNode答案:C二、多項(xiàng)選擇題(每題2分,共20分。每題至少有兩個(gè)正確答案,多選、少選、錯(cuò)選均不得分)21.下列屬于Hadoop3.x新特性的有()A.ErasureCoding??B.YARNFederation??C.MapReduceUber模式??D.支持GPU調(diào)度??E.HDFSNFSGateway答案:ABD22.關(guān)于SparkShuffle,下列說法正確的有()A.SortShuffleWriter會產(chǎn)生中間文件??B.BypassMergeShuffleWriter適用于大分區(qū)數(shù)C.Tungsten采用二進(jìn)制序列化??D.ShuffleRead端需要進(jìn)行排序??E.ShuffleWrite量可通過press壓縮答案:ACDE23.在數(shù)據(jù)質(zhì)量監(jiān)控中,屬于“業(yè)務(wù)規(guī)則檢測”范疇的有()A.唯一性校驗(yàn)??B.波動率閾值??C.參照完整性??D.字段長度校驗(yàn)??E.同比環(huán)比異常答案:BE24.下列關(guān)于FlinkCheckpoint的描述,正確的有()A.對齊時(shí)間過大會導(dǎo)致反壓??B.ExactlyOnce需依賴Barrier對齊C.啟用UnalignedCheckpoint可降低延遲??D.外部化Checkpoint可手動刪除??E.狀態(tài)后端僅支持RocksDB答案:ABCD25.在HBaseRowKey設(shè)計(jì)中,為避免熱點(diǎn)可采取的策略有()A.加鹽(Salt)??B.反轉(zhuǎn)時(shí)間戳??C.預(yù)分區(qū)??D.使用遞增序列??E.哈希散列答案:ABCE26.下列屬于時(shí)序數(shù)據(jù)庫的有()A.InfluxDB??B.Prometheus??C.OpenTSDB??D.ClickHouse??E.Druid答案:ABC27.關(guān)于數(shù)據(jù)湖與數(shù)據(jù)倉庫的差異,下列說法正確的有()A.數(shù)據(jù)湖支持SchemaonRead??B.數(shù)據(jù)倉庫通常采用星型模型C.數(shù)據(jù)湖主要存儲原始數(shù)據(jù)??D.數(shù)據(jù)倉庫不支持半結(jié)構(gòu)化數(shù)據(jù)??E.數(shù)據(jù)湖不支持事務(wù)答案:ABC28.在SparkStreaming中,可導(dǎo)致批次延遲增加的因素有()A.批次間隔過短??B.數(shù)據(jù)量突增??C.并行度不足??D.啟用反壓機(jī)制??E.使用mapWithState算子答案:ABCE29.下列屬于數(shù)據(jù)脫敏常用算法的有()A.MD5??B.AES??C.Tokenization??D.KAnonymity??E.數(shù)據(jù)偽造答案:BCDE30.在機(jī)器學(xué)習(xí)模型上線流程中,屬于“模型監(jiān)控”指標(biāo)的有()A.PSI??B.AUC??C.延遲P99??D.特征缺失率??E.QPS答案:ACD三、填空題(每空1分,共20分)31.HDFS的NameNode內(nèi)存中保存的核心數(shù)據(jù)結(jié)構(gòu)是【FSImage】與【EditLog】。32.Spark中,每個(gè)RDD包含5大屬性,其中描述“如何分區(qū)”的屬性是【partitioner】。33.Kafka消息體的最大默認(rèn)大小為【1】MB,可通過參數(shù)【message.max.bytes】調(diào)整。34.Flink使用【RocksDBStateBackend】作為支持增量Checkpoint的狀態(tài)后端。35.Hive中,函數(shù)regexp_extract屬于【UDF】類型函數(shù)。36.ClickHouse的MergeTree表引擎中,用于定義“數(shù)據(jù)按時(shí)間分區(qū)”的關(guān)鍵字是【PARTITIONBY】。37.在Pythonpandas中,將DataFramedf的列col類型轉(zhuǎn)換為category的代碼為【df['col']=df['col'].astype('category')】。38.Elasticsearch集群中,負(fù)責(zé)路由分片到節(jié)點(diǎn)的角色是【Master】。39.HBase中,用于查看表region分布的Shell命令是【describe'tableName'】。40.若Redis鍵“order:cnt”采用String類型,自增1并返回結(jié)果的命令是【INCRorder:cnt】。41.數(shù)據(jù)治理元數(shù)據(jù)的三層模型包括【業(yè)務(wù)元數(shù)據(jù)】、【技術(shù)元數(shù)據(jù)】與【操作元數(shù)據(jù)】。42.SparkSQL的Catalyst優(yōu)化器中,用于將邏輯計(jì)劃轉(zhuǎn)換為物理計(jì)劃的策略集合稱為【Strategies】。43.在FlinkSQL中,聲明一個(gè)處理時(shí)間屬性字段的語法是【procASPROCTIME()】。44.GBDT模型中,用于防止過擬合的參數(shù)【subsample】表示每次建樹使用的樣本比例。45.DeltaLake中,將Parquet表原地轉(zhuǎn)換為Delta表的SQL命令為【CONVERTTODELTAparquet.`path`】。46.Hadoop3.x引入的【YARNTimelineServicev.2】用于提供更高效的資源歷史查詢。47.若使用Airflow,任務(wù)實(shí)例狀態(tài)為【up_for_retry】表示任務(wù)失敗且滿足重試條件。48.在PromQL中,計(jì)算過去5分鐘HTTP請求增長率的表達(dá)式為【rate(http_requests_total[5m])】。49.HiveonTez執(zhí)行引擎中,可通過設(shè)置【tez.grouping.maxsize】控制Map任務(wù)最大輸入數(shù)據(jù)量。50.數(shù)據(jù)血緣的主動采集方式通常采用【Hook】或【Agent】嵌入任務(wù)運(yùn)行時(shí)。四、簡答題(共30分)51.(封閉型,6分)簡述MapReduce中“Shuffle”階段的具體流程,并指出可優(yōu)化的兩個(gè)關(guān)鍵點(diǎn)。答案:(1)Map端:每個(gè)Map任務(wù)將輸出結(jié)果寫入環(huán)形內(nèi)存緩沖區(qū),當(dāng)閾值達(dá)到80%觸發(fā)Spill,Spill線程將數(shù)據(jù)按Partition排序并寫入本地磁盤,形成多個(gè)溢寫文件,最終合并為一個(gè)分區(qū)且有序的大文件。(2)Reduce端:通過HTTP拉取各自分區(qū)的數(shù)據(jù),進(jìn)行歸并排序,生成key相同的數(shù)據(jù)列表供reduce()函數(shù)處理。優(yōu)化點(diǎn):①調(diào)整io.sort.factor增加合并流數(shù)量,減少磁盤IO;②啟用Combiner減少網(wǎng)絡(luò)傳輸量;③合理設(shè)置pletedmaps,提前啟動Reduce拉取,隱藏網(wǎng)絡(luò)延遲。(答出任意兩點(diǎn)即可)52.(開放型,8分)某電商公司每日新增訂單數(shù)據(jù)量約2TB,原始數(shù)據(jù)為JSON格式,需支持離線數(shù)倉與實(shí)時(shí)Adhoc查詢。請給出技術(shù)選型和分層架構(gòu)說明,并闡述理由。答案:(1)采集層:使用Flume采集日志到Kafka,保留3天;Kafka分區(qū)數(shù)=節(jié)點(diǎn)數(shù)2,保證并行度。(2)存儲層:Kafka數(shù)據(jù)通過SparkStreaming寫入HDFS(Parquet+Snappy),同時(shí)通過FlinkCDC同步MySQLbinlog到Kafka,實(shí)現(xiàn)實(shí)時(shí)維度更新。(3)離線數(shù)倉:HDFS→SparkSQL進(jìn)行ETL,按ODS→DWD→DWS→ADS分層,DWD采用星型模型,DWS采用寬表+輕度匯總,ADS采用ClickHouse提供毫秒級查詢。(4)實(shí)時(shí)數(shù)倉:Kafka→FlinkSQL→Kafka,再入ClickHouse,使用ReplacingMergeTree去重,通過物化視圖預(yù)聚合UV、GMV。(5)選型理由:Parquet列存+Snappy壓縮比高,ClickHouse向量化執(zhí)行滿足Adhoc;Flink低延遲、ExactlyOnce;Spark批處理生態(tài)成熟;Kafka解耦生產(chǎn)與消費(fèi)。(6)治理:使用ApacheAtlas做元數(shù)據(jù)與血緣,GreatExpectations做數(shù)據(jù)質(zhì)量,Airflow調(diào)度離線任務(wù),F(xiàn)link自動拉起實(shí)時(shí)任務(wù)。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操作需全局排序,導(dǎo)致大量Shuffle;若category傾斜,會出現(xiàn)單Partition數(shù)據(jù)過大,ExecutorOOM。優(yōu)化:兩階段聚合,先局部TopN,再全局TopN;或采用mapPartitions自定義排序。54.(開放型,10分)某視頻平臺推薦系統(tǒng)上線新模型后,離線AUC提升2%,但線上CTR下降5%。請給出排查思路與驗(yàn)證方案。答案:(1)數(shù)據(jù)一致性:對比離線特征與線上特征,使用特征diff工具,發(fā)現(xiàn)“用戶歷史播放時(shí)長”字段線上缺失率30%,原因?yàn)镵afka字段變更未同步。(2)特征分布:計(jì)算PSI,發(fā)現(xiàn)“視頻標(biāo)簽”PSI=0.25>0.2,分布漂移,原因?yàn)樾律蟼饕曨l標(biāo)簽體系升級。(3)模型校準(zhǔn):繪制可靠性曲線,發(fā)現(xiàn)模型對高預(yù)估樣本過自信,采用PlattScaling校準(zhǔn)概率。(4)實(shí)驗(yàn)設(shè)計(jì):采用AB實(shí)驗(yàn),分層分流,實(shí)驗(yàn)桶與對照桶用戶正交,運(yùn)行7天,樣本量≥1M,置信度95%,最小可檢測效應(yīng)1%。(5)業(yè)務(wù)指標(biāo):除CTR外,觀察完播率、點(diǎn)贊率、負(fù)反饋率,發(fā)現(xiàn)實(shí)驗(yàn)桶完播率下降3%,負(fù)反饋率上升2%,確認(rèn)模型雖精準(zhǔn)但推薦內(nèi)容不符合用戶興趣。(6)迭代方案:引入多樣性重排,使用MMR降低相似內(nèi)容比例,重新訓(xùn)練并灰度,最終CTR回升4.2%,完播率提升1.5%。五、應(yīng)用題(共60分)55.(計(jì)算類,15分)某電商促銷期間,訂單表order_info(order_id,user_id,sku_id,price,ctime)共50億行,存儲于HDFS(Parquet,Snappy,總大小1.2TB)?,F(xiàn)需計(jì)算“每小時(shí)累計(jì)獨(dú)立支付用戶數(shù)”,要求輸出(hour,uv)結(jié)果。(1)給出SparkSQL實(shí)現(xiàn),并估算資源。(2)若發(fā)現(xiàn)任務(wù)耗時(shí)3小時(shí),指出優(yōu)化方案并給出預(yù)計(jì)耗時(shí)。答案:(1)SQL:SELECTfrom_unixtime(unix_timestamp(ctime),'yyyyMMddHH')hour,approx_count_distinct(user_id)uvFROMorder_infoGROUPBYhour;資源估算:輸入1.2TB,Snappy壓縮比約3:1,實(shí)際掃描約400GB;approx_count_distinct誤差0.5%,需內(nèi)存約2GB/任務(wù);設(shè)置executorcores=4,executormemory=8GB,動態(tài)分區(qū)并行度=2000,總Executor數(shù)=500,總內(nèi)存4TB,耗時(shí)3小時(shí)。(2)優(yōu)化:①過濾下推,增加WHEREctime>='2025060100:00:00',減少30%數(shù)據(jù);②采用BloomFilter去重,先按小時(shí)分區(qū),再mapside聚合,減少Shuffle70%;③啟用AQE,自動拆分傾斜分區(qū);④將approx_count_distinct改為bitmap精確去重,使用RoaringBitmap,內(nèi)存增加但CPU降低;⑤增加Executor到1000,并行度4000;預(yù)計(jì)耗時(shí)降至25分鐘。56.(分析類,15分)給定用戶行為表user_action(user_id,action,ts),需使用FlinkCEP檢測“連續(xù)三次點(diǎn)擊同一商品后無購買”的用戶,輸出告警。(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模式,設(shè)置checkpoint間隔30s,超時(shí)10min,最大并發(fā)1,啟用UnalignedCheckpoint,狀態(tài)后端RocksDB,增量Checkpoint開啟;Kafka:Producer設(shè)置transactional.id,開啟冪等與事務(wù),Sink使用FlinkKafkaProducer的Semantic.EXACTLY_ONCE,并設(shè)置enable.idempotence=true,acks=all,retries=Integer.MAX_VALUE。57.(綜合類,30分)某市政府構(gòu)建“城市大腦”實(shí)時(shí)交通項(xiàng)目,數(shù)據(jù)源包括:①卡口攝像頭:每秒10萬條車輛通行記錄(車牌、卡口、時(shí)間、車速);②GPS浮動車:2萬輛出租車,每30秒上報(bào)(車牌、經(jīng)緯度、速度、方向);③信控信號:3000路口,每秒變燈相位數(shù)據(jù)(路口、方向、燈色、剩余秒)。要求:a)實(shí)時(shí)計(jì)算任意路口最近5分鐘車流量、平均車速、擁堵指數(shù);b)提供最近30天歷史查詢,支持秒級聚合與可視化;c)預(yù)測未來15分鐘路口擁堵指數(shù),誤差<15%。請給出完整技術(shù)架構(gòu)、分層模型、關(guān)鍵表結(jié)構(gòu)、實(shí)時(shí)計(jì)算邏輯、離線模型訓(xùn)練流程、資源評估與成本估算。答案:(1)架構(gòu):采集層:卡口數(shù)據(jù)通過MQTT→Kafka(topic=traffic.camera),GPS通過Netty→Kafka(topic=traffic.gps),信控通過HTTP→Kafka(topic=traffic.signal);實(shí)時(shí)層:FlinkSQL→Kafka→ClickHouse,分層:DWD(原始)→DWS(分鐘級聚合)→ADS(秒級匯總);離線層:HDFS(Parquet)→SparkSQL→特征工程→TensorFlow訓(xùn)練Prophet+XGBoost融合模型,結(jié)果寫回MySQL;服務(wù)層:SpringBoot+Redis緩存+Grafana可視化;治理:Atlas元數(shù)據(jù),DataHub血緣,Prometheus+Alertmanager監(jiān)控。(2)關(guān)鍵表: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. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 中學(xué)宿舍管理制度
- 臨時(shí)麻醉管理制度
- 2026年高級IT項(xiàng)目管理專業(yè)試題庫及答案
- 2026年音樂創(chuàng)作與音樂理論專業(yè)題庫
- 輸尿管支架管拔除同意書
- 廣東省肇慶市高要區(qū)2025-2026學(xué)年九年級上學(xué)期1月期末化學(xué)試題(含答案)
- 2025年陜西省初中學(xué)業(yè)水平考試物理試卷(副題)(含答案)
- 2025年濰坊食品科技職業(yè)學(xué)院馬克思主義基本原理概論期末考試模擬題帶答案解析(必刷)
- 2024年綏江縣幼兒園教師招教考試備考題庫附答案解析
- 2025年連云港職業(yè)技術(shù)學(xué)院單招職業(yè)適應(yīng)性測試題庫附答案解析
- 2025海洋水下機(jī)器人控制系統(tǒng)行業(yè)市場需求及發(fā)展趨勢分析投資評估規(guī)劃報(bào)告
- 物流金融管理培訓(xùn)課件
- 教學(xué)管理系統(tǒng)項(xiàng)目開發(fā)計(jì)劃大全五
- 微專題:突破語病題+2026屆高考語文二輪復(fù)習(xí)
- 電梯線路知識培訓(xùn)內(nèi)容課件
- 2025轉(zhuǎn)讓股權(quán)合同 轉(zhuǎn)讓股權(quán)合同范本
- 羽毛球裁判二級考試題庫及答案
- 醫(yī)院安全教育與培訓(xùn)課件
- 鋰離子電池用再生黑粉編制說明
- (正式版)DB61∕T 5033-2022 《居住建筑節(jié)能設(shè)計(jì)標(biāo)準(zhǔn)》
- 公路工程質(zhì)量風(fēng)險(xiǎn)識別及控制措施
評論
0/150
提交評論