2025年大數(shù)據(jù)工程師考試試題及答案_第1頁
2025年大數(shù)據(jù)工程師考試試題及答案_第2頁
2025年大數(shù)據(jù)工程師考試試題及答案_第3頁
2025年大數(shù)據(jù)工程師考試試題及答案_第4頁
2025年大數(shù)據(jù)工程師考試試題及答案_第5頁
已閱讀5頁,還剩16頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

2025年大數(shù)據(jù)工程師考試試題及答案一、單項(xiàng)選擇題(每題2分,共30分)1.關(guān)于HDFS的副本放置策略,以下描述錯(cuò)誤的是:A.第一個(gè)副本放置在客戶端所在節(jié)點(diǎn)(若客戶端不在集群內(nèi)則隨機(jī)選擇)B.第二個(gè)副本放置在與第一個(gè)副本不同的機(jī)架C.第三個(gè)副本放置在與第二個(gè)副本相同的機(jī)架但不同節(jié)點(diǎn)D.超過三個(gè)副本時(shí),后續(xù)副本隨機(jī)分布在集群節(jié)點(diǎn)答案:C解析:HDFS默認(rèn)副本策略中,第三個(gè)副本與第一個(gè)副本同機(jī)架不同節(jié)點(diǎn),第二個(gè)副本跨機(jī)架,故C錯(cuò)誤。2.Spark中,若需要將RDD的分區(qū)數(shù)從8調(diào)整為3,且要求最小化網(wǎng)絡(luò)傳輸,應(yīng)使用:A.`repartition(3)`B.`coalesce(3)`C.`partitionBy(3)`D.`groupByKey(3)`答案:B解析:`coalesce`通過合并現(xiàn)有分區(qū)減少分區(qū)數(shù),默認(rèn)不shuffle,適合縮小分區(qū);`repartition`強(qiáng)制shuffle,網(wǎng)絡(luò)開銷大。3.以下不屬于Flink時(shí)間窗口類型的是:A.滾動(dòng)窗口(TumblingWindow)B.滑動(dòng)窗口(SlidingWindow)C.會(huì)話窗口(SessionWindow)D.跳躍窗口(HoppingWindow)答案:D解析:Flink核心窗口類型為滾動(dòng)、滑動(dòng)、會(huì)話,跳躍窗口是滑動(dòng)窗口的特殊形式,通常不單獨(dú)分類。4.HBase中,若某行鍵為`user_1001_order_20240101`,其存儲(chǔ)時(shí)的排序依據(jù)是:A.行鍵的字典序B.行鍵的哈希值C.列族的字母順序D.時(shí)間戳的倒序答案:A解析:HBase按行鍵的字典序排序存儲(chǔ),行鍵是Region劃分和查詢的核心依據(jù)。5.在Kafka中,若設(shè)置`min.insync.replicas=2`,`acks=all`,當(dāng)ISR中只剩1個(gè)副本時(shí),生產(chǎn)者發(fā)送消息會(huì):A.成功寫入并返回ACKB.拋出異常并重試C.等待ISR恢復(fù)后寫入D.降級(jí)為`acks=1`模式答案:B解析:`min.insync.replicas`規(guī)定ISR最小副本數(shù),若當(dāng)前ISR副本數(shù)不足,生產(chǎn)者寫入會(huì)失?。⊕伋鯼NotEnoughReplicasException`)。6.關(guān)于數(shù)據(jù)湖(DataLake)與數(shù)據(jù)倉庫(DataWarehouse)的對(duì)比,正確的是:A.數(shù)據(jù)湖存儲(chǔ)結(jié)構(gòu)化數(shù)據(jù),數(shù)據(jù)倉庫存儲(chǔ)多類型數(shù)據(jù)B.數(shù)據(jù)湖強(qiáng)調(diào)數(shù)據(jù)即服務(wù)(DataasaService),數(shù)據(jù)倉庫強(qiáng)調(diào)事務(wù)處理C.數(shù)據(jù)湖使用模式上推(Schema-on-Write),數(shù)據(jù)倉庫使用模式下推(Schema-on-Read)D.數(shù)據(jù)湖支持實(shí)時(shí)與歷史數(shù)據(jù)混合存儲(chǔ),數(shù)據(jù)倉庫以歷史結(jié)構(gòu)化數(shù)據(jù)為主答案:D解析:數(shù)據(jù)湖存儲(chǔ)多類型(結(jié)構(gòu)化、半結(jié)構(gòu)化、非結(jié)構(gòu)化)數(shù)據(jù),采用模式下推;數(shù)據(jù)倉庫以結(jié)構(gòu)化數(shù)據(jù)為主,支持OLAP分析。7.ClickHouse中,若需對(duì)高頻查詢的時(shí)間字段`event_time`建立索引,應(yīng)選擇:A.二級(jí)索引(SecondaryIndex)B.跳步索引(SkipIndex)C.主鍵索引(PrimaryKey)D.全局索引(GlobalIndex)答案:C解析:ClickHouse通過主鍵(PrimaryKey)實(shí)現(xiàn)數(shù)據(jù)排序和索引,查詢時(shí)通過主鍵范圍快速定位數(shù)據(jù)塊。8.以下不屬于大數(shù)據(jù)治理核心內(nèi)容的是:A.數(shù)據(jù)質(zhì)量管控(DataQualityManagement)B.數(shù)據(jù)血緣分析(DataLineage)C.數(shù)據(jù)脫敏與隱私保護(hù)(DataMasking)D.數(shù)據(jù)計(jì)算資源調(diào)度(ResourceScheduling)答案:D解析:數(shù)據(jù)治理聚焦數(shù)據(jù)本身的管理(質(zhì)量、血緣、隱私等),資源調(diào)度屬于計(jì)算平臺(tái)運(yùn)維范疇。9.某實(shí)時(shí)計(jì)算任務(wù)需處理10萬條/秒的數(shù)據(jù)流,延遲要求<100ms,最適合的框架是:A.SparkStreaming(微批處理,批間隔500ms)B.Flink(事件時(shí)間,水印間隔200ms)C.Storm(純流式,無狀態(tài))D.KafkaStreams(輕量級(jí),依賴Kafka分區(qū))答案:B解析:Flink支持事件時(shí)間處理和低延遲(毫秒級(jí)),適合高并發(fā)、低延遲場景;SparkStreaming微批處理延遲較高,Storm無狀態(tài)難以處理復(fù)雜計(jì)算。10.在Hive中,若表`user_log`的存儲(chǔ)格式為ORC,且需要支持快速分區(qū)裁剪,應(yīng)優(yōu)先對(duì)哪個(gè)字段建立索引?A.時(shí)間字段`log_time`(分區(qū)字段)B.用戶ID`user_id`(高頻查詢條件)C.事件類型`event_type`(低基數(shù)維度)D.日志內(nèi)容`log_content`(文本字段)答案:A解析:Hive的分區(qū)字段天然支持分區(qū)裁剪(PartitionPruning),無需額外索引;非分區(qū)字段索引對(duì)性能提升有限(Hive索引已逐漸被列式存儲(chǔ)和謂詞下推替代)。11.關(guān)于湖倉一體(Lakehouse)架構(gòu),以下描述錯(cuò)誤的是:A.統(tǒng)一元數(shù)據(jù)管理(如ApacheHudi/DeltaLake)B.支持OLTP與OLAP混合負(fù)載C.數(shù)據(jù)存儲(chǔ)層兼容對(duì)象存儲(chǔ)(如S3、OSS)D.提供ACID事務(wù)支持答案:B解析:湖倉一體主要優(yōu)化數(shù)據(jù)分析(OLAP)場景,OLTP通常由關(guān)系型數(shù)據(jù)庫或NoSQL承擔(dān)。12.某大數(shù)據(jù)平臺(tái)需處理地理信息數(shù)據(jù)(如經(jīng)緯度坐標(biāo)),最適合的存儲(chǔ)方案是:A.HBase(行鍵設(shè)計(jì)為`緯度_經(jīng)度`)B.ClickHouse(使用地理哈希(Geohash)編碼)C.Hive(存儲(chǔ)為STRING類型,查詢時(shí)解析)D.Kafka(實(shí)時(shí)消息隊(duì)列,不存儲(chǔ))答案:B解析:ClickHouse支持地理函數(shù)(如`geohashEncode`)和空間索引,適合地理數(shù)據(jù)的高效查詢與聚合。13.以下不屬于Flink狀態(tài)后端(StateBackend)類型的是:A.MemoryStateBackendB.FsStateBackendC.RocksDBStateBackendD.HBaseStateBackend答案:D解析:Flink內(nèi)置狀態(tài)后端為Memory、Fs、RocksDB,HBase需自定義實(shí)現(xiàn)。14.在數(shù)據(jù)清洗過程中,處理“年齡”字段時(shí)發(fā)現(xiàn)值為“-5”和“200”,應(yīng)采用的策略是:A.直接刪除這兩條記錄B.用字段均值替換異常值C.標(biāo)記為缺失值后填充D.根據(jù)業(yè)務(wù)規(guī)則修正(如-5修正為5,200修正為合理年齡)答案:D解析:異常值需結(jié)合業(yè)務(wù)邏輯處理,單純刪除或填充可能丟失關(guān)鍵信息。15.關(guān)于Kafka消費(fèi)者組(ConsumerGroup),以下說法正確的是:A.一個(gè)消費(fèi)者組內(nèi)的消費(fèi)者只能訂閱一個(gè)主題B.消費(fèi)者組的分區(qū)分配策略(如Range、RoundRobin)在運(yùn)行時(shí)可動(dòng)態(tài)調(diào)整C.消費(fèi)者組的offset存儲(chǔ)在ZooKeeper中(Kafka2.8+版本)D.消費(fèi)者組的Rebalance會(huì)導(dǎo)致短暫的消費(fèi)停頓答案:D解析:Rebalance期間消費(fèi)者停止消費(fèi),重新分配分區(qū)后恢復(fù);Kafka0.10+版本offset存儲(chǔ)在__consumer_offsets主題;消費(fèi)者組可訂閱多個(gè)主題。二、填空題(每題2分,共20分)1.Hive的元數(shù)據(jù)默認(rèn)存儲(chǔ)在__________數(shù)據(jù)庫中(填寫數(shù)據(jù)庫名稱)。答案:Derby2.Kafka中,ISR的全稱是__________。答案:In-SyncReplicas(同步副本集合)3.Flink中,用于處理亂序事件時(shí)間數(shù)據(jù)流的核心機(jī)制是__________。答案:水?。╓atermark)4.ClickHouse的表引擎中,支持ACID事務(wù)的是__________。答案:MergeTree(注:實(shí)際為支持事務(wù)的變種如ReplacingMergeTree,但嚴(yán)格ACID需結(jié)合其他方案,此處按常見考點(diǎn)填寫)5.數(shù)據(jù)湖的典型存儲(chǔ)格式包括Parquet、ORC和__________(填寫一種)。答案:DeltaLake(或Hudi、Iceberg)6.SparkRDD的持久化級(jí)別中,`MEMORY_AND_DISK_SER`表示__________。答案:數(shù)據(jù)先存儲(chǔ)在內(nèi)存(序列化),內(nèi)存不足時(shí)溢寫磁盤(序列化)7.HBase的RegionServer負(fù)責(zé)管理多個(gè)__________,每個(gè)該對(duì)象對(duì)應(yīng)表的一個(gè)分區(qū)數(shù)據(jù)。答案:Region8.實(shí)時(shí)數(shù)倉中,用于解決“實(shí)時(shí)”與“歷史”數(shù)據(jù)一致性問題的常見架構(gòu)是__________。答案:Lambda架構(gòu)(或Kappa架構(gòu))9.數(shù)據(jù)質(zhì)量的核心指標(biāo)包括完整性、準(zhǔn)確性、一致性和__________(填寫一種)。答案:及時(shí)性(或唯一性、有效性)10.大數(shù)據(jù)平臺(tái)的資源調(diào)度框架中,YARN的核心組件ResourceManager負(fù)責(zé)__________。答案:全局資源管理與任務(wù)調(diào)度三、簡答題(每題8分,共40分)1.簡述SparkShuffle的優(yōu)化策略(至少4點(diǎn))。答案:(1)調(diào)整Shuffle并行度(`spark.sql.shuffle.partitions`),避免分區(qū)過多或過少導(dǎo)致的網(wǎng)絡(luò)開銷;(2)使用`map-sidecombine`(如`reduceByKey`替代`groupByKey`),減少M(fèi)ap端輸出數(shù)據(jù)量;(3)啟用壓縮(`press=true`),降低網(wǎng)絡(luò)傳輸帶寬消耗;(4)選擇高效的序列化方式(如Kryo序列化替代Java默認(rèn)序列化);(5)調(diào)整Shuffle內(nèi)存占比(`spark.shuffle.memoryFraction`),避免內(nèi)存溢出;(6)使用外部Shuffle服務(wù)(`spark.shuffle.service.enabled`),減少Executor重啟導(dǎo)致的Shuffle數(shù)據(jù)丟失。2.說明Flink水印(Watermark)的作用及提供策略。答案:作用:水印是Flink處理事件時(shí)間(EventTime)數(shù)據(jù)流時(shí)的進(jìn)度標(biāo)識(shí),用于判斷“所有時(shí)間戳小于水印的事件已到達(dá)”,觸發(fā)窗口計(jì)算并清理過時(shí)狀態(tài)。提供策略:(1)周期性水印(PeriodicWatermark):按固定間隔(如200ms)提供,通過`withIdleness(Duration)`處理空閑流;(2)斷點(diǎn)式水?。≒unctuatedWatermark):基于特定事件(如標(biāo)記事件)觸發(fā)水印更新,適用于事件時(shí)間亂序嚴(yán)重的場景;(3)允許延遲(AllowedLateness):設(shè)置最大延遲時(shí)間,水印超過窗口結(jié)束時(shí)間后仍接收延遲數(shù)據(jù),延長窗口生命周期。3.簡述數(shù)據(jù)倉庫維度建模的主要步驟。答案:(1)確定業(yè)務(wù)過程:明確分析的核心業(yè)務(wù)活動(dòng)(如電商的“下單”“支付”);(2)聲明粒度:定義事實(shí)表中一行數(shù)據(jù)代表的具體業(yè)務(wù)細(xì)節(jié)(如“每筆訂單”或“訂單中的每個(gè)商品”);(3)確認(rèn)維度:識(shí)別描述業(yè)務(wù)過程的環(huán)境信息(如時(shí)間、用戶、商品、地區(qū)),構(gòu)建維度表;(4)確認(rèn)事實(shí):選擇業(yè)務(wù)過程的量化指標(biāo)(如訂單金額、商品數(shù)量),設(shè)計(jì)事實(shí)表的度量值;(5)維度表設(shè)計(jì):處理維度的緩慢變化(SCD),如類型1(覆蓋)、類型2(新增版本)、類型3(新增字段);(6)物理建模:優(yōu)化存儲(chǔ)(如分桶、分區(qū))、索引(如主鍵排序),提升查詢性能。4.對(duì)比HBase的自動(dòng)分裂(AutoSplit)與手動(dòng)分裂(ManualSplit)的適用場景。答案:自動(dòng)分裂:-觸發(fā)條件:Region大小超過`hbase.hregion.max.filesize`(默認(rèn)10GB)或Region內(nèi)StoreFile數(shù)量超過閾值;-適用場景:生產(chǎn)環(huán)境中數(shù)據(jù)持續(xù)寫入時(shí)的自動(dòng)負(fù)載均衡,無需人工干預(yù);-缺點(diǎn):分裂時(shí)機(jī)不可控,可能導(dǎo)致短時(shí)間內(nèi)大量Region產(chǎn)生,增加RegionServer管理壓力。手動(dòng)分裂:-觸發(fā)方式:通過`split`命令或API指定Region或行鍵范圍分裂;-適用場景:預(yù)分區(qū)(Pre-split)以避免熱點(diǎn)(如按時(shí)間、哈希預(yù)提供Region)、修復(fù)數(shù)據(jù)傾斜問題;-優(yōu)點(diǎn):可精確控制分裂時(shí)間和位置,優(yōu)化讀寫性能。5.說明實(shí)時(shí)數(shù)倉中Lambda架構(gòu)與Kappa架構(gòu)的核心區(qū)別及Kappa的優(yōu)勢。答案:核心區(qū)別:-Lambda架構(gòu):維護(hù)兩套處理系統(tǒng)(批處理與流處理),批處理提供最終一致性結(jié)果,流處理提供實(shí)時(shí)近似結(jié)果,需合并兩套結(jié)果;-Kappa架構(gòu):僅用流處理系統(tǒng)(如Flink)處理歷史與實(shí)時(shí)數(shù)據(jù),通過重放Kafka主題的歷史數(shù)據(jù)實(shí)現(xiàn)批處理邏輯。Kappa優(yōu)勢:(1)架構(gòu)簡化:減少系統(tǒng)維護(hù)成本(無需同時(shí)維護(hù)批、流兩套系統(tǒng));(2)結(jié)果一致性:避免批、流計(jì)算邏輯差異導(dǎo)致的數(shù)據(jù)不一致;(3)實(shí)時(shí)性提升:流處理直接輸出最終結(jié)果,無需等待批處理完成;(4)資源利用率高:通過Kafka持久化歷史數(shù)據(jù),避免重復(fù)存儲(chǔ)。四、綜合題(每題15分,共30分)1.某電商公司需構(gòu)建用戶行為實(shí)時(shí)分析系統(tǒng),要求監(jiān)控“用戶點(diǎn)擊-加購-下單”轉(zhuǎn)化漏斗,支持分鐘級(jí)延遲的實(shí)時(shí)數(shù)據(jù)展示(如每5分鐘更新一次)。請(qǐng)?jiān)O(shè)計(jì)數(shù)據(jù)鏈路,包括:(1)數(shù)據(jù)源與采集工具;(2)消息隊(duì)列選型及原因;(3)實(shí)時(shí)計(jì)算框架及核心處理邏輯;(4)存儲(chǔ)方案及查詢優(yōu)化;(5)可視化輸出方式。答案:(1)數(shù)據(jù)源與采集:-數(shù)據(jù)源:Web/App端用戶行為日志(點(diǎn)擊、加購、下單事件),格式為JSON(含user_id、event_type、event_time、sku_id等字段);-采集工具:使用Flume(服務(wù)器端日志)或埋點(diǎn)SDK(App端)將數(shù)據(jù)發(fā)送至消息隊(duì)列,F(xiàn)lume通過TaildirSource監(jiān)控日志文件,SDK通過HTTP接口發(fā)送至Kafka。(2)消息隊(duì)列選型:-選擇Kafka,原因:高吞吐量(支持10萬+條/秒)、持久化存儲(chǔ)(保留7天歷史數(shù)據(jù))、分區(qū)機(jī)制支持并行消費(fèi)、與Flink等計(jì)算框架深度集成。(3)實(shí)時(shí)計(jì)算框架及邏輯:-框架:Flink(事件時(shí)間處理、狀態(tài)管理、窗口支持);-處理邏輯:a.數(shù)據(jù)清洗:過濾無效事件(如event_time為空、user_id非數(shù)字),解析JSON字段;b.事件時(shí)間與水?。阂詄vent_time為事件時(shí)間,提供周期性水?。ㄩg隔200ms),允許最大延遲30秒;c.窗口劃分:滑動(dòng)窗口(窗口大小5分鐘,滑動(dòng)步長1分鐘),覆蓋最近5分鐘數(shù)據(jù);d.轉(zhuǎn)化漏斗計(jì)算:使用`KeyedProcessFunction`按user_id分組,維護(hù)狀態(tài)記錄用戶行為序列(點(diǎn)擊→加購→下單),統(tǒng)計(jì)各階段轉(zhuǎn)化率;e.結(jié)果輸出:計(jì)算結(jié)果寫入數(shù)據(jù)庫或緩存。(4)存儲(chǔ)方案及優(yōu)化:-實(shí)時(shí)結(jié)果存儲(chǔ):ClickHouse(支持高并發(fā)查詢、列式存儲(chǔ)適合聚合),表結(jié)構(gòu)包含time_window(窗口時(shí)間)、event_stage(階段)、uv(獨(dú)立用戶數(shù))、conversion_rate(轉(zhuǎn)化率);-優(yōu)化:按time_window分區(qū),以event_stage為二級(jí)排序鍵,建立物化視圖預(yù)計(jì)算常見聚合(如按小時(shí)匯總)。(5)可視化輸出:-工具:Grafana或QuickBI,通過JDBC連接ClickHouse,展示實(shí)時(shí)轉(zhuǎn)化率趨勢圖、各階段TOP10商品等;-刷新策略:前端每30秒拉取最新窗口數(shù)據(jù),保證分鐘級(jí)延遲展示。2.某企業(yè)需處理日均500GB的服務(wù)器日志(格式為CSV,含timestamp、server_id、log_level、error_code、message字段),要求實(shí)現(xiàn):(1)ETL流程設(shè)計(jì)(清洗→轉(zhuǎn)換→聚合);(2)異常日志(error_code≠0)的實(shí)時(shí)報(bào)警;(3)歷史日志的離線分析(如統(tǒng)計(jì)各服務(wù)器每日ERROR級(jí)日志數(shù)量)。請(qǐng)?jiān)O(shè)計(jì)技術(shù)方案,包括工具選型、關(guān)鍵步驟及注意事項(xiàng)。答案:(1)ETL流程設(shè)計(jì):-工具選型:-清洗/轉(zhuǎn)換:Spark(批處理)或Flink(實(shí)時(shí));-存儲(chǔ):HDFS(原始日志)、Hive(結(jié)構(gòu)化日志)、ClickHouse(聚合結(jié)果);-調(diào)度:Airflow(定時(shí)觸發(fā)批處理任務(wù))。-關(guān)鍵步驟:a.數(shù)據(jù)采集:使用Flume將服務(wù)器日志收集至HDFS(存儲(chǔ)路徑按日期分區(qū):`/logs/date=YYYYMMDD`);b.清洗:-過濾:刪除缺失timestamp或server_id的記錄;-格式校驗(yàn):確保log_level為INFO/ERROR/WARN(其他標(biāo)記為invalid);

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論