畢設(shè)筆記

系統(tǒng)安裝

1. 安裝jdk

2. 安裝hadoop


3.安裝mysql


4.安裝hive


5.安裝scala-2.11.12


6.安裝presto


把presto-client的jar改為命令文件

7.安裝spark-2.4.7-for-scala-2.11


(注意對(duì)應(yīng)的scala版本以及hadoop版本以及hdfs系統(tǒng)的文件權(quán)限問(wèn)題)


8.安裝flink-1.11.3--for-scala-2.11


9.在windows測(cè)試虛擬機(jī)的hadoop開(kāi)發(fā)

測(cè)試spark:



測(cè)試flink:



10.基于Maven開(kāi)發(fā),導(dǎo)入delta lake框架開(kāi)發(fā)測(cè)試

11.從kaggle下載一些超市的數(shù)據(jù)集合,包裹一些會(huì)員信息,訂單小票,庫(kù)存信息以及用戶(hù)行為等。

不同的數(shù)據(jù)表格可能來(lái)自不同的源,為了使數(shù)據(jù)有關(guān)聯(lián)度,我有進(jìn)行一定的預(yù)處理



12.把數(shù)據(jù)錄入到數(shù)據(jù)庫(kù)



一般來(lái)說(shuō),業(yè)務(wù)數(shù)據(jù)的來(lái)源不應(yīng)該是這樣的,由于模擬需要,所以先這樣準(zhǔn)備數(shù)據(jù),datagrip軟件提供把csv格式文件導(dǎo)入數(shù)據(jù)庫(kù)相關(guān)表格的功能,我也有編寫(xiě)具體代碼模擬數(shù)據(jù)導(dǎo)入到數(shù)據(jù)庫(kù)的過(guò)程

13.以delta lake的方式打開(kāi)spark


spark一般會(huì)有一個(gè)對(duì)應(yīng)的delta lake版本在自己的包內(nèi),但我用比較新的delta lake版本,這里交互式進(jìn)入成功,實(shí)際上對(duì)于開(kāi)發(fā)人員來(lái)說(shuō),交互式已經(jīng)是很好的處理數(shù)據(jù)手段,但接下來(lái)仍嘗試編寫(xiě)代碼對(duì)數(shù)據(jù)進(jìn)行操作,時(shí)間充裕的話(huà)嘗試做有一定交互能力的界面

14.編寫(xiě)代碼進(jìn)行數(shù)據(jù)遷移,市面上較為常用的數(shù)據(jù)遷移方式主要是dataX或者用squoop數(shù)據(jù)遷移到hdfs,我這里直接用框架讀取數(shù)據(jù)庫(kù)內(nèi)容,模擬分庫(kù)的場(chǎng)景讀取


landing層是數(shù)據(jù)著陸層,主要是負(fù)責(zé)數(shù)據(jù)源的保存,一般不作數(shù)據(jù)處理


讀取的訂單數(shù)據(jù)

15.連接到spark集群


成功連接

spark貌似對(duì)ip地址和主機(jī)名稱(chēng)有很高的區(qū)分度,配置spark-env.sh時(shí)要小心處理,否則會(huì)拒絕連接

16.hdfs下創(chuàng)建/tmp/spark-events文件夾,充當(dāng)事件日志文件夾

17.把delta lake和iceberg的jar包下載并放到spark的jars文件夾內(nèi)

18.編寫(xiě)代碼把相關(guān)數(shù)據(jù)源的表格同步到數(shù)據(jù)湖


(以下未完成,后續(xù)打算完善的程度)

19.不同表格之間的增刪查改以及join操作

20.嘗試做一些批量數(shù)據(jù)的定時(shí)任務(wù)或者用flink做一些流式數(shù)據(jù)的處理

21.用輸出的表格做一些簡(jiǎn)單的可視化

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容