一、定義作業文件
-
作業文件
-
該文件將包括輸入源、輸出目標和要執行的配置文件的位置,具體內容如下
metrics:- /user/xrx/qdb.yaml # 此位置為hdfs文件系統目錄 inputs: output:jdbc:connectionUrl: "jdbc:mysql://233.233.233.233:3306/sjjc"user: "root"password: "123456"driver: "com.mysql.jdbc.Driver" explain: true showQuery: true
-
-
配置文件
-
文件定義了 ETL 的步驟和查詢,以及輸出的位置和內容。
steps: - dataFrameName: dfsql:select movieId,rating from hive.emp output: - dataFrameName: dfoutputType: JDBCoutputOptions:saveMode: AppenddbTable: emp
該文件使用SQL查詢從Hive表中讀取數據,并使用JDBC將結果寫入MySQL表/
-
二、上傳作業文件和配置文件到hdfs系統
hdfs dfs -put qdb.yaml /user/xrx
三、執行指令
與mysql結合使用要定義數據庫驅動,clickhouse及其它數據庫使用要引入不同的數據庫驅動,將多種數據驅動引擎放入lib文件中,一同加載。
#!/bin/bash
Path=/home/xrx
for jar in `ls $Path/lib/*jar`
doLIBJARS=$jar,$LIBJARS
donespark-submit \
--master yarn \
--conf spark.sql.catalogImplementation=hive \
--driver-class-path $LIBJARS \
--jars $LIBJARS \
--class com.yotpo.metorikku.Metorikku metorikku_2.11.jar \
-c /user/xrx/qdb.yaml