开发者社区 > 大数据与机器学习 > 实时计算 Flink > 正文

Flink CDC 2.4读取oracle11c 必须要捕获所有表吗?

Flink CDC 2.4读取oracle11c 必须要捕获所有表吗?

展开
收起
真的很搞笑 2023-11-22 09:34:19 90 0
3 条回答
写回答
取消 提交回答
  • 面对过去,不要迷离;面对未来,不必彷徨;活在今天,你只要把自己完全展示给别人看。

    不是必须的。Flink CDC 支持选择性地捕获特定的表或数据库对象,因此您可以根据需要只捕获您感兴趣的表。
    在配置 Flink CDC 连接 Oracle 数据库时,可以指定要捕获的对象列表。这可以通过在 debezium.oracle.history.json.key.converter.schemas.enable 配置选项中设置为 true 来实现。
    例如,在 Flink CDC 的连接器配置中,您可以这样指定要捕获的对象:

    {
      "connector.class": "io.debezium.connector.oracle.OracleConnector",
      "offset.storage": "org.apache.kafka.connect.storage.FileOffsetBackingStore",
      "offset.storage.file.filename": "/path/to/offset/storage/file.dat",
    
      "database.server.name": "dbserver1",
      "database.hostname": "localhost",
      "database.port": "1521",
      "database.user": "hr",
      "database.password": "hr",
      "database.dbname": "pdborcl",
    
      "table.whitelist": "DEPT,EMP",
    
      "debezium.oracle.history.json.key.converter.schemas.enable": "true",
    }
    

    在这个例子中,只有 DEPTEMP 表会被 Flink CDC 捕获。

    2023-11-29 13:29:22
    赞同 展开评论 打赏
  • 在使用Flink CDC 2.4读取Oracle 11c时,并不需要捕获所有表。您只需要针对那些需要进行数据同步的表进行配置和操作即可。为了实现Flink CDC实时同步Oracle,首先需要确保Oracle中相关表已开启归档日志和补充日志,因为Flink CDC基于Debezium的LogMiner实现,LogMiner需要使用Oracle的归档日志和补充日志来获取变更数据。然后,在Flink程序中创建Oracle CDC连接,配置需要捕获的表信息即可。

    2023-11-29 12:01:17
    赞同 1 展开评论 打赏
  • 在 Flink CDC 2.4 中,可以选择只读取特定的表而不必捕获所有表。请在 Flink CDC 客户端中指定想要捕获的表。在 Oracle 数据源中,可以在相关配置文件中指定表名和过滤条件。在 Flink CDC 中,可以使用以下配置:

    1. properties 文件中的 include 属性,以捕获特定的表。
    2. Debezium Oracle Connector 的表白名单和黑名单,以控制哪些表被复制。
      可参考Flink CDC 和 Debezium 文档
    2023-11-22 15:04:17
    赞同 展开评论 打赏

实时计算Flink版是阿里云提供的全托管Serverless Flink云服务,基于 Apache Flink 构建的企业级、高性能实时大数据处理系统。提供全托管版 Flink 集群和引擎,提高作业开发运维效率。

相关产品

  • 实时计算 Flink版
  • 相关电子书

    更多
    PostgresChina2018_樊文凯_ORACLE数据库和应用异构迁移最佳实践 立即下载
    PostgresChina2018_王帅_从Oracle到PostgreSQL的数据迁移 立即下载
    Oracle云上最佳实践 立即下载

    相关镜像