kettle執行定時任務,kitchen.bat

孤竹星發表於2017-07-10
環境
作業系統:windows server 2008_x86
etl:kettle6.0

Kettle是一個開源的ETL(Extract-Transform-Load的縮寫,即資料抽取、轉換、裝載的過程)專案,專案名很有意思,水壺。按專案負責人Matt的說法:把各種資料放到一個壺裡,然後呢,以一種你希望的格式流出。Kettle包括三大塊:

Spoon——轉換/工作(transform/job)設計工具 (GUI方式)
Kitchen——工作(job)執行器 (命令列方式)
Span——轉換(trasform)執行器 (命令列方式)

Kettle是一款國外開源的etl工具,純java編寫,綠色無需安裝,資料抽取高效穩定。Kettle中有兩種指令碼檔案,transformation和job,transformation完成針對資料的基礎轉換,job則完成整個工作流的控制。

kitchen.bat後面可以是-也可以是/ 然後加上options
Options:
  /rep            : Repository name 資料庫名稱
  /user           : Repository username 資料庫使用者名稱
  /pass           : Repository password 資料庫密碼
  /job            : The name of the job to launch  job名
  /dir            : The directory (dont forget the leading /) job的目錄
  /file           : The filename (Job XML) to launch  xml job的檔名
  /level          : The logging level (Basic, Detailed, Debug, Rowlevel, Error, Nothing) 日誌級別
  /logfile        : The logging file to write to 日誌檔名
  /listdir        : List the directories in the repository 列出在檔案庫的目錄
  /listjobs       : List the jobs in the specified directory 列出在特定目錄下的job
  /listrep        : List the available repositories 列出可用的檔案庫
  /norep          : Do not log into the repository 不登陸檔案庫
  /version        : show the version, revision and build date 檢視版本及建立日期
  /param          : Set a named parameter <NAME>=<VALUE>. For example -param:FILE=customers.csv
  /listparam      : List information concerning the defined parameters in the specified job.
  /export         : Exports all linked resources of the specified job. The argument is the name of a ZIP file.
  /custom         : Set a custom plugin specific option as a String value in the job using <NAME>=<Value>, for example: -custom:COLOR=Red
  /maxloglines    : The maximum number of log lines that are kept internally by Kettle. Set to 0 to keep all rows (default)
  /maxlogtimeout  : The maximum age (in minutes) of a log line while being kept internally by Kettle. Set to 0 to keep all rows indefinitely (default)


編寫一個test_job.bat 內容如下:
D:
cd D:\Program Files\kettle\data-integration
kitchen.bat -rep kettlerep -user admin -pass admin -dir  /job_dir  -job job_name  -level=basic>D:\JOB_LOG\job_input.log
-rep kettlerep 指定資料檔案庫名稱
-user admin -pass admin 使用者名稱,密碼
-dir  /job_dir 指定目錄
-job job_name 設定job名稱
-level=basic>D:\JOB_LOG\job_input.log設定日誌級別及輸出路徑。

pan.bat 
Options:
  /rep            : 資源庫名稱
  /user          : 資源庫使用者名稱
  /pass          : 資源庫密碼
  /trans          : 要啟動的轉換名稱
  /dir            : 目錄(不要忘了字首 /)
  /file           : 要啟動的檔名(轉換所在的 XML 檔案)
  /level         : 日誌等級 (基本, 詳細, 除錯, 行級, 錯誤, 沒有)
  /logfile       : 要寫入的日誌檔案
  /listdir        : 列出資源庫裡的目錄
  /listtrans    : 列出指定目錄下的轉換
  /listrep       : 列出可用資源庫
  /exprep      : 將資源庫裡的所有物件匯出到 XML 檔案中
  /norep        : 不要將日誌寫到資源庫中
  /safemode       : 安全模式下執行: 有額外的檢查
  /version        : 顯示版本,校訂和構建日期
  /param         : Set a named parameter <NAME>=<VALUE>. For example -param:FOO=bar
  /listparam     : List information concerning the defined named parameters in the specified transformation.
  /metrics        : Gather metrics during execution
  /maxloglines    : The maximum number of log lines that are kept internally by Kettle. Set to 0 to keep all rows (default)
  /maxlogtimeout  : The maximum age (in minutes) of a log line while being kept internally by Kettle. Set to 0 to keep all rows indefinitely (default)

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/28282660/viewspace-2141827/,如需轉載,請註明出處,否則將追究法律責任。

相關文章