2025年(數(shù)據(jù)科學(xué)與大數(shù)據(jù)技術(shù))大數(shù)據(jù)分析案例試題及答案_第1頁
2025年(數(shù)據(jù)科學(xué)與大數(shù)據(jù)技術(shù))大數(shù)據(jù)分析案例試題及答案_第2頁
2025年(數(shù)據(jù)科學(xué)與大數(shù)據(jù)技術(shù))大數(shù)據(jù)分析案例試題及答案_第3頁
2025年(數(shù)據(jù)科學(xué)與大數(shù)據(jù)技術(shù))大數(shù)據(jù)分析案例試題及答案_第4頁
2025年(數(shù)據(jù)科學(xué)與大數(shù)據(jù)技術(shù))大數(shù)據(jù)分析案例試題及答案_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

2025年(數(shù)據(jù)科學(xué)與大數(shù)據(jù)技術(shù))大數(shù)據(jù)分析案例試題及答案一、單項選擇題(每題2分,共20分。每題只有一個正確答案,請將正確選項的字母填在括號內(nèi))1.某電商企業(yè)每日新增訂單數(shù)據(jù)約500GB,數(shù)據(jù)工程師計劃采用HDFS三副本策略存儲一年數(shù)據(jù),忽略壓縮與元數(shù)據(jù)開銷,所需裸容量最接近()A.180TBB.360TBC.540TBD.720TB答案:C解析:500GB×365天×3副本=547.5TB≈540TB。2.在SparkSQL中對一張10億行的Parquet表執(zhí)行selectcount()fromuserwhereage>30,下列優(yōu)化手段對縮短耗時最直接有效的是()A.增加executor內(nèi)存B.對age字段建立Bloom過濾器C.對age字段建立Parquet列統(tǒng)計min/max索引D.將文件格式改為ORC答案:C解析:Parquet的列統(tǒng)計可在文件級別快速跳過不滿足條件的rowgroup。3.某市出租車GPS數(shù)據(jù)包含字段(vehicle_id,longitude,latitude,timestamp),需實時識別“載客”與“空駛”狀態(tài),下列算法最適合在Flink中以事件驅(qū)動方式實現(xiàn)的是()A.KmeansB.DBSCANC.CEP(復(fù)雜事件處理)D.PageRank答案:C4.使用Pythonpandas處理1億行CSV時,頻繁出現(xiàn)MemoryError,下列做法最合理的是()A.直接升級至128GB內(nèi)存服務(wù)器B.使用dtype=str強制所有列讀取為字符串C.采用chunksize分塊讀取并聚合D.將CSV手動拆分為100份再逐個處理答案:C5.在Hive中建立分區(qū)表時,對dt字段使用STRING類型格式為yyyyMMdd,下列分區(qū)目錄命名規(guī)范正確的是()A.dt=20250405B.20250405C.dt/2025/04/05D.dt=20250405答案:A6.某推薦系統(tǒng)采用ALS矩陣分解,用戶量1億,商品量500萬,交互記錄50億,下列存儲方案對模型訓(xùn)練I/O最友好的是()A.文本CSVB.MySQL行存C.HDFS上序列化的RDD[Rating]D.MongoDB文檔答案:C7.對高維稀疏文本特征進(jìn)行降維,同時保持特征非負(fù)性,應(yīng)首選()A.PCAB.隨機投影C.NMFD.LDA答案:C8.在Kafka中,topicA有3分區(qū),生產(chǎn)者指定key=order123,下列分區(qū)策略下消息必進(jìn)同一分區(qū)的是()A.RoundRobinB.RandomC.Hashbased按keyD.Sticky答案:C9.某模型在測試集AUC=0.92,上線后CTR下降,最可能原因是()A.測試集過小而隨機B.訓(xùn)練集與線上分布不一致C.正則化系數(shù)過大D.學(xué)習(xí)率過高答案:B10.使用HBase存儲用戶畫像,rowkey設(shè)計為user_id,查詢最近30天APP訪問記錄,應(yīng)使用的過濾器是()A.RowFilterB.TimestampsFilterC.SingleColumnValueFilterD.PrefixFilter答案:B二、多項選擇題(每題3分,共15分。每題有兩個或以上正確答案,多選少選均不得分)11.下列屬于FlinkCheckpoint持久化到HDFS所需配置的有()A.state.backend=filesystemB.state.checkpoints.dir=hdfs://…C.ervalD.cess.size答案:ABC12.關(guān)于隨機森林的正確說法有()A.可輸出特征重要性B.對異常值不敏感C.必出現(xiàn)過擬合D.可并行訓(xùn)練答案:ABD13.使用Pythonsklearn的LogisticRegression時,可緩解類別不平衡的參數(shù)有()A.class_weightB.sample_weightC.solverD.penalty答案:AB14.下列屬于SparkMLlib支持的推薦算法有()A.ALSB.BPRC.FMD.ItemSimilarity答案:AC15.在數(shù)據(jù)倉庫緩慢變化維SCDType2中,必須包含的字段有()A.代理鍵B.生效時間C.失效時間D.業(yè)務(wù)主鍵答案:ABCD三、填空題(每空2分,共20分)16.在Hive中,將user表寫入ORC事務(wù)表并支持update,需設(shè)置表屬性()()。答案:transactional=true;press=SNAPPY17.Spark中,DataFrame的()函數(shù)可返回各列缺失值占比,常用寫法df.().show()。答案:agg(,count(when(isnull(c),c))/count("")asratio)18.使用Pythonstatsmodels建立線性回歸后,通過()屬性獲得Rsquared。答案:rsquared19.在HBase中,對列族f設(shè)置TTL為7天,建表語句中應(yīng)寫()。答案:fTTL=>60480020.若Flink作業(yè)并行度為8,Kafkatopic有16分區(qū),則每個subtask消費()個分區(qū)。答案:221.在pandas中,將category類型轉(zhuǎn)為數(shù)值最省內(nèi)存的方法是cat.()。答案:codes22.使用sklearn的GridSearchCV時,參數(shù)()控制并行job數(shù)。答案:n_jobs23.在SQL中,計算用戶留存率常用窗口函數(shù)()與()配合。答案:lead;lag24.在Python中,使用()庫可實現(xiàn)對超大規(guī)模稀疏矩陣的TruncatedSVD。答案:gensim或scipy.sparse25.在Linux定時調(diào)度中,每日2點執(zhí)行python/opt/etl.py,應(yīng)寫入crontab的表達(dá)式為()。答案:02python/opt/etl.py四、判斷題(每題1分,共10分,正確寫“T”,錯誤寫“F”)26.在SparkMLlib中,ALS只支持顯式評分矩陣。答案:F27.HDFS的NameNode內(nèi)存大小與文件塊數(shù)量成正比。答案:T28.使用KafkaStreams無法完成ExactlyOnce語義。答案:F29.在Python中,numpy的array比pandas的DataFrame更節(jié)省內(nèi)存。答案:T30.隨機森林中樹越深,模型方差一定越小。答案:F31.HiveonTez執(zhí)行計劃比HiveonMR默認(rèn)更優(yōu)。答案:T32.在Flink中,keyBy之后的sum操作會產(chǎn)生新的數(shù)據(jù)類型。答案:F33.使用sklearn的StandardScaler時,必須先將類別型變量編碼為數(shù)值。答案:T34.在HBase中,列族數(shù)量越多,掃描性能越高。答案:F35.在Python中,使用multiprocessing模塊可繞過GIL實現(xiàn)真并行。答案:T五、簡答題(共25分)36.(封閉型,6分)簡述MapReduce中“數(shù)據(jù)本地性”優(yōu)化原理,并給出兩種Hadoop配置參數(shù)。答案:數(shù)據(jù)本地性指任務(wù)調(diào)度盡可能在存儲目標(biāo)數(shù)據(jù)塊的節(jié)點執(zhí)行,減少網(wǎng)絡(luò)IO。配置參數(shù):1.pletedmaps=0.82.mapreduce.task.timeout=60000037.(開放型,9分)某視頻平臺每日產(chǎn)生千億級播放日志,字段含(uid,vid,play_duration,ts)。請設(shè)計一套基于Flink的實時計算方案,輸出“過去1分鐘各視頻平均播放時長”,要求秒級延遲、可容錯,寫出核心思路、時間窗口設(shè)定、狀態(tài)后端選擇及exactlyonce保證措施。答案:1.Source:Kafka分區(qū)按vid哈希,保證同一vid進(jìn)入同一分區(qū)。2.窗口:采用1分鐘的TumblingEventTimeWindow,watermark允許遲到5s。3.狀態(tài):使用RocksDBStateBackend,開啟incrementalcheckpoint,每10s一次,保留到HDFS。4.計算:RichWindowFunction內(nèi)維護(hù)SumAndCount狀態(tài),累加play_duration與次數(shù),窗口觸發(fā)時輸出avg=sum/count。5.ExactlyOnce:Kafkaproducer設(shè)置transactional.id,F(xiàn)link兩階段提交,checkpoint完成才commit。6.延遲數(shù)據(jù):側(cè)輸出流收集超遲數(shù)據(jù),寫入Redis供離線修正。38.(封閉型,5分)寫出Pythonpandas一句代碼,完成“對df按group列分組,計算v列的均值,并將結(jié)果合并回原df形成新列mean_v”。答案:df['mean_v']=df.groupby('group')['v'].transform('mean')39.(開放型,5分)說明L1與L2正則化在稀疏性、計算復(fù)雜度、應(yīng)用場景三方面的差異。答案:稀疏性:L1可產(chǎn)生精確零值,特征選擇;L2僅壓縮權(quán)重。計算復(fù)雜度:L1不可導(dǎo),需次梯度或坐標(biāo)下降;L2有解析解。場景:高維文本特征用L1獲稀疏模型;共線性強的金融風(fēng)控用L2穩(wěn)定系數(shù)。六、應(yīng)用題(共60分)40.(計算類,15分)某運營商有用戶信令數(shù)據(jù)表signal(user_id,cell_id,start_time,duration),共30億行,存儲于Hive分區(qū)表,分區(qū)字段為dt。需統(tǒng)計“20250301”當(dāng)天,每個用戶累計通話時長,并找出TOP100最長用戶。(1)寫出HiveSQL,要求使用分區(qū)裁剪、避免數(shù)據(jù)傾斜。(2)若發(fā)現(xiàn)某用戶記錄數(shù)超百萬,導(dǎo)致單個reducer耗時過長,給出兩種優(yōu)化方案并對比優(yōu)缺點。答案:(1)setmapreduce.job.reduces=1000;sethive.exec.dynamic.partition=true;SELECTuser_id,sum(duration)AStotal_durationFROMsignalWHEREdt='20250301'GROUPBYuser_idORDERBYtotal_durationDESCLIMIT100;(2)方案A:兩階段聚合,先按user_id做局部sum,再全局sum,減少shuffle量。優(yōu)點:通用性強;缺點:多一次MR。方案B:對user_id加鹽,如concat(user_id,'_',cast(rand()100asint)),擴大key空間,再二次去鹽匯總。優(yōu)點:無需額外表;缺點:邏輯復(fù)雜,需二次清洗。41.(分析類,15分)某零售企業(yè)提供2024全年訂單數(shù)據(jù)order.csv(字段:order_id,user_id,sku_id,price,qty,order_date)。請用Python完成:(1)讀取數(shù)據(jù)并構(gòu)造“月銷售額”時間序列,缺失月份補零。(2)使用STL分解出趨勢、季節(jié)、殘差,并畫圖保存為sales_stl.png。(3)采用SARIMA(1,1,1)(1,1,1,12)預(yù)測2025年13月銷售額,輸出預(yù)測值及95%置信區(qū)間。(4)給出模型評估指標(biāo)AIC與RMSE。答案:importpandasaspd,matplotlib.pyplotaspltfromstatsmodels.tsa.seasonalimportSTLfromstatsmodels.tsa.statespace.sarimaximportSARIMAXdf=pd.read_csv('order.csv',parse_dates=['order_date'])df['sales']=df['price']df['qty']ts=df.groupby(pd.Grouper(key='order_date',freq='M'))['sales'].sum().reindex(pd.date_range('20240131','20241231',freq='M'),fill_value=0)stl=STL(ts,period=12)res=stl.fit()res.plot();plt.savefig('sales_stl.png')model=SARIMAX(ts,order=(1,1,1),seasonal_order=(1,1,1,12))res=model.fit()pred=res.get_forecast(steps=3)print(pred.predicted_mean)print(pred.conf_int())print('AIC=',res.aic)rmse=(res.resid2).mean()0.5print('RMSE=',rmse)42.(綜合類,30分)某市政府開放2024年公交IC卡數(shù)據(jù),字段含(card_id,line_id,board_time,alight_time,board_station,alight_station,price)。數(shù)據(jù)規(guī)模500GB,需完成以下任務(wù):a)建立數(shù)據(jù)倉庫分層模型(ODS、DWD、DWS、ADS),給出各層表名、字段、分區(qū)策略。b)采用Spark分布式計算,實現(xiàn)“早高峰(07:0009:00)各線路斷面客流量(每站上車人數(shù)下車人數(shù))”,輸出line_id,station,section_flow。c)基于b)結(jié)果,使用PySparkMLlib建立Kmeans聚類,將線路按斷面客流曲線聚為3類,輸出類中心并解釋業(yè)務(wù)含義。d)將c)的聚類結(jié)果寫入MySQL,供可視化平臺調(diào)用,寫出PySpark寫入代碼(采用batchmode,連接池方式)。答案:a)ODS:ods_ic_raw(card_idstring,line_idstring,board_timestring,…)partitionedbydtDWD:dwd_ic_trip(card_idstring,line_idstring,board_timetimestamp,alight_timetimestamp,board_stationstring,alight_stationstring,pricedecimal(10,2))partitionedbydtDWS:dws_line_section_flow(line_idstring,stationstring,section_flowbigint)partitionedbydt,hourADS:ads_line_cluster(line_idstring,cluster_idint)b)spark.sql("""withtripas(select,hour(board_time)ashrfromdwd_ic_tripwheredt='20240301'andhrbetween7and8),flowas(selectline_id,board_stationasstation,1asup,0asdownfromtripunionallselectline_id,alight_stationasstation,0asup,1asdownfromtrip)selectline_id,station,sum(up)sum(down)assection_flowfromflowgroupbyline_id,station""").write.mode("overwrite").partitionBy("dt","hour").saveAsTable("dws_line_section_flow")c)frompyspark.ml.clusteringimportKMeansfrompyspar

溫馨提示

  • 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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論