kettle腳本
⑴ kettle有什麼特點
【好評贈送】Kettle軟體包6.1-8.2免費下載
鏈接:https://pan..com/s/1yYLRTGL_D6MV14jVJAkOvg
Kettle最早是一個開源的ETL工具,全稱為KDE Extraction, Transportation, Transformation and Loading Environment。在2006年,Pentaho公司收購了Kettle項目,原Kettle項目發起人Matt Casters加入了Pentaho團隊,成為Pentaho套件數據集成架構師[1];從此,Kettle成為企業級數據集成及商業智能套件Pentaho的主要組成部分,Kettle亦重命名為Pentaho Data Integration[1-2]。Pentaho公司於2015年被Hitachi Data Systems收購。[3](Hitachi Data Systems於2017年改名為Hitachi Vantara[4])

⑵ Kettle實戰之(2)過濾記錄
啟動kettle,點擊文件/新建/轉換
點擊保存,命名為demo1
選擇【主對象樹】,右鍵點擊【DB連接】,點擊【新建】
填寫數據源鏈接相關參數,鏈接數據源
選擇【核心對象】,選擇【輸入】,選擇【表輸入】,拖入設計器中
雙擊設計器中的【表輸入】,打開屬性設頁面,在sql編輯器中輸入SQL腳本,例如
選擇【核心對象】,選擇【流程】,選擇【過濾記錄】,拖入設計器中,【表輸入】鏈接【過濾記錄】
雙擊【過濾記錄】,打開編輯器
設置過濾條件
選擇【核心對象】,選擇【應用】,選擇【寫日誌】,拖入設計器中
鏈接【過濾記錄】
點擊運行,將過濾結果列印出
至此,過濾記錄完成
⑶ kettle 如何讓執行sql腳本在最後執行
在轉換裡面各個【步驟】是並發執行的,數據流是按照順序執行的,所以可以這樣:
增加一個轉換
把sq腳本放進去
並且把這個轉換
放到悄想要執行在轉換後面
就實現國在sql腳本在最後執行
⑷ 如何安裝kettle
【好評贈送】Kettle軟體包6.1-8(1).2,免費下載
鏈接:https://pan..com/s/1qSJoR5D1Ih9ZtfYEfncQKg
kettle 是純 java 開發,開源的 ETL工具,用於資料庫間的數據遷移 。可以在 Linux、windows、unix 中運行。有圖形界面,也有命令腳本還可以二次開發。

⑸ kettle執行sql腳本刪除數據
在kettle的控制項目錄裡面有個腳本,裡面有執行sql的控制項,可直接在裡面寫delete語句來刪除數據。
⑹ Kettle使用教程 二 給表欄位設置默認值
我知道兩種辦法 ,畢竟是新手,各位大俠刀下留人
一:直接用sql 進行替換,
但是這樣有問題,就是目標自己有值得時候,就不進行替換的
二:直接用腳本替換,不管哪種情況都會替換成功
三:還可以使用值映射。。直接映射成新的值就可以
⑺ 我創建了多個kettle腳本文件,如何批量執行這些腳本..(若是一個一個的執行,比較麻煩) 請高手指點
for i in $(ls *kettle*); do
source $i
done
⑻ kettle執行SQL腳本日誌怎麼監控
我理解為你的問題就是如何保存日期
資源庫
轉換屬性中可以設置日誌表
非資源庫
用命令行執行可以將日誌輸出至文件
⑼ Kettle 實戰之 (7) 執行SQL腳本
編輯轉換的屬性,錄入參數信息,注意參數的格式
執行轉換時輸入相關參數的值,即可執行SQL腳本
依賴前面的表輸入,將表輸入中的每一行解析成SQL腳本進行執行,表輸入中有幾條數據,解析成幾個SQL腳本執行
採用參數站位符『?』,是有順序的,需要嚴格按照順序設置參數
⑽ kettle中java腳本怎麼使用
完整例子如下:
Java代碼
String firstnameField;
String lastnameField;
String nameField;
public boolean processRow(StepMetaInterface smi, StepDataInterface sdi) throws KettleException
{
// 獲取輸入
//
Object[] r = getRow();
// 輸入為空,直接false
//
if (r == null) {
setOutputDone();
return false;
}
// 處於性能考慮,parameter只查一次
//
if (first) {
firstnameField = getParameter("FIRSTNAME_FIELD");
lastnameField = getParameter("LASTNAME_FIELD");
nameField = getParameter("NAME_FIELD");
first=false;
}
// 用 createOutputRow() 來保證output的數組夠大,能夠裝下任何新的域
//
Object[] outputRow = createOutputRow(r, data.outputRowMeta.size());
String firstname = get(Fields.In, firstnameField).getString(r);
String lastname = get(Fields.In, lastnameField).getString(r);
// Set the value in the output field
//
String name = firstname+" "+lastname;
get(Fields.Out, nameField).setValue(outputRow, name);
// putRow will send the row on to the default output hop.
//
putRow(data.outputRowMeta, outputRow);
return true;
}
