etl工具,kettle實現迴圈,etl工具kettle實現

來源:互聯網
上載者:User

etl工具,kettle實現迴圈,etl工具kettle實現

  Kettle是一款國外開源的ETL工具,純java編寫,可以在Window、Linux、Unix上運行,綠色無需安裝,資料幫浦高效穩定。

 

業務模型: 在關係型資料庫中有張很大的資料存放區表,被設計成奇偶庫儲存,每個庫100張一模一樣的表,每張表格儲存體1000W,自動切換到下一個表。現需要同步這個資料到hive中(hdfs),迴圈抽取這些資料。如果是抽取增量的帶上增量欄位(每天增量資料存放區在哪個表,奇數庫還是偶數庫是不知道的)。

 a sqoop直接從mysql到hive,這樣有些特殊字元會導致sqoop異常終止。而且這樣迴圈對伺服器的資料庫大量取數,對伺服器壓力很大,很容易導致伺服器癱瘓。

 b 使用kettle處理轉換過程就沒有這樣的問題。kettle支援分頁取資料,一定程度上減輕伺服器壓力。


1 先看總結構圖(以下版本為5.1)


2 設定環境變數


3 : javascript代碼

 


編輯內容為

var count;

count = parent_job.getVariable("V_ID");

if(count == 10){

    false;

}else{

    count++;

    parent_job.setVariable("V_ID", count);

    true;

}

4 建立轉換

 

編輯轉換,內容為:


5  dummy  條件判斷,不作修改

 

設定迴圈邏輯,箭頭方向和類型很重要


6 執行job,測試迴圈。

另外附上3.2版本的kettle迴圈


設定變數


設定判斷條件


轉換 表輸入檔案輸出


Js判斷

 

 

 


對於ETL工具kettle串連國產達夢資料庫問題,用過的進

1、下載最新的kettle版本

2、把達夢對應JDK版本的jdbc驅動放在D:\kettle\pdi-ce-4.4.0-stable\data-integration\libext\JDBC安裝目錄下面

3、在connection type中選擇generic database右側填好url和Driver
 
kettle spoon 開源etl工具誰用過,有沒有詳細的教程?

網上資源很多,有基礎的話,邊學邊做項目,一個月可入門。

這類工具都是入門容易,但是要做好,要有一定的資料庫基礎,一定的開發能力,對項目的徹底理解及前瞻性。

建議尋找QQ群加入,當然你要有一定的基礎、自學能力、鑽研能力。

KETTLE和SQL 2005中的SSIS都是一類的工具。

用KETTLE的,現在也非常多,還是很好上手的。
 

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.