1. 程式人生 > >Exporting RDBMS Table To A Flat File(CSV)

Exporting RDBMS Table To A Flat File(CSV)

ODI Oracle

本文介紹如何將表數據通過ODI導成CSV文件。

一、源表準備工作

1.1 定義物理體系結構

  • 定義New Data Server
    ODI->Topology->Physical Architecture,右擊Oracle,選擇”New Data Server“,在Definition對話框中定義一個名稱,輸入Oracle實例名稱以及用戶信息,保存。
    技術分享圖片
    接著在JDBC對話框中,選擇JDBC驅動以及輸入jdbc連接URL,可以通過點擊“Test Connection”測試,測試成功後保存。
    技術分享圖片
  • 創建New Physical Schema
    右擊“Data Server”,選擇“New Physical Sever”,在Definition對話框中選擇對應的schema,其他使用默認值即可,保存。
    技術分享圖片

    1.2 定義邏輯體系結構

    ODI->Topology->Logical Architecture,右擊Oracle,選擇”New Logical Schema“,定義一個名稱,選擇上述創建的Physical Schema,保存。
    技術分享圖片

    1.3 定義Oracle表模型

  • 定義模型文件夾
    ODI Studio->Designer,選擇“New Model Folder”,隨便定義個名稱,點擊保存。
    技術分享圖片
  • 定義模型
    右擊新建的模型文件夾,選擇“New Model”,在Definition對話框中隨便定義名稱,Technology選擇“Oracle”,邏輯方案選擇上述創建的,點擊“保存”。
    技術分享圖片
    模型定義完成後,點擊上面的“逆向工程”,同步表結構。

    二、目標文件準備工作

    2.1 定義物理體系結構

  • 定義New Data Server
    ODI Studio->Topology->Physical Architecture->File,打開FILE_GENERIC,在Definition對話框中輸入相關參數如下圖:
    技術分享圖片
    輸入完成後,點擊左上方的“保存”,接著點擊“Test Connection”測試下是否可以連接。
    JDBC對話框,點擊JDBC Driver後面的“查找”圖標,選擇“ODI File JDBC Driver”。點擊JDBC URL,選擇“jdbc:snps:dbfile”,根據文件的編碼格式加入相關參數值即可。如下圖所示:
    技術分享圖片
  • 定義物理方案
    接著創建物理方案。右擊“FILE_GENERIC”,選擇“New Physical Schema”,如下圖:
    技術分享圖片
    在Definition對話框中輸入方案的目錄(文本文件所在的目錄)和工作目錄(可以和方案目錄相同),目錄實際上指的是數據文件的存放路徑,點擊“保存”。

    2.2 定義邏輯體系結構

    ODI Studio->Topology->Logical Architecture->File,選擇“New Logical Schema”,如下圖:
    技術分享圖片

    2.3 定義文件模型

  • 定義模型文件夾
    ODI Studio->Designer,選擇“New Model Folder”,隨便定義個名稱,點擊保存。
    技術分享圖片
  • 定義模型
    右擊新建的模型文件夾,選擇“New Model”,在Definition對話框中隨便定義名稱,Technology選擇“File”,邏輯方案選擇上述創建的,點擊“保存”。
    技術分享圖片
  • 定義New Datastore
    右擊模型名稱,選擇“New Datastore”,隨便定義名稱,Datastore Type選擇Table,輸入源數據文件名稱,點擊保存。
    技術分享圖片
    接著在File對話框中,設置字段與記錄的分隔符,如下圖:
    技術分享圖片
    --字段分隔符用的是逗號,十六進制為\002c;
    --文本分隔符使用的是雙引號;
    最後在屬性對話框中,通過逆向工程導入表結構。導入的數據類型和字段名稱需要進行調整。這裏直接手工添加字段。
    技術分享圖片

    三、映射

    3.1 創建項目設計工程

    ODI->Designer->Projects->New Project,為工程定義個名稱,保存。
    技術分享圖片

    3.2 導入知識模塊

    右擊工程名稱下面的Knowledge Modules,選擇Import Knowledge Modules,這裏的模塊/u01/oracle/Middleware/Oracle_Home/odi/sdk/xml-reference路徑下,這裏選擇所有的模塊。
    技術分享圖片

    3.3 創建映射

    Designer > Projects > O_TO_CSV>First Folder右擊Mappings, 選擇New Mapping,定義一個名稱,接著將源表和目標文件拖到映射裏面,並通過字段名稱進行自動關聯。
    技術分享圖片
    點擊在邏輯結構裏點擊目標文件,將Target的Integration Type設置為Incremental Update(默認為Append),保存。
    技術分享圖片
    在物理結構裏,點擊Default,將Loading Knowledge Module設置為LKM SQL to File.GLOBAL保存。
    技術分享圖片

    四、執行映射

    右擊映射名稱,選擇RUN,如圖:
    技術分享圖片
    運行過程可以在Operation->Session裏看到,如圖:
    技術分享圖片

Exporting RDBMS Table To A Flat File(CSV)