目錄:
Informatica基礎系列(一)——Helloworld
Informatica基礎系列(三)——表達式、篩選、查找組件
正文:
Informatica Power Center 是一個 ETL 工具,提供強大的數據集成軟件和服務,一般用于大數據的抽取、轉換、加載,常應用于數據倉庫、BI 等領域,并支持各種主流的數據源,如 Oracle、SQL Server、SaleForce、MySQL 等。本文主要分享 Informatica 在處理MySQL數據源過程中遇到的一些問題,以及對應的解決方案(基于Windows)。
一、MySQL 社區版不支持的問題###
雖然 Informatica 支持多種主流數據源,但官方明確說明不支持 MySQL 社區版,不過通過其他途徑也能實現對 MySQL 社區版的支持,步驟如下:
1) 安裝 ODBC 驅動####
首先,從MySQL官網下載社區版 ODBC Connector 驅動,32位和64位的都要下載,32位安裝在 Informatica Client,64位安裝在Informatica Sever。
2) Designer 配置 Data Source####
Informatica Designer 用以導入數據源表、數據目標表、開發Mapping。現在要配置一個 MySQL 的數據源,點擊 Sources -> Import From DataBase,按如下圖所示:
結果 Informatica 報錯,還需要在Client端配置下 MySQL ODBC 驅動的支持。
3) Client 修改配置文件####
找到Informatica Client的安裝目錄,按如下圖所示的位置找到 powrmart.ini 文件,添加內容如紅圈所示。
4) Informatica Workflow 配置 Connector####
開發好的 Mapping,需要運行在 Workflow,這時候需要對 Mapping 對應的數據源配置 Connector,以便支持 Workflow 的運行。打開 Workflow 工具,配置 MySQL Connector,步驟如下所示:
上圖 Connect String 指的是 Server 要配置的系統DSN名稱。
5) Server 配置 DSN####
在 Server 配置一個系統 DSN ODBC源,步驟如下所示:
二、中文亂碼的問題###
Informatica 在對 MySQL 進行數據抽取時,比如從 SQL Server 抽取到 My SQL,或從 MySQL 抽取到 SQL Server。如果抽取數據時有中文亂碼問題,多半是字符集類型和數據表字段類型造成的,可以嘗試以下方法:
1) 字符集設置檢查####
在 Informatica Workflow 的 Connector 對數據源配置相應的字符集類型,一般 MySQL 是UTF8,在 Connector 配置窗口的 Code Page 就選UTF8,如下所示:
2) 表字段類型####
MySQL 如果是 Varchar,SQL Server 對應的字段需要定義為 Nvarchar,Varchar 是以 UTF8 保存數據的,Nvarchar 是以 GBK 保存的。