前言:為何選擇 SSIS 進行異構 ETL
SQL Server 整合服務 (SSIS) 是建立在 SQL Server 之上的企業級資料轉換框架,支援異構與同構環境。相較 Oracle 企業版需額外購買選項,SQL Server 標準版與企業版均內建完整 BI 堆疊(SSIS、SSRS、SSAS),總擁有成本 (TCO) 優勢明顯。
SSIS 核心優勢
- 控制流程與資料流程視覺化設計師
- 套件獨立部署、排程、記錄、錯誤處理機制
- 高效能平行處理、緩衝區管理
- 豐富內建轉換元件(查閱、合併、條件分割等)
前置作業:Oracle 用戶端安裝與連線設定
- 下載對應作業系統位元的 Oracle Client(32/64-bit):
32-bit / 64-bit
- 安裝時確認選擇
Oracle Net 網路元件(類似 SQL Server TDS 協議)。
- 配置
tnsnames.ora 定義 Oracle 服務名稱。
- 在 SSIS 連線管理員中選擇「ADO.NET」或「OLE DB」提供者,使用
Oracle Provider for OLE DB 或 Oracle Data Provider for .NET (ODP.NET)。
ETL 實作步驟概覽
- 建立 SSIS 專案,新增「資料流程任務」。
- 來源:OLE DB 來源 → 選擇 Oracle 連線 → SQL 命令或資料表模式。
- 轉換:資料類型轉換、衍生欄位、查閱維度表等。
- 目的地:OLE DB 目的地 → SQL Server 目標資料表 → 對應欄位。
- 控制流程加入「執行 SQL 任務」執行截斷目標表、更新水位線等前後置邏輯。
- 設定套件記錄、事件處理、檢查點以支援失敗重啟。
成本效益總結
SSIS 以零額外授權成本提供企業級 ETL 能力,搭配 SQL Server 強大的 BI 生態系,是異構資料整合的高 CP 值選擇。