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

Flink CDC中这里的维度表是 CDC捕获变化一次它就重新查一次还是:只查开始的那一次?

Flink CDC中这里的维度表是 CDC捕获变化一次它就重新查一次还是:只查开始的那一次?我是SQL。
c6226d9da1c606be342583b0fb007295.png
CREATE TABLE ord_retail_order_bill (
bill_no STRING,
source_bill_no STRING,
complete_date TIMESTAMP,
create_date TIMESTAMP,
member_id INT,
sale_type INT,
remarks STRING,
member_phone STRING,
lastchanged TIMESTAMP,
is_web STRING,
channel_id INT,
shop_id INT,
type STRING,
status INT,
id BIGINT ,
PRIMARY KEY(id) NOT ENFORCED
) WITH (
'connector' = 'mysql-cdc',
'hostname' = '192.168.173.136',
'port' = '3306',
'username' = '**',
'password' = '**',
'database-name' = 'e3plus_order',
'table-name' = 'ord_retail_order_bill',
'scan.startup.mode' = 'initial'
);

CREATE TABLE ord_retail_ord_goods_detail (
qty INT,
tax_inclusive_price decimal(12, 4),
total_tax_price decimal(12, 4),
price_standard decimal(12, 4),
remark STRING,
shop_staff_code STRING,
shop_staff_name STRING,
promotion_id STRING,
promotion_no STRING,
promotion_name STRING,
retail_order_bill_id BIGINT,
goods_id INT,
id BIGINT
) WITH (

'connector' = 'jdbc',
'url' = 'jdbc:mysql://192.168.173.136:3306/e3plus_order?characterEncoding=UTF-8',
'table-name' = 'ord_retail_ord_goods_detail',
'username' = '**',
'password' = '**'
);

CREATE TABLE bas_channel (
CODE STRING,
NAME STRING,
ID INT
) WITH (

'connector' = 'jdbc',
'url' = 'jdbc:mysql://192.168.173.136:3306/e3plus_support?characterEncoding=UTF-8',
'username' = '**',
'password' = '**',
'table-name' = 'bas_channel'
);

CREATE TABLE gds_btgoods (
code STRING,
name STRING,
brandid BIGINT,
id INT
) WITH (
'connector' = 'jdbc',
'url' = 'jdbc:mysql://192.168.173.136:3306/e3plus_goods?characterEncoding=UTF-8',
'username' = '**',
'password' = '**',
'table-name' = 'gds_btgoods'
);

CREATE TABLE bas_brand (
code STRING,
id INT
) WITH (
'connector' = 'jdbc',
'url' = 'jdbc:mysql://192.168.173.136:3306/e3plus_goods?characterEncoding=UTF-8',
'username' = '**',
'password' = '**',
'table-name' = 'bas_brand'
);

CREATE TABLE ord_retail_return_bill (
id BIGINT ,
bill_no STRING ,
relate_order_bill_no STRING ,
complete_date STRING ,
create_date STRING ,
member_id STRING ,
remark STRING ,
member_phone STRING ,
is_web STRING ,
channel_id INT ,
shop_id INT ,
type STRING ,
status INT
) WITH (
'connector' = 'jdbc',
'url' = 'jdbc:mysql://192.168.173.136:3306/e3plus_order?characterEncoding=UTF-8',
'username' = '**',
'password' = '**',
'table-name' = 'ord_retail_return_bill'
);

CREATE TABLE ord_retail_return_gds_de (
id BIGINT ,
qty INT,
tax_inclusive_price DOUBLE,
total_tax_price DOUBLE,
market_price DOUBLE,
remark STRING,
shop_staff_code STRING,
shop_staff_name STRING,
return_bill_id BIGINT,
source_detail_id BIGINT,
goods_id INT
) WITH (
'connector' = 'jdbc',
'url' = 'jdbc:mysql://192

展开
收起
十一0204 2023-07-26 06:39:36 111 0
3 条回答
写回答
取消 提交回答
  • 在 Flink CDC 中,维度表的更新方式取决于具体的实现和配置。通常情况下,维度表在 CDC 捕获到变化时会进行重新查询,以获取最新的数据。

    当 CDC 捕获到维度表的变化时,Flink CDC 会根据配置的逻辑对维度表进行更新。这可能包括重新查询整个维度表或仅查询发生变化的部分数据(增量更新)。

    一般来说,维度表在每次变化时都会重新查询,以确保获取最新的数据。这是为了保持维度表与源系统的同步,并提供准确的数据。

    但是,具体的实现和配置可能因使用的 CDC 工具、数据库类型等而有所不同。某些情况下,可以通过配置选项来指定是否只查询开始的那一次。这通常用于处理历史数据加载或初始化的场景。

    如果你正在使用特定的 CDC 工具或库,建议查看其文档或配置文件,以了解维度表更新的具体行为和选项。

    2023-07-31 23:39:39
    赞同 展开评论 打赏
  • 北京阿里云ACE会长

    在 Flink CDC 中,维度表的更新方式取决于您所使用的具体实现方式。一种常见的实现方式是使用全量表(Full Table)和增量表(Delta Table)来更新维度表。
    在这种实现方式中,全量表包含了目标表的所有数据,而增量表则包含了源表中发生变化的数据。在 Flink CDC 中,可以通过配置 CDC Connector 的参数来指定使用全量表还是增量表来更新维度表。
    如果使用全量表更新维度表,每次 CDC Connector 将全量表同步到目标表时,都会重新查询一次维度表的数据。因此,每次更新维度表都需要重新查询一次。
    如果使用增量表更新维度表,CDC Connector 只会同步源表中发生变化的数据到增量表中,然后使用增量表来更新维度表。在这种情况下,CDC Connector 不需要重新查询维度表的数据,只需要使用增量表中的数据来更新维度表即可。

    2023-07-29 18:02:15
    赞同 展开评论 打赏
  • 意中人就是我呀!

    "你这个没有使用维表join,直接用的表join,那几个定义为维表的source 都已经finish了,正常应该是持续running。FOR SYSTEM_TIME AS OF xx AS 这样的语法。
    此回答整理至钉群“Flink CDC 社区”。此回答整理至钉群“Flink CDC 社区”"

    2023-07-26 12:02:56
    赞同 展开评论 打赏

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

相关产品

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

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