国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

一百八十二、大數(shù)據(jù)離線數(shù)倉完整流程——步驟一、用Kettle從Kafka、MySQL等數(shù)據(jù)源采集數(shù)據(jù)然后寫入HDFS

這篇具有很好參考價(jià)值的文章主要介紹了一百八十二、大數(shù)據(jù)離線數(shù)倉完整流程——步驟一、用Kettle從Kafka、MySQL等數(shù)據(jù)源采集數(shù)據(jù)然后寫入HDFS。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

一、目的

經(jīng)過6個(gè)月的奮斗,項(xiàng)目的離線數(shù)倉部分終于可以上線了,因此整理一下離線數(shù)倉的整個(gè)流程,既是大家提供一個(gè)案例經(jīng)驗(yàn),也是對(duì)自己近半年的工作進(jìn)行一個(gè)總結(jié)。

二、項(xiàng)目背景

項(xiàng)目行業(yè)屬于交通行業(yè),因此數(shù)據(jù)具有很多交通行業(yè)的特征,比如轉(zhuǎn)向比數(shù)據(jù)就是統(tǒng)計(jì)車輛左轉(zhuǎn)、右轉(zhuǎn)、直行、掉頭的車流量等等。

三、業(yè)務(wù)需求

(一)預(yù)估數(shù)據(jù)規(guī)模

一百八十二、大數(shù)據(jù)離線數(shù)倉完整流程——步驟一、用Kettle從Kafka、MySQL等數(shù)據(jù)源采集數(shù)據(jù)然后寫入HDFS,Hadoop,大數(shù)據(jù),kafka,kettle

(二)指標(biāo)查詢頻率

指標(biāo)的實(shí)時(shí)查詢由Flink實(shí)時(shí)數(shù)倉計(jì)算,離線數(shù)倉這邊提供指標(biāo)的T+1的歷史數(shù)據(jù)查詢

四、數(shù)倉技術(shù)架構(gòu)

一百八十二、大數(shù)據(jù)離線數(shù)倉完整流程——步驟一、用Kettle從Kafka、MySQL等數(shù)據(jù)源采集數(shù)據(jù)然后寫入HDFS,Hadoop,大數(shù)據(jù),kafka,kettle

(一)簡(jiǎn)而言之,數(shù)倉模塊的數(shù)據(jù)源是Kafka,終點(diǎn)是ClickHouse數(shù)據(jù)庫

第一步,用kettle采集Kafka的數(shù)據(jù)寫入到HDFS中;

第二步,在Hive中建數(shù)倉,ODS層、DWD層和DWS層

第三步,把Hive的DWS層處理好的結(jié)果數(shù)據(jù)用kettle同步到ClickHouse數(shù)據(jù)庫中

(二)注意點(diǎn)

1、ETL工具統(tǒng)一使用kettle

2、調(diào)度工具是海豚調(diào)度器

五、數(shù)倉環(huán)境部署

(一)部署原則:易部署、易維護(hù)

(二)部署工具及其版本

1、jdk1.8.0

2、MySQL8.0.31?

3、Kafka_2.13-3.0.0(Kafka自帶ZooKeeper

4、ClickHouse21.9.5.16

5、Hadoop3.1.3

6、Hive3.1.2(不要用Spark作為計(jì)算引擎,默認(rèn)的mr即可

7、DolphinScheduler2.0.5

8、Kettle9.2

(三)部署腳本以及部署文檔

由于一開始的數(shù)據(jù)規(guī)模不大以及服務(wù)器資源有限問題,所以目前使用的單機(jī)版部署,沒有部署集群

一百八十二、大數(shù)據(jù)離線數(shù)倉完整流程——步驟一、用Kettle從Kafka、MySQL等數(shù)據(jù)源采集數(shù)據(jù)然后寫入HDFS,Hadoop,大數(shù)據(jù),kafka,kettle

六、數(shù)倉實(shí)施步驟(搭建好數(shù)倉環(huán)境后)

(一)步驟一、用Kettle從Kafka、MySQL等數(shù)據(jù)源采集數(shù)據(jù)然后寫入HDFS

1、Kettle轉(zhuǎn)換任務(wù)配置

(1)樣例一:維度表數(shù)據(jù)——從MySQL導(dǎo)入數(shù)據(jù)到HDFS

一百八十二、大數(shù)據(jù)離線數(shù)倉完整流程——步驟一、用Kettle從Kafka、MySQL等數(shù)據(jù)源采集數(shù)據(jù)然后寫入HDFS,Hadoop,大數(shù)據(jù),kafka,kettle

(2)樣例二:事實(shí)表數(shù)據(jù)——從Kafka采集數(shù)據(jù)到HDFS

一百八十二、大數(shù)據(jù)離線數(shù)倉完整流程——步驟一、用Kettle從Kafka、MySQL等數(shù)據(jù)源采集數(shù)據(jù)然后寫入HDFS,Hadoop,大數(shù)據(jù),kafka,kettle

2、Kettle轉(zhuǎn)換任務(wù)配置注意點(diǎn)

(1)維度表數(shù)據(jù)——從MySQL導(dǎo)入數(shù)據(jù)到HDFS
2.1.1、由于維度表數(shù)據(jù)量少,因此直接overwrite寫入HDFS中,每次都是覆蓋的全量導(dǎo)入
2.1.2、為了減少磁盤資源使用,在Hadoop file output控件中加了gzip壓縮方式

一百八十二、大數(shù)據(jù)離線數(shù)倉完整流程——步驟一、用Kettle從Kafka、MySQL等數(shù)據(jù)源采集數(shù)據(jù)然后寫入HDFS,Hadoop,大數(shù)據(jù),kafka,kettle

(2)事實(shí)表數(shù)據(jù)——從Kafka采集數(shù)據(jù)到HDFS
2.2.1、由于Kafka的數(shù)據(jù)在不停發(fā)送,所以Kettle任務(wù)就需要一直運(yùn)行。
2.2.2、由于HDFS的特性是以packet為單位寫入,一個(gè)packet是64KB,所以不能根據(jù)日期每天自動(dòng)生成一個(gè)HDFS文件,那樣的話每天都會(huì)丟失一部分?jǐn)?shù)據(jù)。

