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

请问下,Flink CDC sql client创建的表,在flink重启后消失了,有什么方法可以?

请问下,Flink CDC sql client创建的表,在flink重启后消失了,有什么方法可以持久化吗?

展开
收起
真的很搞笑 2023-07-01 19:07:25 734 0
3 条回答
写回答
取消 提交回答
  • 根据您的描述,Flink CDC SQL Client创建的表在Flink重启后消失了。这通常是因为Flink CDC SQL Client默认创建的表是临时表(temporary table),在Flink重启后会被删除。如果您希望在Flink重启后仍然保留表的定义和数据,可以考虑以下两种方法:

    1. 创建永久表(persistent table):您可以使用Flink CDC SQL Client创建永久表,以便在Flink重启后仍然保留表的定义和数据。具体而言,您可以使用CREATE TABLE语句来将表创建为永久表。例如:

    CREATE TABLE my_table (
      id INT,
      name STRING,
      PRIMARY KEY (id)
    ) WITH (
      'connector' = 'jdbc',
      'url' = 'jdbc:mysql://localhost:3306/my_database',
      'table-name' = 'my_table',
      'username' = 'my_username',
      'password' = 'my_password'
    );
    

    在上述示例中,通过在WITH子句中设置'connector' = 'jdbc',可以将表创建为永久表,并将其连接到MySQL数据库。

    2. 使用Flink的状态后端:如果您不希望创建永久表,可以考虑使用Flink的状态后端,以便在Flink重启后仍然保留表的数据。具体而言,您可以将表的数据保存到Flink的状态后端中,以便在Flink重启后从状态后端中恢复表的数据。需要注意的是,使用状态后端可能会对Flink的性能产生一定的影响,因此需要根据具体需求和场景进行权衡和调整。

    2023-07-30 13:57:08
    赞同 展开评论 打赏
  • 北京阿里云ACE会长

    根据您的描述,您在使用 Flink CDC SQL Client 创建的表,在 Flink 重启后消失了。这种情况通常是因为 Flink CDC SQL Client 默认创建的表是临时表(temporary table),在 Flink 重启后会被删除。如果您希望在 Flink 重启后仍然保留表的定义和数据,可以考虑以下两种方法:

    创建永久表(persistent table):您可以使用 Flink CDC SQL Client 创建永久表,以便在 Flink 重启后仍然保留表的定义和数据。具体而言,您可以使用 CREATE TABLE 语句,将表创建为永久表。例如:

    scheme
    Copy
    CREATE TABLE my_table (
    id INT,
    name STRING,
    PRIMARY KEY (id)
    ) WITH (
    'connector' = 'jdbc',
    'url' = 'jdbc:mysql://localhost:3306/my_database',
    'table-name' = 'my_table',
    'username' = 'my_username',
    'password' = 'my_password'
    );
    在上述示例中,通过在 WITH 子句中设置 'connector' = 'jdbc',可以将表创建为永久表,并且将表连接到 MySQL 数据库中。

    使用 Flink 的状态后端:如果您不希望创建永久表,可以考虑使用 Flink 的状态后端,以便在 Flink 重启后仍然保留表的数据。具体而言,您可以将表数据保存到 Flink 的状态后端中,以便在 Flink 重启后从状态后端中恢复表的数据。需要注意的是,使用状态后端可能会对 Flink 的性能产生一定的影响,因此需要根据具体需求和场景进行权衡和调整。

    2023-07-30 12:54:49
    赞同 展开评论 打赏
  • catalogs,此回答整理自钉群“Flink CDC 社区”

    2023-07-01 19:23:30
    赞同 展开评论 打赏

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

相关产品

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

    更多
    SQL Server 2017 立即下载
    GeoMesa on Spark SQL 立即下载
    原生SQL on Hadoop引擎- Apache HAWQ 2.x最新技术解密malili 立即下载