为 MongoDB 添加提取

提取是重新运行源数据源连接并提取或捕获数据的流程。学习为 MongoDB 添加提取。

添加提取 (26ai)

开始之前,请确保:
  • 复查特定于此源连接类型的详细信息
  • 配置 MongoDB 复制集:
    • OCI GoldenGate for Big Data 使用操作日志 (oplog) 读取更改数据捕获 (CDC) 记录。oplog 是 MongoDB 中的一个上限集合,用于维护修改数据库的所有操作的滚动记录。Oplog 文件是在 MongoDB 中启用副本集时创建的。
    • MongoDB Atlas 预先配置了复制集。对于内部部署 MongoDB 部署,必须手动配置和部署 Replicat 集以启用 oplog 和 CDC 功能。对于内部部署 MongoDB,您需要部署副本集
  • 具有 MongoDB 版本 3.6 或更高版本。
  • 提供 OCI GoldenGate 支持来捕获以下操作:INSERTUPDATEDELETE
要为 MongoDB 添加提取,请执行以下操作:
  1. OCI GoldenGate 部署控制台导航菜单中,单击提取
  2. 在“添加提取”面板的提取信息页上,根据需要填写以下字段,然后单击下一步
    • 输入进程名称,长度不超过 8 个字符。
    • 输入说明(可选)以帮助您区分此流程与其他流程。
    • 从下拉列表中选择
  3. 提取选项页上,根据需要填写以下字段,然后单击下一步
    1. 对于提取线索
      1. 输入“提取”流程的名称
      2. 输入子目录名称以设置生成的线索文件的定制位置。
      3. 输入线索序号以设置线索文件的起始编号。
      4. 输入线索大小以设置生成的线索文件的最大大小。
      5. 选择 Encryption Profile(加密配置文件)。如果未创建加密配置文件,则默认情况下会选择本地 Wallet 配置文件。
      6. 选择加密算法
        • NONE
        • AES256
        • AES192
        • AES128
    2. 对于源身份证明,请选择:
      1. 别名
      2. 何时/何地开始
  4. 托管选项页上,根据需要填写以下可选字段,然后单击下一步
    • 概要文件名
    • 对于部署的健康状况至关重要
    • 自动启动
    • 自动重新启动

    注意:

    通过添加配置文件和配置 "Auto Start" 和 "Auto Restart" 选项,您的部署可以在网络中断后自动重新启动。请参阅“配置托管流程”以了解详细信息。

  5. 在“参数文件”页上,使用 TABLE source.*; 更新源映射

    注意:

    这是源数据库/集合映射。TABLE *.*; 将导致从所有数据库/集合中提取流程。
  6. 单击创建并运行以创建并启动提取。如果单击创建,则稍后可以从“提取”页面手动启动提取。

添加提取 (21 c )

了解如何为 OCI GoldenGate 中的 MongoDB 源添加提取流程

要为 MongoDB 添加提取:
  1. OCI GoldenGate 部署控制台中,确保您位于“管理服务概览”页上,然后单击添加提取(加号图标)。
  2. 在“添加提取”页上,对于“提取”类型,选择以下选项之一,然后单击下一步
    • 初始加载
    • 更改数据捕获
  3. 在“提取选项”页上,按如下方式填写字段,然后单击下一步
    1. 对于 Process Name(流程名称),输入提取的名称。
    2. 对于连接别名,请从下拉列表中选择连接别名。
    3. 对于,选择文件
    4. 对于文件名,请至少为文件名输入三个字符。
    5. (可选)在“Managed Options(托管选项)”下,可以配置以下各项:
      • 概要文件名
      • 自动启动
      • 自动重新启动

      注意:

      通过添加配置文件和配置 "Auto Start" 和 "Auto Restart" 选项,您的部署可以在网络中断后自动重新启动。有关详细信息,请参阅配置托管进程
  4. 在“参数文件”页上,使用 TABLE source.*; 更新源映射

    注意:

    这是源数据库/集合映射。TABLE *.*; 将导致从所有数据库/集合中提取流程。
  5. 单击创建并运行
返回“Administration Service Overview(管理服务概览)”页面。单击“提取”名称可查看提取的详细信息和报告。

已知问题

将 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 将成功运行,文档将以扩展 JSON 格式表示。