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

实时FLINK是否支持云原生数据仓库AnalyticDB PostgreSQL到DORIS同步

您好,目前实时FLINK是否支持云原生数据仓库AnalyticDB PostgreSQL到DORIS的实时数据同步,即源ADB POSTGRESQL库发生的数据变化实时或者准实时的同步到DORIS上。

谢谢

展开
收起
hanchengdong 2023-12-20 17:39:46 172 0
17 条回答
写回答
取消 提交回答
  • 无所不能的蛋蛋

    image.png
    参考链接
    Flink 可以支持从阿里云AnalyticDB PostgreSQL版到Doris的数据实时同步。Flink 的CDC(Change Data Capture)功能可以捕获AnalyticDB PostgreSQL中的数据变更,并将这些变更实时传输至Doris。利用Flink的CDC能力和Doris Connector,可以构建一个从AnalyticDB PostgreSQL到Doris的准实时数据同步管道。不过,请注意具体的实现细节会依赖于所使用的Flink版本、connector以及Doris版本的功能支持情况。。

    2024-01-28 22:37:45
    赞同 展开评论 打赏
  • image.png

    从官方文档总看到目前,Apache Flink本身并没有直接提供从云原生数据仓库AnalyticDB PostgreSQL到Doris的实时数据同步的功能。但是网上有解决楼主问题的方案可以通过以下步骤实现该功能:

    1. 使用Debezium或其他CDC工具:Debezium是一个常用的开源CDC(Change Data Capture)工具,它可以捕获数据库中的数据变化,并将其转换为流式数据。你可以使用Debezium来捕获AnalyticDB PostgreSQL中的数据变化。
    2. 将变化的数据发送到Flink:将Debezium捕获到的数据变化发送到Flink的数据源中。可以使用Kafka或其他消息队列作为中间件来传输数据。
    3. 使用Flink进行实时处理:在Flink中,你可以编写自定义的数据处理逻辑来处理和转换数据。在你的情况下,你可以根据需要将AnalyticDB PostgreSQL中的数据进行过滤、聚合、转换等操作。
    4. 将数据写入Doris:最后,根据经过Flink处理后的数据,将数据写入Doris。你可以使用Doris的Java客户端或者通过Flink的输出连接器来实现数据写入。
      这是一种常见的解决方案,但具体的实现方式可能因场景和需求而有所不同。
    2024-01-28 17:08:32
    赞同 1 展开评论 打赏
  • 5.png

    实时FLINK是否支持云原生数据仓库AnalyticDB PostgreSQL到DORIS的实时数据同步,即源ADB POSTGRESQL库发生的数据变化实时或者准实时的同步到DORIS上,看看能不能兼容。

    2024-01-27 21:49:11
    赞同 展开评论 打赏
  • 5.png
    使用CDC(Change Data Capture)工具:对于 PostgreSQL,有如 Debezium 这样的 CDC 工具可以捕获数据变更,然后通过 Flink 任务实时或准实时地同步到 Doris。
    自定义开发:根据 Flink 的 DataStream 或 DataSet API,可以自定义一个 Flink 任务来实现从 PostgreSQL 到 Doris 的数据同步。
    使用 Flink 与其他中间件集成:有些中间件或平台可能已经实现了从 PostgreSQL 到 Doris 的数据同步功能,并支持与 Flink 集成,例如 Apache Kafka、Apache Nifi 等。

    2024-01-27 21:43:02
    赞同 展开评论 打赏
  • 5.png
    实时FLINK是否支持云原生数据仓库AnalyticDB PostgreSQL到DORIS的实时数据同步,即源ADB POSTGRESQL库发生的数据变化实时或者准实时的同步到DORIS上,目前尚无明确的结论。

    如需了解实时FLINK是否支持云原生数据仓库AnalyticDB PostgreSQL到DORIS的实时数据同步.

    2024-01-27 21:28:20
    赞同 展开评论 打赏
  • 十分耕耘,一定会有一分收获!

    楼主你好,据我所知目前Apache Flink本身并不直接支持云原生数据仓库AnalyticDB PostgreSQL到Doris的实时数据同步,但是你可以通过使用Flink的Debezium Connector来实现这样的同步。

    这种方式可以实现AnalyticDB PostgreSQL到Doris的实时数据同步,但你需要额外配置Debezium Connector来监控AnalyticDB PostgreSQL,以及根据Doris的数据结构编写相应的Flink逻辑和Doris Sink。

    2024-01-27 14:39:54
    赞同 展开评论 打赏
  • Flink并不直接支持从云原生数据仓库AnalyticDB PostgreSQL实时同步数据到Doris。实时数据同步通常需要特定的数据流处理和传输工具或中间件,如Apache Kafka、Debezium或GoldenGate等。

    但是,您可以使用一些方法实现这一目标:

    1.使用CDC(Change Data Capture)工具:对于PostgreSQL,您可以使用如pg_逻辑复制和debezium之类的工具来捕获数据变化,然后通过Flink实时处理这些变化数据。
    2.自定义开发:根据您的需求,可以自定义开发一个Flink任务,该任务定期轮询AnalyticDB PostgreSQL的数据变化,并使用Flink的Table API或SQL API将变化的数据写入Doris。
    3.使用消息队列:将AnalyticDB PostgreSQL的数据变化发送到消息队列(如Kafka),然后使用Flink消费这些消息并将数据写入Doris。
    5.png

    2024-01-26 17:27:14
    赞同 展开评论 打赏
  • 天下风云出我辈,一入江湖岁月催,皇图霸业谈笑中,不胜人生一场醉。

    目前官方文档里边没有关于云原生数据仓库同步到DORIS的记录,目前只有从RDS到阿里云DB包版本之间的数据同步迁移,可以通过导入导出的情况,然后根据相关字段对对齐,看看能不能兼容。

    2024-01-25 09:40:32
    赞同 展开评论 打赏
  • 创建DTS任务,源为AnalyticDB PostgreSQL。然后再把Flink的数据同步到Doris。微信截图_20231028103855.png

    2024-01-21 20:44:09
    赞同 展开评论 打赏
  • 目前还没有完整的方案支持实时FLINK从云原生数据仓库AnalyticDB PostgreSQL到DORIS的实时数据同步。
    但可以先通过Flink读写AnalyticDB PostgreSQL数据,再把Flink的数据同步到Doris。
    image.png
    使用 Flink CDC 接入 Doris 示例

    -- enable checkpoint
    SET 'execution.checkpointing.interval' = '10s';
    
    CREATE TABLE cdc_mysql_source (
      id int
      ,name VARCHAR
      ,PRIMARY KEY (id) NOT ENFORCED
    ) WITH (
     'connector' = 'mysql-cdc',
     'hostname' = '127.0.0.1',
     'port' = '3306',
     'username' = 'root',
     'password' = 'password',
     'database-name' = 'database',
     'table-name' = 'table'
    );
    
    -- 支持删除事件同步(sink.enable-delete='true'),需要 Doris 表开启批量删除功能
    CREATE TABLE doris_sink (
    id INT,
    name STRING
    ) 
    WITH (
      'connector' = 'doris',
      'fenodes' = '127.0.0.1:8030',
      'table.identifier' = 'database.table',
      'username' = 'root',
      'password' = '',
      'sink.properties.format' = 'json',
      'sink.properties.read_json_by_line' = 'true',
      'sink.enable-delete' = 'true',
      'sink.label-prefix' = 'doris_label'
    );
    
    insert into doris_sink select id,name from cdc_mysql_source;
    

    ——参考链接

    2024-01-20 16:33:36
    赞同 1 展开评论 打赏
  • 实时FLINK是否支持云原生数据仓库AnalyticDB PostgreSQL到DORIS的实时数据同步,取决于具体的配置和环境。
    image.png

    实时FLINK可以处理无界和有界数据流,包括数据并行和流水线方式。在某些情况下,将实时FLINK与云原生数据仓库AnalyticDB PostgreSQL和DORIS结合使用,可以提供更好的资源管理和调度能力,以支持大规模的数据处理和分析工作负载。

    具体来说,实时FLINK可以通过数据流连接器或自定义实现来与云原生数据仓库AnalyticDB PostgreSQL和DORIS进行集成。通过集成,实时FLINK可以从AnalyticDB PostgreSQL中读取数据,并实时或准实时地将其同步到DORIS中。

    然而,需要注意的是,实现实时FLINK与云原生数据仓库AnalyticDB PostgreSQL到DORIS的同步并非易事。需要仔细考虑数据的一致性、可靠性和性能等方面的问题。同时,还需要根据具体的应用需求和环境配置进行适当的评估和调整。

    综上所述,实时FLINK在某些情况下可以支持云原生数据仓库AnalyticDB PostgreSQL到DORIS的实时数据同步。但具体是否支持以及如何实现,需要结合具体的需求和环境配置进行评估和调整。

    2024-01-20 12:31:55
    赞同 展开评论 打赏
  • 深耕大数据和人工智能

    实时FLINK确实支持从云原生数据仓库AnalyticDB PostgreSQL读取数据,这种方式可以充分发挥实时FLINK确实支持从云原生数据仓库AnalyticDB PostgreSQL读取数据,这种方式可以充分发挥云原生数据仓库的优势,提高数据分析的效率和精度。然而,需要注意的是,该功能暂不支持AnalyticDB PostgreSQL版的Serverless模式。此外,仅当Flink实时计算引擎VVR 6.0.0及以上版本时,才能支持云原生数据仓库。

    2024-01-17 17:06:20
    赞同 展开评论 打赏
  • 实时 FLINK 本身并不直接支持从云原生数据仓库 AnalyticDB PostgreSQL 到 DORIS 的实时数据同步。但是,你可以通过一些方法实现这一需求,具体取决于你的数据模型、数据量、同步频率和实时性要求。

    以下是一些可能的方法:

    自定义同步逻辑:

    使用 Flink SQL 或 Flink DataStream API 来编写自定义的数据同步逻辑。你可以编写一个 Flink 作业,该作业读取 AnalyticDB PostgreSQL 中的数据变化,并使用 Flink 的状态管理和事件时间处理功能,将这些变化实时或准实时地同步到 DORIS。
    使用 CDC(Change Data Capture)工具:

    使用 CDC 工具(如 Debezium、Maxwell 等)捕获 AnalyticDB PostgreSQL 中的数据变化,并将这些变化转换为 Flink 可以处理的数据流。然后,将这个数据流连接到 Flink 作业中,实现与 DORIS 的实时同步。
    利用现有的集成或中间件:

    如果已经存在一些集成或中间件能够实现从 AnalyticDB PostgreSQL 到 DORIS 的实时同步,你可以考虑使用这些工具来简化你的实现。例如,一些开源项目或商业解决方案可能已经提供了这样的集成。
    批处理和流处理结合:

    你可以将批处理和流处理结合起来,实现一种混合的数据同步方式。例如,你可以使用批处理作业定期将大量数据从 AnalyticDB PostgreSQL 同步到 DORIS,同时使用流处理作业来实时捕获和处理数据变化。

    2024-01-15 21:42:44
    赞同 展开评论 打赏
  • 面对过去,不要迷离;面对未来,不必彷徨;活在今天,你只要把自己完全展示给别人看。

    您好,目前实时FLINK支持将云原生数据仓库AnalyticDB PostgreSQL的数据同步到DORIS上。您可以使用Flink的DTS(Data Transmission Service)功能来实现这个需求。
    image.png

    具体步骤如下:

    1. 在Flink中创建DTS任务,选择源为AnalyticDB PostgreSQL,目标为DORIS。
    2. 配置任务参数,包括源数据库连接信息、目标数据库连接信息、同步模式等。
    3. 启动DTS任务,Flink会实时或准实时地从AnalyticDB PostgreSQL读取数据变化,并将数据同步到DORIS上。
    2024-01-13 19:49:11
    赞同 展开评论 打赏
  • 某政企事业单位安全运维工程师,主要从事系统运维及网络安全工作,多次获得阿里云、华为云、腾讯云征文比赛一二等奖;CTF选手,白帽,全国交通行业网络安全大赛二等奖,全国数信杯数据安全大赛银奖,手握多张EDU、CNVD、CNNVD证书,欧盟网络安全名人堂提名,联合国网络安全名人堂提名

    虽然目前没有直接关于Flink CDC从AnalyticDB PostgreSQL到Doris实时同步的具体官方文档或案例,但考虑到Flink强大的流处理能力和其支持多种数据源和sink的能力,理论上是可以实现这一场景的实时同步的。

    具体实现步骤可能包括:

    • 使用Flink CDC或者其他方式捕获AnalyticDB PostgreSQL的变更数据捕获(CDC)信息。这可能需要检查AnalyticDB PostgreSQL是否提供了原生CDC接口或者通过日志解析等方式获取数据变更记录。
    • 将捕获到的变更数据流接入Flink进行处理和转换。
    • 利用Flink的Doris sink将处理后的数据实时写入到Doris集群中。尽管上述提到的Flink CDC通常用于MySQL等关系型数据库的数据同步,但如果Doris有相应的Flink connector或者可以通过JDBC连接并写入数据,则可以将其扩展应用到AnalyticDB PostgreSQL到Doris的同步场景中。

    要实现这一目标,需要根据实际情况编写适配器或者利用现有工具,并确保所有组件兼容且能够正常工作。同时,也需要关注性能、数据一致性等问题。

    2024-01-12 22:52:30
    赞同 展开评论 打赏
  • 北京阿里云ACE会长

    仓库AnalyticDB PostgreSQL到DORIS的实时数据同步。可以使用FLINK SQL或者Java API进行数据同步。
    FLINK SQL方式:

    CREATE TABLE source_table (
    id INT,
    name STRING,
    -- other columns
    )
    ENGINE=OLAP
    DUPLICATE KEY(id)
    COMMENT 'source table'
    DISTRIBUTED BY HASH(id) BUCKETS 10;
    CREATE TABLE target_table (
    id INT,
    name STRING,
    -- other columns
    )
    ENGINE=OLAP
    DUPLICATE KEY(id)
    COMMENT 'target table'
    DISTRIBUTED BY HASH(id) BUCKETS 10;
    INSERT INTO target_table
    SELECT * FROM source_table;

    Java API方式:

    FlinkPipeline pipeline = FlinkPipeline.create();
    DataSource source = PostgreSQLDataSource.builder()
    .jdbcUrl("jdbc:postgresql://localhost:5432/source_db")
    .username("username")
    .password("password")
    .tableName("source_table")
    .build();
    DataSource target = DorisDataSource.builder()
    .jdbcUrl("jdbc:mysql://localhost:3306/target_db")
    .username("username")
    .password("password")
    .tableName("target_table")
    .build();
    pipeline.addLast(new TableSyncTransform(source, target));
    pipeline.run();

    2024-01-12 21:13:06
    赞同 展开评论 打赏
  • 阿里云的 AnalyticDB for PostgreSQL 是一款基于 PostgreSQL 扩展的云原生实时分析型数据仓库服务,而 Apache Doris(也称为 OpenDoris)是一个面向交互式分析的高性能、实时数据分析型数据库系统。

    虽然我不能提供最新实时更新的信息(截至我的知识截止日期),但根据 Apache Flink 的能力和历史项目实践,Flink CDC(Change Data Capture)功能可以实现实时或准实时的数据同步,从各种数据库(如 MySQL、PostgreSQL 等)捕获变更数据并将其同步到目标系统(如 Doris)中。在实际操作中,要将 AnalyticDB PostgreSQL 的数据实时同步到 Doris,可以通过以下步骤:

    1. 使用 Flink CDC 连接器连接到 AnalyticDB PostgreSQL,读取其中的变更日志。
    2. 根据 AnalyticDB PostgreSQL 提供的 CDC 或 binlog 相关功能获取数据变更事件流。
    3. 使用 Doris 提供的 Flink Connector 将这些变更事件转换并写入到 Doris 表中。

    由于不同的云服务商可能会对其服务有所定制,因此在使用 Flink CDC 进行数据同步之前,需要确认 AnalyticDB PostgreSQL 是否提供了兼容 PostgreSQL 的 CDC 功能,以及是否有可用的 Flink connector 支持 AnalyticDB PostgreSQL 作为 source。

    建议查阅最新的阿里云 AnalyticDB PostgreSQL 文档以及 Apache Flink 官方文档,同时关注社区是否有针对这两个系统间实时同步的相关插件或实践案例出现。如果有特殊的数据同步需求,可能需要开发定制的连接器或适配器来完成这项任务。https://help.aliyun.com/zh/flink/developer-reference/analyticdb-for-postgresql-connector?spm=a2c4g.11186623.0.0.270a1461rqBNiX
    image.png

    2024-01-12 15:02:20
    赞同 展开评论 打赏
滑动查看更多

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

相关产品

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

    更多
    Flink CDC Meetup PPT - 龚中强 立即下载
    Flink CDC Meetup PPT - 王赫 立即下载
    Flink CDC Meetup PPT - 覃立辉 立即下载