新增 MongoDB 的擷取
新增擷取 (26ai)
在您開始前,請確認您:
- 複查此來源連線類型的特定詳細資訊。
- 設定 MongoDB Replicat 集:
- 適用於大數據的 OCI GoldenGate 使用作業日誌 (oplog) 讀取變更資料擷取 (CDC) 記錄。oplog 是 MongoDB 中限制的集合,可維護修改資料庫之所有作業的輪流記錄。在 MongoDB 中啟用複本集時,便會建立 Oplog 檔案。
- MongoDB Atlas 已預先設定 Replicat 集。對於內部部署 MongoDB 部署,您必須手動設定並部署 Replicat 集,以啟用 Oplog 和 CDC 功能。對於內部部署 MongoDB,您必須部署複本集。
- 具有 MongoDB 版本 3.6 或更新版本。
- 支援 OCI GoldenGate 以擷取下列作業:
INSERT、UPDATE、DELETE。
若要在 MongoDB 中新增 Extract:
新增擷取 (21 c)
瞭解如何為 OCI GoldenGate 中的 MongoDB 來源新增 Extract 處理作業
若要新增 MongoDB 的擷取,請執行下列動作:
您會返回「管理服務總覽」頁面。按一下「摘錄」名稱以檢視摘錄的詳細資料與報告。
使用 MongoDB Extract 中的 Trail file 搭配 BINARY_JSON_FORMAT 時,Replicats 會失敗
當 Replicat 使用 Extract 參數檔中含有 BINARY_JSON_FORMAT 的 MongoDB Extract 所產生的 Trail file 時,Replicat 會因下列錯誤而失敗:
ERROR 2023-08-04 17:13:13.000421 [main] - Unable to decode column 0 : Input length = 1
java.nio.charset.MalformedInputException: Input length = 1 at
java.nio.charset.CoderResult.throwException(CoderResult.java:281) ~[?:1.8.0_311]at java.nio.charset.CharsetDecoder.decode(CharsetDecoder.java:816) ~[?:1.8.0_311] at
oracle.goldengate.datasource.UserExitDataSource.createColumnValue(UserExitDataSource.java:1106)
[ggdbutil-21.9.0.0.3.001.jar:21.9.0.0.3.001] Exception in thread “main”
oracle.goldengate.util.GGException: Unable to decode column 0 : Input length = 1 at
oracle.goldengate.datasource.UserExitDataSource.createColumnValue(UserExitDataSource.java:1203)解決方法:從 Extract 參數移除 BINARY_JSON_FORMAT 時,Replicat 會順利執行,並以 Extended JSON 格式表示文件。