因?yàn)橹灰刻熳詈笫S嗟臄?shù)據(jù)不滿64KB,那這部分?jǐn)?shù)據(jù)就不會(huì)寫入。kettle任務(wù)直接生成第二天的數(shù)據(jù)文件、寫入第二天的數(shù)據(jù),即使這天的數(shù)據(jù)文件的狀態(tài)還在寫入。

一百八十二、大數(shù)據(jù)離線數(shù)倉完整流程——步驟一、用Kettle從Kafka、MySQL等數(shù)據(jù)源采集數(shù)據(jù)然后寫入HDFS,Hadoop,大數(shù)據(jù),kafka,kettle

一百八十二、大數(shù)據(jù)離線數(shù)倉完整流程——步驟一、用Kettle從Kafka、MySQL等數(shù)據(jù)源采集數(shù)據(jù)然后寫入HDFS,Hadoop,大數(shù)據(jù),kafka,kettle

所以就直接生成一個(gè)HDFS文件,一直在這個(gè)文件里寫入數(shù)據(jù)即可。后面先get到Linux本地,然后再overwrite寫入HDFS的ODS層表中,這樣不會(huì)每天丟數(shù)據(jù)。

一百八十二、大數(shù)據(jù)離線數(shù)倉完整流程——步驟一、用Kettle從Kafka、MySQL等數(shù)據(jù)源采集數(shù)據(jù)然后寫入HDFS,Hadoop,大數(shù)據(jù),kafka,kettle

2.2.3、由于kettle任務(wù)需要一直運(yùn)行,所以Hadoop file output控件不能添加數(shù)據(jù)壓縮方式。

否則雖然顯示HDFS文件有數(shù)據(jù),但只要任務(wù)不停止文件就不會(huì)壓縮,這樣HDFS文件實(shí)際上沒有數(shù)據(jù),所以HDFS文輸出控件不能添加壓縮

3、海豚調(diào)度器調(diào)度kettle轉(zhuǎn)換任務(wù)

(1)首先,為了便于團(tuán)隊(duì)開發(fā),kettle需要配置共享資源庫,把kettle任務(wù)統(tǒng)一放在資源庫中運(yùn)行。

用海豚調(diào)度kettle任務(wù)不需要開啟carte服務(wù),如果是用xxl-job調(diào)度,那可以開啟carte服務(wù)

(2)對(duì)于事實(shí)表數(shù)據(jù)——從Kafka采集數(shù)據(jù)到HDFS
3.2.1、腳本不要加日志文件,因?yàn)閿?shù)據(jù)量太大。

#!/bin/bash
source /etc/profile

/usr/local/hurys/dc_env/kettle/data-integration/pan.sh -rep=hurys_linux_kettle_repository -user=admin -pass=admin -dir=/kafka_to_hdfs/ -trans=02_Kafka_to_HDFS_evaluation

一百八十二、大數(shù)據(jù)離線數(shù)倉完整流程——步驟一、用Kettle從Kafka、MySQL等數(shù)據(jù)源采集數(shù)據(jù)然后寫入HDFS,Hadoop,大數(shù)據(jù),kafka,kettle

3.2.2、工作流不需要定時(shí),直接啟動(dòng),一直跑任務(wù)即可

一百八十二、大數(shù)據(jù)離線數(shù)倉完整流程——步驟一、用Kettle從Kafka、MySQL等數(shù)據(jù)源采集數(shù)據(jù)然后寫入HDFS,Hadoop,大數(shù)據(jù),kafka,kettle

(3)對(duì)于維度表數(shù)據(jù)——從MySQL導(dǎo)入數(shù)據(jù)到HDFS
3.3.1、腳本可以添加日志文件

#!/bin/bash
source /etc/profile

/usr/local/hurys/dc_env/kettle/data-integration/pan.sh -rep=hurys_linux_kettle_repository -user=admin -pass=admin -dir=/mysql_to_hdfs/ -trans=04_MySQL_to_HDFS_t_team level=Basic >>/home/log/kettle/04_MySQL_to_HDFS_t_team_`date +%Y%m%d`.log?

一百八十二、大數(shù)據(jù)離線數(shù)倉完整流程——步驟一、用Kettle從Kafka、MySQL等數(shù)據(jù)源采集數(shù)據(jù)然后寫入HDFS,Hadoop,大數(shù)據(jù),kafka,kettle

3.3.2、工作流需要定時(shí),不過需要注意不同工作流的定時(shí)時(shí)間,保留工作流之間充足的定時(shí)區(qū)間

一百八十二、大數(shù)據(jù)離線數(shù)倉完整流程——步驟一、用Kettle從Kafka、MySQL等數(shù)據(jù)源采集數(shù)據(jù)然后寫入HDFS,Hadoop,大數(shù)據(jù),kafka,kettle

剩余數(shù)倉部分,待續(xù)!文章來源地址http://www.zghlxwxcb.cn/news/detail-732055.html

到了這里,關(guān)于一百八十二、大數(shù)據(jù)離線數(shù)倉完整流程——步驟一、用Kettle從Kafka、MySQL等數(shù)據(jù)源采集數(shù)據(jù)然后寫入HDFS的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包