GoldenGate 12.2已經提供下載,增加了不少新特性
1. 異構配置加強
不在需要sourceDefs和AssumeTargetDefs檔案,在佇列檔案中已經包含metadata資訊,比如table name, column name, column type等,進一步降低OGG在異構環境下配置的工作量;
2. 內建心跳錶
在早期的OGG版本中,如果要監控程式的延遲狀態,需要手工建立心跳錶,現在通過配置就可以啟用心跳錶監控功能,
在GGSCI中add heartBeatTable即可。此時,會自動建立心跳配置表和檢視,所有OGG程式預設每60秒更新一次資料。建立的其中一個檢視是GG_LAG,裡面有一個欄位Incoming_LAG,可以看到本地DB提交時間和遠端DB投遞時的延時;同時,也支援雙向複製,裡面有一個outGoing_Lag欄位,可以看到源DB產生心跳時間及目標DB接收到心跳時間的時間差。GG_HEARTBEAT是主要的配置表,其它檢視基本上根據此表建立,裡面有記錄各元件的延遲資訊,包括抽取、傳輸和投遞程式。因此,很容易通過分析此表的資訊就可以知道效能瓶頸在哪。歷史延遲和心跳資訊儲存在GG_LAG_HISTORY和GG_HEARTBEAT_HISTORY表中。
3. 引數檔案校驗及執行時獲取環境引數 - chkprm, info param, getParamInfo。
在12.2中,啟動程式之前,可以使用checkprm檢查引數的合法性;
info param可以返回一個程式的多個資訊,包括預設值,合法的取值範圍等,相當於在GGSCI中檢視OGG的線上幫助;
當一個程式在執行時,可以使用send procname getParamInfo檢視程式執行時的環境引數,不僅是程式中包含的引數,還包括程式執行需要的其它環境引數等資訊,特別是可以檢視一些執行時預設設定的引數變數。
4. 加強的資料測量和效能監控。
ogg 12.2可以通過RESTFUL web service,支援對抽取、傳輸和投遞程式的實時度量。針對抽取和投遞程式的實時資料庫及佇列統計,針對傳輸程式的佇列和網路統計。訪問方式如下:
http://<hostname>:<manager port>/groups
前提是需要在GLOBALS檔案中新增ENABLEMONITORING引數。並在GGSCI中create datastore.
5. GoldenGate Studio
在12.2中,有一個工具平臺叫GoldenGate STUDIO,一個圖形化的介面,幫助快速配置和部署OGG。通過滑鼠點選和拖拉實現OGG部署,而不用關心底層細節。OGG studio的思路是,首先會有一個專案,然後裡面包括多個解決方案,每個解決方案包括多個邏輯設計及多種物理部署。OGG studio預設已經帶了多個開箱即用的方案模板,比如級聯、雙向、單向、一對多等複製拓撲,方便更快速的OGG部署。最後,OGG studio允許設計一次,即可部署到多套環境中,比如開發、測試、QA、生產等,只需要一鍵點選即可部署。
6. GoldenGate 雲服務
OGG雲服務會是公開的、基於雲平臺提供訂閱或按小時服務。OGG雲服務可以幫助企業在內網和雲平臺之間進行實時資料複製,包括oracle db和非oracle db。同時ogg雲服務也支援投遞資料到Hadoop或NoSQL等大資料平臺。
7. 9位數字的佇列檔案。
在12.2中,預設建立的佇列檔案是9位數字,而不是以前版本的6位。這樣,佇列檔案的數量提高了1000倍,相當於每個佇列字首支援10億個檔案。同時,可以更新現有的6位檔案格式到9位,使用安裝目錄下的convchk程式即可;當然,也可以在GLOBALS中新增TRAIL_SEQLEN_6D引數,以提供後向相容功能,即只有6位數字。
8. 改進的佇列檔案修復技術。
在早期的OGG版本中,如果一個佇列檔案丟失或損壞,則投遞程式失敗。在12.2中,如果佇列檔案有損壞或丟失,則可以重啟傳輸程式,此時,會重建佇列檔案;同樣的原理,也可以通過抽取程式重建源端的佇列檔案。投遞程式會自動過濾掉已經投遞過的重複記錄。
針對Oracle資料庫
1. 與Oracle RAC無縫整合。
在早期的OGG版本中,使用Grid Infrastructure Agent (XAG)在RAC中提供高可用,必須使用AGCTL控制OGG的啟動和停止,而不能在GGSCI中使用start/stop命令。在12.2中,一旦使用AGCTL命令向RAC註冊了OGG例項,我們仍然可以在GGSCI中使用start/stop命令。同時,GLOBALS引數中可以使用一個新的引數:XAG_ENABLE。
2. 新增同步表與datapump整合。
在早期的OGG版本中,如果要新增同步的表,需要從v$database中獲取current_SCN值,然後在expdb中將SCN傳遞給flashback_scn引數,然後再使用start replicat, aftercsn xxx。在12.2中,add trandata或add schemaTrandata會自動將這些表的狀態準備好。expdp在匯出時,會新增SCN到對應的表中,此時,只需要在replicat程式使用DBOPTIONS_ENABLE_INSTANTIATION_FILTERING引數,即可自動過濾SCN之前的DML和DDL操作。
3. 支援invisible(不可見)列。
OGG 12.2中新的MAPINVISIBLECOLUMNS引數,使用整合抽取支援oracle db中不可見列的資料複製。
4. 支援DDL同步中源和目標的表結構不同
在舊版本的OGG中,如果要進行DDL同步,兩端的表結構必須相同,而在最新的12.2中,允許源和目標端的表結構不同,而且支援2個以上的DB進行DDL同步。當然,DDL的同步仍然只支援ora-ora, teradata-teradata.
針對SQL Server
支援從遠端只讀歸檔(ALO)捕獲資料
SQL Server標準版的捕獲及投遞
SQL Server 2014 Compressed Log backups
支援在欄位級別指定字符集
針對Teradata
Replicat程式現在可以處理truncates操作
支援在欄位級別指定字符集Column level character sets
該版本以後的OGG不再支援從Teradata捕獲資料
針對DB2 LUW
支援在欄位級別指定字符集
臨時表支援
1. 異構配置加強
不在需要sourceDefs和AssumeTargetDefs檔案,在佇列檔案中已經包含metadata資訊,比如table name, column name, column type等,進一步降低OGG在異構環境下配置的工作量;
2. 內建心跳錶
在早期的OGG版本中,如果要監控程式的延遲狀態,需要手工建立心跳錶,現在通過配置就可以啟用心跳錶監控功能,
在GGSCI中add heartBeatTable即可。此時,會自動建立心跳配置表和檢視,所有OGG程式預設每60秒更新一次資料。建立的其中一個檢視是GG_LAG,裡面有一個欄位Incoming_LAG,可以看到本地DB提交時間和遠端DB投遞時的延時;同時,也支援雙向複製,裡面有一個outGoing_Lag欄位,可以看到源DB產生心跳時間及目標DB接收到心跳時間的時間差。GG_HEARTBEAT是主要的配置表,其它檢視基本上根據此表建立,裡面有記錄各元件的延遲資訊,包括抽取、傳輸和投遞程式。因此,很容易通過分析此表的資訊就可以知道效能瓶頸在哪。歷史延遲和心跳資訊儲存在GG_LAG_HISTORY和GG_HEARTBEAT_HISTORY表中。
3. 引數檔案校驗及執行時獲取環境引數 - chkprm, info param, getParamInfo。
在12.2中,啟動程式之前,可以使用checkprm檢查引數的合法性;
info param可以返回一個程式的多個資訊,包括預設值,合法的取值範圍等,相當於在GGSCI中檢視OGG的線上幫助;
當一個程式在執行時,可以使用send procname getParamInfo檢視程式執行時的環境引數,不僅是程式中包含的引數,還包括程式執行需要的其它環境引數等資訊,特別是可以檢視一些執行時預設設定的引數變數。
4. 加強的資料測量和效能監控。
ogg 12.2可以通過RESTFUL web service,支援對抽取、傳輸和投遞程式的實時度量。針對抽取和投遞程式的實時資料庫及佇列統計,針對傳輸程式的佇列和網路統計。訪問方式如下:
http://<hostname>:<manager port>/groups
前提是需要在GLOBALS檔案中新增ENABLEMONITORING引數。並在GGSCI中create datastore.
5. GoldenGate Studio
在12.2中,有一個工具平臺叫GoldenGate STUDIO,一個圖形化的介面,幫助快速配置和部署OGG。通過滑鼠點選和拖拉實現OGG部署,而不用關心底層細節。OGG studio的思路是,首先會有一個專案,然後裡面包括多個解決方案,每個解決方案包括多個邏輯設計及多種物理部署。OGG studio預設已經帶了多個開箱即用的方案模板,比如級聯、雙向、單向、一對多等複製拓撲,方便更快速的OGG部署。最後,OGG studio允許設計一次,即可部署到多套環境中,比如開發、測試、QA、生產等,只需要一鍵點選即可部署。
6. GoldenGate 雲服務
OGG雲服務會是公開的、基於雲平臺提供訂閱或按小時服務。OGG雲服務可以幫助企業在內網和雲平臺之間進行實時資料複製,包括oracle db和非oracle db。同時ogg雲服務也支援投遞資料到Hadoop或NoSQL等大資料平臺。
7. 9位數字的佇列檔案。
在12.2中,預設建立的佇列檔案是9位數字,而不是以前版本的6位。這樣,佇列檔案的數量提高了1000倍,相當於每個佇列字首支援10億個檔案。同時,可以更新現有的6位檔案格式到9位,使用安裝目錄下的convchk程式即可;當然,也可以在GLOBALS中新增TRAIL_SEQLEN_6D引數,以提供後向相容功能,即只有6位數字。
8. 改進的佇列檔案修復技術。
在早期的OGG版本中,如果一個佇列檔案丟失或損壞,則投遞程式失敗。在12.2中,如果佇列檔案有損壞或丟失,則可以重啟傳輸程式,此時,會重建佇列檔案;同樣的原理,也可以通過抽取程式重建源端的佇列檔案。投遞程式會自動過濾掉已經投遞過的重複記錄。
針對Oracle資料庫
1. 與Oracle RAC無縫整合。
在早期的OGG版本中,使用Grid Infrastructure Agent (XAG)在RAC中提供高可用,必須使用AGCTL控制OGG的啟動和停止,而不能在GGSCI中使用start/stop命令。在12.2中,一旦使用AGCTL命令向RAC註冊了OGG例項,我們仍然可以在GGSCI中使用start/stop命令。同時,GLOBALS引數中可以使用一個新的引數:XAG_ENABLE。
2. 新增同步表與datapump整合。
在早期的OGG版本中,如果要新增同步的表,需要從v$database中獲取current_SCN值,然後在expdb中將SCN傳遞給flashback_scn引數,然後再使用start replicat, aftercsn xxx。在12.2中,add trandata或add schemaTrandata會自動將這些表的狀態準備好。expdp在匯出時,會新增SCN到對應的表中,此時,只需要在replicat程式使用DBOPTIONS_ENABLE_INSTANTIATION_FILTERING引數,即可自動過濾SCN之前的DML和DDL操作。
3. 支援invisible(不可見)列。
OGG 12.2中新的MAPINVISIBLECOLUMNS引數,使用整合抽取支援oracle db中不可見列的資料複製。
4. 支援DDL同步中源和目標的表結構不同
在舊版本的OGG中,如果要進行DDL同步,兩端的表結構必須相同,而在最新的12.2中,允許源和目標端的表結構不同,而且支援2個以上的DB進行DDL同步。當然,DDL的同步仍然只支援ora-ora, teradata-teradata.
針對SQL Server
支援從遠端只讀歸檔(ALO)捕獲資料
SQL Server標準版的捕獲及投遞
SQL Server 2014 Compressed Log backups
支援在欄位級別指定字符集
針對Teradata
Replicat程式現在可以處理truncates操作
支援在欄位級別指定字符集Column level character sets
該版本以後的OGG不再支援從Teradata捕獲資料
針對DB2 LUW
支援在欄位級別指定字符集
臨時表支援