Flink CDC系列之:学习理解核心概念——Route

Route

Route 指定匹配一串 source-table 到 sink-table 的规则,最典型的场景是分库分表合并,将多个上游 source 表路由到同一张 sink 表。

参数

要描述路线,需要以下内容:

参数 含义 可选/必需
source-table 源表id,支持正则表达式 必须
sink-table 接收表id,支持符号替换 必须
replace-symbol 接收表中用于模式替换的特殊符号,将被原始表名替换 可选
description 路由规则描述(提供默认值) 可选

示例

将一个Data Source表路由到一个Data Sink表

假设将数据库mydb中的表web_order同步到Doris的一张表ods_web_order,我们可以用这个yaml文件来定义这个路由:

bash 复制代码
route:
  - source-table: mydb.web_order
    sink-table: mydb.ods_web_order
    description: sync table to one destination table with given prefix ods_

将多个数据源表路由到一个数据接收器表

另外,如果要将数据库 mydb 中的分片表同步到 Doris 的一张表 ods_web_order 中,我们可以用这个 yaml 文件来定义这条路由:

bash 复制代码
route:
  - source-table: mydb\.*
    sink-table: mydb.ods_web_order
    description: sync sharding tables to one destination table

通过组合路线规则实现复杂路线

另外,如果要指定多种不同的映射规则,我们可以用这个yaml文件来定义这个路由:

bash 复制代码
route:
  - source-table: mydb.orders
    sink-table: ods_db.ods_orders
    description: sync orders table to orders
  - source-table: mydb.shipments
    sink-table: ods_db.ods_shipments
    description: sync shipments table to ods_shipments
  - source-table: mydb.products
    sink-table: ods_db.ods_products
    description: sync products table to ods_products

路由规则中的模式替换

如果您想要路由源表并将其重命名为具有特定模式的接收表,则可以使用 replace-symbol 来类似于源表名称,如下所示:

bash 复制代码
route:
  - source-table: source_db.\.*
    sink-table: sink_db.<>
    replace-symbol: <>
    description: route all tables in source_db to sink_db

然后,所有表(包括 source_db.XXX)都将被轻松路由到 sink_db.XXX。

相关推荐
曲幽1 个月前
FastAPI入门:从简介到实战,对比Flask帮你选对框架
python·flask·fastapi·web·route·uv·uvicorn·docs
曲幽2 个月前
Flask路由入门指南:从基础定义到优先级与动态路由转换器
python·flask·web·route·path
曲幽2 个月前
Flask项目结构详解:用蓝图实现优雅的模块化开发
python·web·route·blueprint·register
曲幽2 个月前
Flask项目目录结构指南:从单文件到模块化
python·web·model·route·项目结构
最笨的羊羊2 个月前
Flink CDC系列之:Kafka Sink 的序列化器PipelineKafkaRecordSerializationSchema
pipeline·schema·kafka sink·flink cdc系列·serialization·序列化器·kafkarecord
最笨的羊羊2 个月前
Flink CDC系列之:Kafka 变更日志 JSON 格式工厂类 ChangeLogJsonFormatFactory
json·flink cdc系列·changelog·kafka 变更日志·json 格式工厂类·formatfactory
最笨的羊羊2 个月前
Flink CDC系列之:Kafka Debezium JSON 序列化器的实现DebeziumJsonSerializationSchema
kafka·debezium·schema·flink cdc系列·serialization·序列化器·debezium json
最笨的羊羊2 个月前
Flink CDC系列之:Kafka 数据接收器配置选项类KafkaDataSinkOptions
kafka·flink cdc系列·kafkadata·数据接收器配置选项类·sinkoptions
曲幽2 个月前
Flask路由参数处理:GET与POST的实战指南
python·web·route·form·get·post
最笨的羊羊2 个月前
Flink CDC系列之: Kafka 数据接收器工厂类KafkaDataSinkFactory
kafka·flink cdc系列·数据接收器工厂类·kafkadata·sinkfactory