版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
2025年大數(shù)據(jù)工程師資格考試試題及答案一、單項(xiàng)選擇題(每題1分,共20分)1.在HDFS中,NameNode的主要職責(zé)是A.存儲(chǔ)實(shí)際數(shù)據(jù)塊B.管理文件系統(tǒng)元數(shù)據(jù)C.執(zhí)行Map任務(wù)D.執(zhí)行Reduce任務(wù)答案:B2.下列哪項(xiàng)不是Kafka的核心組件A.ProducerB.ConsumerC.BrokerD.JobTracker答案:D3.Spark中RDD的默認(rèn)分區(qū)數(shù)由哪個(gè)參數(shù)決定A.spark.default.parallelismB.spark.executor.coresC.spark.task.cpusD.spark.shuffle.partitions答案:A4.在Flink的Checkpoint機(jī)制中,Barrier的作用是A.觸發(fā)窗口計(jì)算B.隔離不同算子的狀態(tài)C.對(duì)齊分布式快照D.控制數(shù)據(jù)流速答案:C5.使用Hive進(jìn)行查詢時(shí),以下哪種文件格式支持謂詞下推A.TextFileB.SequenceFileC.ORCD.JSON答案:C6.在HBase中,用于定位Region的元數(shù)據(jù)表名稱是A..meta.B.ROOTC.hbase:metaD.zookeeper答案:C7.下列關(guān)于數(shù)據(jù)傾斜的描述,正確的是A.只會(huì)發(fā)生在Reduce階段B.無法通過加鹽解決C.可能導(dǎo)致個(gè)別Task執(zhí)行時(shí)間過長(zhǎng)D.對(duì)SparkSQL無影響答案:C8.在Scala中,下列哪個(gè)操作會(huì)觸發(fā)SparkJobA.mapB.filterC.reduceD.persist答案:C9.使用Sqoop將MySQL數(shù)據(jù)導(dǎo)入Hive時(shí),若目標(biāo)表已存在且需追加數(shù)據(jù),應(yīng)添加參數(shù)A.createhivetableB.hiveoverwriteC.appendD.deletetargetdir答案:C10.在數(shù)據(jù)倉(cāng)庫(kù)分層架構(gòu)中,DWD層的主要作用是A.保存原始日志B.保存明細(xì)事實(shí)C.保存匯總指標(biāo)D.保存維度數(shù)據(jù)答案:B11.下列算法中,屬于聚類算法的是A.AprioriB.DBSCANC.C4.5D.Adaboost答案:B12.在Elasticsearch中,用于實(shí)現(xiàn)精確匹配的查詢類型是A.matchB.termC.rangeD.wildcard答案:B13.使用Pythonpandas讀取10GBCSV文件時(shí),最節(jié)省內(nèi)存的做法是A.直接調(diào)用read_csvB.指定dtype與usecolsC.先采樣再讀取D.使用pickle格式答案:B14.在Kafka中,保證全局順序的最優(yōu)策略是A.增加分區(qū)數(shù)B.單分區(qū)+單消費(fèi)者組C.提高replication因子D.啟用壓縮答案:B15.下列關(guān)于數(shù)據(jù)血緣的描述,錯(cuò)誤的是A.可用于影響分析B.需要手動(dòng)維護(hù)ExcelC.支持字段級(jí)追溯D.可集成Atlas答案:B16.在SparkMLlib中,特征標(biāo)準(zhǔn)化常用類是A.StandardScalerB.SQLTransformerC.BucketizerD.ChiSqSelector答案:A17.使用FlinkCEP檢測(cè)連續(xù)3次登錄失敗,模式量詞應(yīng)寫為A.oneOrMoreB.times(3)C.timesOrMore(3)D.followedBy答案:B18.在Hadoop3中,YARN資源調(diào)度器默認(rèn)實(shí)現(xiàn)是A.FIFOB.FairSchedulerC.CapacitySchedulerD.DominantResource答案:C19.下列關(guān)于數(shù)據(jù)湖的說法,正確的是A.僅支持結(jié)構(gòu)化數(shù)據(jù)B.schemaonreadC.必須基于HDFSD.不支持ACID答案:B20.在ClickHouse中,最適合做去重計(jì)算的函數(shù)是A.uniqB.countC.sumD.topK答案:A二、多項(xiàng)選擇題(每題2分,共20分,多選少選均不得分)21.以下哪些屬于Hive的復(fù)雜數(shù)據(jù)類型A.ARRAYB.MAPC.STRUCTD.UNION答案:ABC22.造成SparkShuffle文件溢寫磁盤的原因包括A.map端聚合內(nèi)存不足B.reduce端內(nèi)存不足C.分區(qū)數(shù)過多D.開啟動(dòng)態(tài)資源分配答案:AB23.關(guān)于Flink的StateBackend,正確的有A.MemoryStateBackend速度快但易失B.FsStateBackend將狀態(tài)寫到文件系統(tǒng)C.RocksDBStateBackend支持增量CheckpointD.所有StateBackend都支持異步快照答案:ABC24.以下哪些操作會(huì)觸發(fā)HDFS的元數(shù)據(jù)修改A.renameB.chmodC.appendD.getFileBlockLocations答案:ABC25.在Kafka中,ConsumerRebalance發(fā)生的時(shí)機(jī)有A.消費(fèi)者加入組B.消費(fèi)者離開組C.分區(qū)數(shù)增加D.消息格式升級(jí)答案:ABC26.使用pandas進(jìn)行數(shù)據(jù)清洗時(shí),處理缺失值的方法包括A.dropnaB.fillnaC.interpolateD.merge答案:ABC27.以下屬于Hadoop3新特性的有A.ErasureCodingB.YARN聯(lián)邦C.MapReduce自動(dòng)調(diào)優(yōu)D.支持GPU資源調(diào)度答案:ABD28.在數(shù)據(jù)倉(cāng)庫(kù)緩慢變化維(SCD)處理中,類型2的做法包括A.新增行記錄歷史B.增加生效時(shí)間戳C.覆蓋原值D.增加版本號(hào)答案:ABD29.以下哪些指標(biāo)可用于評(píng)估分類模型A.AUCB.F1scoreC.MAED.LogLoss答案:ABD30.使用Airflow進(jìn)行任務(wù)調(diào)度時(shí),可實(shí)現(xiàn)的依賴策略有A.時(shí)間依賴B.外部任務(wù)傳感器C.文件存在傳感器D.郵件依賴答案:ABC三、填空題(每空1分,共20分)31.在Spark中,每個(gè)RDD包含5大屬性,其中描述計(jì)算邏輯的屬性是________。答案:dependencies32.HDFS默認(rèn)塊大小為128MB,若文件大小為1GB,則理論最少需要________個(gè)塊。答案:833.Kafka消息保留策略由參數(shù)log.retention.hours和________共同決定。答案:log.retention.bytes34.Flink窗口函數(shù)中,增量聚合函數(shù)需實(shí)現(xiàn)AggregateFunction接口,其accumulate方法第一個(gè)參數(shù)類型為________。答案:Accumulator35.Hive中,將字符串轉(zhuǎn)換為時(shí)間戳的函數(shù)是________。答案:unix_timestamp36.在ClickHouse里,MergeTree引擎排序鍵通過________子句指定。答案:ORDERBY37.Elasticsearch集群健康狀態(tài)為yellow,表示________分片未分配。答案:副本38.使用Sqoop導(dǎo)出Hive表到MySQL時(shí),需指定________參數(shù)指明導(dǎo)出目錄。答案:exportdir39.pandas的Categorical類型可顯著降低內(nèi)存,其底層使用________編碼。答案:整數(shù)40.Hadoop3的ErasureCoding策略RS631024k中,數(shù)據(jù)塊與校驗(yàn)塊比例是________。答案:6:341.SparkSQL中,創(chuàng)建全局臨時(shí)視圖應(yīng)調(diào)用createGlobalTempView并加上數(shù)據(jù)庫(kù)名________。答案:global_temp42.HBase行鍵設(shè)計(jì)應(yīng)避免________熱點(diǎn),常用方式如加鹽或反轉(zhuǎn)。答案:Region43.Airflow的DAG文件默認(rèn)需要放在目錄________下。答案:dags44.在FlinkSQL里,聲明事件時(shí)間屬性需使用________語句。答案:WATERMARK45.數(shù)據(jù)倉(cāng)庫(kù)事實(shí)表分為事務(wù)型、周期快照型和________快照型。答案:累積46.使用Python連接Kafka生產(chǎn)消息,需導(dǎo)入的核心類是________。答案:KafkaProducer47.SparkMLlib中,交叉驗(yàn)證類CrossValidator的評(píng)估指標(biāo)通過________設(shè)置。答案:evaluator48.在Linux中,查看HDFS目錄大小的命令是hdfsdfsdu________。答案:h49.ORC文件格式支持三種壓縮算法:NONE、ZLIB和________。答案:SNAPPY50.數(shù)據(jù)治理元數(shù)據(jù)標(biāo)準(zhǔn)ISO11179中,元數(shù)據(jù)注冊(cè)表的核心對(duì)象是________。答案:DataElement四、判斷題(每題1分,共10分,正確寫“T”,錯(cuò)誤寫“F”)51.Spark的transform操作是惰性執(zhí)行的。答案:T52.Kafka的每個(gè)分區(qū)只能被一個(gè)消費(fèi)者組內(nèi)的一個(gè)消費(fèi)者消費(fèi)。答案:T53.HBase中列族數(shù)量越多,性能越好。答案:F54.Flink的Checkpoint屏障一定會(huì)導(dǎo)致數(shù)據(jù)延遲。答案:F55.HiveonTez模式下,SQL仍可回退到MapReduce引擎。答案:T56.Elasticsearch分片數(shù)一旦創(chuàng)建不可修改。答案:T57.pandas的apply方法比矢量化操作更快。答案:F58.Hadoop的NameNodeHA通過QJM共享編輯日志。答案:T59.ClickHouse支持高并發(fā)事務(wù)更新。答案:F60.數(shù)據(jù)湖與數(shù)據(jù)倉(cāng)庫(kù)無法在同一企業(yè)共存。答案:F五、簡(jiǎn)答題(共30分)61.簡(jiǎn)述MapReduce中Shuffle階段的具體流程,并指出數(shù)據(jù)傾斜的常見優(yōu)化手段。(6分)答案:Shuffle階段包括Map端溢寫、分區(qū)、排序、合并、歸并,以及Reduce端拷貝、歸并排序。優(yōu)化手段:1.自定義分區(qū)函數(shù),打散熱點(diǎn)key;2.增加reduce任務(wù)數(shù),降低單任務(wù)負(fù)載;3.對(duì)key加鹽,局部聚合后再去鹽;4.啟用combiner減少網(wǎng)絡(luò)傳輸;5.使用MapJoin將小表廣播到內(nèi)存,避免reduce。62.說明Flink的ExactlyOnce語義實(shí)現(xiàn)原理,并對(duì)比至少兩種端到端一致性方案。(6分)答案:原理:基于分布式快照(Checkpoint)+Barrier對(duì)齊+狀態(tài)回滾;Source需可重放,Sink需支持冪等或兩階段提交。方案對(duì)比:1.冪等Sink:依賴主鍵去重,實(shí)現(xiàn)簡(jiǎn)單,但需業(yè)務(wù)支持;2.兩階段提交:預(yù)提交+正式提交,通用性強(qiáng),需外部事務(wù)支持,延遲略高;3.WAL日志:先寫日志再寫業(yè)務(wù)庫(kù),保證可恢復(fù),但增加IO。63.列舉HiveSQL常見的四種Join操作,并說明何時(shí)會(huì)觸發(fā)MapJoin。(6分)答案:Join類型:CommonJoin、MapJoin、SortMergeBucketJoin、SkewJoin。觸發(fā)MapJoin條件:1.小表大小小于參數(shù)hive.mapjoin.smalltable.filesize(默認(rèn)25MB);2.手動(dòng)提示/+MAPJOIN(table)/;3.自動(dòng)優(yōu)化開關(guān)hive.auto.convert.join=true;4.小表可被加載到內(nèi)存。64.描述數(shù)據(jù)倉(cāng)庫(kù)分層架構(gòu)(ODS→DWD→DWS→ADS)中各層職責(zé),并給出每層表命名規(guī)范示例。(6分)答案:ODS:原始數(shù)據(jù),不做清洗,表名ods_業(yè)務(wù)_表名,如ods_order_info;DWD:明細(xì)事實(shí),統(tǒng)一格式,表名dwd_主題_描述,如dwd_trade_order_detail;DWS:公共匯總,日/周/月粒度,表名dws_主題_周期_匯總,如dws_trade_daily_summary;ADS:應(yīng)用層指標(biāo),面向需求,表名ads_場(chǎng)景_指標(biāo),如ads_dashboard_gmv_daily。65.說明SparkStreaming與StructuredStreaming在編程模型、容錯(cuò)機(jī)制、語義保證三方面的差異。(6分)答案:編程模型:前者基于DStream的RDDAPI,后者基于DataFrame/Dataset的SQL風(fēng)格;容錯(cuò):前者依賴WAL+Checkpoint,后者依賴Checkpoint+Offset管理;語義:前者最多一次或至少一次,后者支持ExactlyOnce通過Sink冪等或兩階段提交。六、應(yīng)用題(共50分)66.綜合計(jì)算題(12分)某電商公司每天產(chǎn)生100億條訂單日志,單條日志約0.5KB,存儲(chǔ)周期30天,采用HDFS三副本+ErasureCoding策略RS631024k,壓縮比1:4,計(jì)算所需裸容量并給出存儲(chǔ)規(guī)劃。答案:原始數(shù)據(jù)量=100×10^8×0.5KB=50TB/天;30天總量=50×30=1500TB;壓縮后=1500/4=375TB;三副本容量=375×3=1125TB;RS63冗余率=1.5,EC容量=375×1.5=562.5TB;節(jié)省比例=(1125562.5)/1125=50%;規(guī)劃:熱數(shù)據(jù)7天用三副本保證實(shí)時(shí),冷數(shù)據(jù)23天用EC,節(jié)點(diǎn)采用12×8TBSATA,每節(jié)點(diǎn)可用容量≈80TB,需節(jié)點(diǎn)ceil(562.5/80)=8臺(tái),考慮20%余量,最終10臺(tái)。67.SQL分析與調(diào)優(yōu)(12分)給定訂單表order(oid,uid,amount,dt)30億行,分區(qū)字段dt,用戶維表user(uid,level)5000萬行。業(yè)務(wù)SQL:selectu.level,sum(amount)fromorderojoinuseruono.uid=u.uidwheredtbetween'20250601'and'20250607'groupbyu.level;執(zhí)行耗時(shí)2小時(shí),數(shù)據(jù)傾斜,某level=‘A’占60%。請(qǐng)給出完整調(diào)優(yōu)步驟與改寫后SQL。答案:步驟:1.過濾下推:先對(duì)order做分區(qū)裁剪,減少至7個(gè)分區(qū);2.對(duì)user表廣播,設(shè)置hive.auto.convert.join=true,閾值調(diào)為1GB;3.對(duì)傾斜key加鹽:改寫SQL:selectlevel,sum(amount)from(select/+MAPJOIN(u)/casewheno.uid_level='A'thenconcat('A_',floor(rand()10))elseo.uid_levelendaslevel,amountfrom(selectuid,amount,casewhenuidin(selectuidfromuserwherelevel='A')then'A'elselevelendasuid_levelfromorderwheredtbetween'20250601'and'20250607')ojoinuseruono.uid_level=u.level)tmpgroupbylevel;4.兩階段聚合:先局部groupbylevel,鹽,再全局groupbylevel;5.調(diào)整reduce數(shù)=1000,避免長(zhǎng)尾;6.開啟壓縮,ORC+SNAPPY;7.統(tǒng)計(jì)信息analyze表;實(shí)測(cè)耗時(shí)降至8分鐘。68.實(shí)時(shí)風(fēng)控系統(tǒng)設(shè)計(jì)(13分)需求:每秒10萬訂單,30秒內(nèi)同一IP若連續(xù)3次不同UID下單,則觸發(fā)風(fēng)控。要求:1.畫出基于Flink的架構(gòu)圖(文字描述);2.給出核心CEP代碼片段;3.說明如何保證ExactlyOnce端到端。答案:架構(gòu):OrderApp→Kafka(Topic:order,100partition)→FlinkSource→KeyByIP→CEPPattern→SinkKafka(alert)→風(fēng)控服務(wù)。CEP代碼:Pattern<Order>pattern=Pattern.<Order>begin("first").where(r>true).next("second").where(newIterativeCondition<Order>(){publicbooleanfilter(Orderr,Context<Order>ctx){return!r.getUid().equals(ctx.getEventsForPattern("first").iterator().next().getUid());}}).next("third").where(newIterativeCondition<Order>(){publicbooleanfilter(Orderr,Context<Order>ctx){return!r.getUid().equals(ctx.getEventsForPattern("second").iterator().next().getUid());}}).within(Time.seconds(30));DataStream<Alert>alert=CEP.pattern(orderStream,keySelector,pattern).process(newPatternProcessFunction<Order,Alert>(){...});ExactlyOnce:Source端Kafka啟用Checkpoint,commitOffset方式設(shè)為Checkpoint;Sink端Kafka采用TwoPhaseCommitSinkFunction,預(yù)提交到事務(wù),Checkpoint成功再正式提交;Checkpoint間隔5秒,超時(shí)1分鐘,開啟RocksDB增量快照,外部Kafka事務(wù)超時(shí)>Checkpoint最大超時(shí)。69.機(jī)器學(xué)習(xí)建模與評(píng)估(13分)給定樣本5000萬行,特征100維,二分類,正負(fù)比例1:99,采用SparkMLlib。任務(wù):1.給出處理樣本不平衡的兩種方案及代碼;2.選擇評(píng)估指標(biāo)并解釋原因;3.畫出ROC曲線計(jì)算流程(文字描述)。答案:方案:A.欠采樣:負(fù)采樣到100萬,保持正樣本50萬,代碼:valnegative=df.filter("label==0").sample(0.02)valpositive=df.filter("label==1")valbalanced=negative.union(positive)B.加權(quán):valratio=df.groupBy("label").count.collect.map(r=>r.getLong(0)>r.getLong(1)).toMapvaltotal=ratio.values.sumvalweighted=df.withColumn("weight",when(col("label")===1,total/(2ratio(1))).otherwise(total/(2ratio(0))))訓(xùn)練時(shí)setWeightCol("weight")評(píng)估指標(biāo):采用AUCPR,因正負(fù)極度不平衡,PR曲線更敏感;同時(shí)報(bào)告F1@threshold通過PR曲線最優(yōu)閾值。ROC流程:1.預(yù)測(cè)概率降序排序;2.遍歷閾值,計(jì)算TPR=TP/P,F(xiàn)PR=FP/N;3.收集點(diǎn)(TPR,FPR);4.梯形面積累加得AUC;5.調(diào)用BinaryClas
溫馨提示
- 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. 人人文庫(kù)網(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)優(yōu)考核試卷含答案
- 鉭鈮加工材制取工崗前變更管理考核試卷含答案
- 松香浸提工崗前評(píng)審考核試卷含答案
- 土石方挖掘機(jī)司機(jī)班組考核競(jìng)賽考核試卷含答案
- 貨運(yùn)調(diào)度員操作安全測(cè)試考核試卷含答案
- 煤提質(zhì)工崗前工藝規(guī)程考核試卷含答案
- 汽車美容裝潢工班組安全知識(shí)考核試卷含答案
- 玻纖織布帶工誠(chéng)信模擬考核試卷含答案
- 電工合金金屬粉末處理工崗前進(jìn)階考核試卷含答案
- 平板顯示膜涂布工班組評(píng)比競(jìng)賽考核試卷含答案
- 裝配式建筑可行性研究報(bào)告
- 跨境電子商務(wù)教案
- 新人教部編版一年級(jí)下冊(cè)生字表全冊(cè)描紅字帖可打印
- 中國(guó)的“愛經(jīng)”(一)-《天地陰陽交⊥歡大樂賦》
- 中學(xué)保安工作管理制度
- 廣元市利州區(qū)何家坪石材廠飾面用灰?guī)r礦礦山地質(zhì)環(huán)境保護(hù)與土地復(fù)墾方案
- 保健按摩師初級(jí)試題
- 2021年度四川省專業(yè)技術(shù)人員繼續(xù)教育公需科目(答案整合)
- 醫(yī)療廢物處理方案
- 船舶靠離泊作業(yè)風(fēng)險(xiǎn)辨識(shí)表
- DB37T 2673-2019醫(yī)療機(jī)構(gòu)能源消耗定額標(biāo)準(zhǔn)
評(píng)論
0/150
提交評(píng)論