kettle學習筆記(十)——數據檢驗、統計、分區與JS腳本


一、概述

  數據剖析和數據檢驗:

    用於數據的檢查、清洗 。
  統計步驟:

    提供數據采樣和統計的功能
  分區:    

    根據數據里某個字段的值,拆分成多個數據塊。輸出到不同的庫表和文件中。

  腳本:

    Javascript 基礎

二、數據剖析和數據檢驗

  1.數據剖析

    分析原始數據的數據類型、長度、值域等,屬於ETL的第一步

    kettle中使用DataCleaner進行數據剖析

  首先需要在工具-marketPlace中安裝改插件並重啟:https://wiki.pentaho.com/pages/viewpage.action?pageId=23533803

  2.數據校驗

    示例可以查看samples,可以配置例如錯誤代碼,字典表校驗等:

    

    一個簡單的檢驗如下:

    

 

     也可以后面接SWITCH CASE,通過錯誤代碼等進行后續處理

三、統計

  

  // 實例見samples

四、分區

  把數據按照一定的規則,划分為多個數據塊,稱為分區。

  分區的方式

    1.鏡像分區:相當於分區拷貝

    2.取模分區:通過取模進行分區

  通過內置變量parition.ID可以寫分區數據到多個分區,如果是數據庫,需要數據庫集群(轉換中需要新建分區模式)

五、JS腳本

  基礎JS參見菜鳥教程

  1.在腳本中使用Java類:

不兼容模式:var myVar = new java.lang.String(“pentahochina.com”); 兼容模式:var myVar = new Packages.java.lang.String (“pentahochina.com”);

  此時myVar是一個Java的string對象,可以調用Java中的string方法

  // 兼容模式為兼容老的kettle,建議不兼容模式的新語法!

  2.獲取字段:

不兼容模式:myVar = FieldName; 兼容模式:根據字段類型的不同,使用不同的方法: myVar = FieldName.getString(); myVar = FieldName.getNumber();

  3.給字段賦值:

不兼容模式:直接使用字段名,如 FieldName = myVar; 兼容模式:使用 FieldName.setValue(myVar);

  JS代碼中有很多內置函數,可以在編寫JS代碼時左側查看

  支持Alert()的簡單調試


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM