リレーショナルデータベースにエクスポートデータにハイブsqoop

長いあなたのデータベースを変更するには、以下の情報に基づいて適切なように、事前にリレーショナルデータベースはテキストの接尾辞を書き込みますが、sqoopは実際には非常にシンプルですが、一般的なハイブデータが柱状ストレージとして保存されることができ、そのデータが書き込まれるように、以下の情報、テーブルには、リレーショナルデータベースにエクスポートすることができます前に。

1つの対応のリレーショナルデータベース内のデータの書かれたフォーマットに特別な注意

ライブラリ情報を#pg

database_connection = "はjdbc:postgresqlの://192.168.0.2:8080 / DB_NAME"
database_username = "ユーザー" 
database_password = "パス" 
databaseTableName = "TEST2"
databaseColums = "A1、A2、A3"

 

一時テーブルへ#ライトデータ
ハイブ-v -e " セットmapred.job.queue.name = $ {QUEUENAME}。 USE hive_db_name。 INSERT OVERWRITE TABLE TEST3 Y 'が2019を' = TEST1およびm = '11' 及びd = '29' からA1、A2、A3を選択します。 「; もし[[$?!= 0]]; それから print_log「ハイブに失敗しました!」 1番出口 されます #hdfsパス exportHdfsPath = "HDFS:// hdfs01-shyp-CX / hive_db_name / TEST3" sqoop輸出-Dmapred.job.queue.name = $ QUEUENAME \ //ミスターキュー --connect $ database_connection \ //接続リレーショナルデータベース ユーザー名--username $ database_username \ //リレーショナルデータベース --password $ database_password \ //リレーショナルデータパスワード --export-DIR $ exportHdfsPath \ //ハイブパステーブルHDFS --verbose \ 書き込まれる--table $ databaseTableName \ //テーブル名 --columns $ databaseColums \ //姓フィールドを書きます --input-フィールド終端-によって「\ 001」\ //ハイブテーブル区切り、通常はテキストの接尾辞テーブル、エクスポートするテーブル行格納テーブルに注意を払う必要があります --input-終端-によってライン '\ n' は\ //各行の区切り --input-ヌル文字列 '\\ N' \ // nullの取り扱い --input-nullで非文字列 '\\ N' // nullの取り扱い もし[[$?!= 0]]; それから print_log "sqoopエクスポートが失敗しました!" 1番出口 されます

  

おすすめ

転載: www.cnblogs.com/xinyumuhe/p/11956316.html