# TableRename 转换组件使用说明
# 组件说明
用于对数据流中的表名进行重命名。这在处理多表同步或需要将中间结果注册为新表的场景中非常有用。
核心使用场景是 在多表同步 / 整库同步场景下,修改数据的表名标识字段,解决源表名与下游目标表名不一致、表名需要标准化或脱敏的问题。
# 典型使用场景
# 1、源表名与下游表名映射标准化
当源表名不符合下游存储的命名规范,或需要将源表名映射为业务约定的表名时,通过该组件修改 table_name 字段的值。
- 表名格式标准化:源 MySQL 表名是大写或混合大小写(如 USER_INFO、Order_Detail),下游 Hive 要求表名全小写,需将 table_name 统一转换为小写(如 user_info、order_detail)。
- 源表名与业务表名映射:源表名是缩写(如 usr、ord),下游需要更语义化的表名(如 user、order);或源表名包含敏感前缀(如 test_usr),需要剔除前缀后同步。
# 2、多源表名冲突时的重命名
当同步多个数据源的表时,可能出现同表名不同业务的冲突(如 A 库的 user 表和 B 库的 user 表),通过 TableRename 为表名添加数据源前缀,避免冲突。
- 将 A 库的 user 表名改为 a_user,B 库的 user 表名改为 b_user,确保下游存储表名唯一。
# 3、表名脱敏 / 合规处理
当源表名包含敏感信息(如业务线名称、部门标识),而下游系统不允许存储敏感表名时,通过 TableRename 对表名进行脱敏处理。
- 源表名 finance_order 包含敏感词 finance,需修改为 biz_order 后再同步到下游公共数仓。
# 4、配合 TableFilter 实现精准多表筛选
先通过 TableRename 统一表名格式,再用 TableFilter 筛选目标表,避免因表名大小写、格式不一致导致筛选失效。
- 源表名有 USER、user、User 多种格式,先统一改为小写 user,再用 TableFilter 筛选 user 表数据。
# 配置项说明
| 配置名称 | 数据类型 | 是否必填 | 默认值 | 描述 |
|---|---|---|---|---|
| 节点名称 | String | 是 | TableRename | 当前创建的节点名称,由用户自定义且不可为空。命名可包含字母、数字、下划线。确保唯一性。 |
| 节点编码 | String | 是 | 自动生成 | 当前创建的节点编码,以此标识此组件,由用户自定义且不可为空。命名可包含字母、数字、下划线。确保唯一性。 |
| 表匹配方式 | List | 是 | 正则匹配 | 两种匹配方式:正则匹配、精确匹配。 正则匹配:需要输入正则表达式。 精确匹配:需要选择精确匹配的表。 两种匹配方式可以同时选择。 |
| 表名称 | String | 是 | - | 源表名称 |
| 重命名为 | String | 是 | - | 重命名后的表名称。内置8种重命名规则:同名映射、转大写、转小写、源表驼峰转下划线大写、源表驼峰转下划线小写、统一前缀、统一后缀、正则替换。 |