传输通道描述

 在数据库和策略之间,进行管理,调整的一个桥梁。为数据应用提供一个更为合理,灵活的框架,保证软件能够进行多数据库配置。

  • 作用
    为企业数据应用,提供一个桥梁作用,操作方便快捷,简单。
  • 功能:
  1. 数据库和数据应用策略之间桥梁连接作用
  2. 数据应用过程中,多线程策略管理服务
  3. 数据应用过程中,针对整个策略中的数据,在通道层,可以整体配置表附加信息
    • 加载过程中,DDL的控制粒度,是否执行DDL等操作
    • 加载过程中,是否增加辅助列:合并分区列数据、源端生产操作提交时间、数据最后操作类型、目标端数据加载时间、数据首次插入到目标端需要的时间字段。
  4. 数据加载的过程中,是否完全过滤DDl操作等
  5. 控制全量、增量数据加载方式
    参数参考列表:
参数名 参数值 参数描述
full_error_ignore 0 全量用sql绑定方式加载时,如果此时表没有主键的话,设置为1,可以忽略全量装载期间的错误
full_load_with_pk 1 设置为1时,全量装载时先建主键和唯一索引再装载数据,默认为0,装载完数据之后再建主键和其他索引
full_sql_mode 0 全量装载时使用SQL模式,0位load方式装载,1位sql绑定方式加载,2位直接使用sql语句加载,默认为0,load方式加载
IfChangeColumnNameCase 0 是否修改目标端列名的大小写,0 不修改,按照原来的大小写,1修改为大写,2修改为小写,默认为0
IfChangeSameDatabaseDatatype 0 是否针对同种数据库类型,转换为ZCBUS数据类型,如果为1,则返回源数据的SQL语句,如果为0,则返回ZCBUS翻译的SQL语句
ifFilterDDL 0 全量、增量期间,是否过滤DDL,0,不过滤,1过滤
ifFilterDelete 0 设置为1时,增量装载过程中过滤掉delete操作,默认为0不过滤
ifFilterInsert 0 设置为1时,增量装载过程中过滤掉insert操作,默认为0不过滤
ifFilterUpdate 0 设置为1时,增量装载过程中过滤掉update操作,默认为0不过滤
ifRepairDataForUpdate 1 是否启用自动修复数据功能 1 允许启用更新失败自动修复, 0 不启用自动修复,兼容JAVA/C
IfSplitUpdateMessage 0 是否拆分update message,默认为0,设置为1时,如果update可并发,会拆分并发装载
IfUpdateSplitDeleteInsert 0 设置为1时,将update转成delete+insert装载,默认为0
indexspacename 索引存储表空间
kafka_consume_timeout 1000 消费KAFKA集群中消费超时时间,单位毫秒,默认5000毫秒,最小为1000毫秒。设置小于1000毫秒,则设置参数失效
max_message_size 5242880 客户端装载目标是kafka、rocketmq、rabbitmq时,发送的最大的消息长度,单位是字节,默认是5242880,设置为0的话,每行数据都会拆分成单条发送
max_consume_message 64 设置一次消费的最大消息数,默认32,最大64,最小为装载线程数
max_sql_length 0 SQL_MODE=2的情况下生效,直接sql语句装载时,如果目标库支持一条insert可以包含多个values的模式,该参数可以设置为一条insert的sql语句的最大长度,默认为0,一次插入一条数据
no_message_restart_interval 0 可以设置当一段时间内一直消费不到数据,重启通道进程,单位秒,设置重启间隔为0则不会重启进程,最小间隔为60
real_delay_load_max 0 增量延迟加载最大时间,单位为分钟,默认为0,不延迟。real_delay_load_min和real_delay_load_max必须同时设置,而且real_delay_load_max需要大于real_delay_load_min。如果(当前时间-kafka里数据的时间) <= real_delay_load_min,则暂时不加载,等到(当前时间-kafka里数据的时间) > real_delay_load_max启动加载,直到(当前时间-kafka里数据的时间) <= real_delay_load_min暂停加载,进入下一轮等待
real_delay_load_min 0 增量延迟加载最小时间,单位为分钟,默认为0,不延迟
ZCBUS_TARGET_OPTIME 0 增量同步期间,是否增加增量操作时间列,0不增加,1增加,兼容C
real_sql_mode 0 增量装载时使用sql模式,0为load方式装载,1为sql绑定方式装载,2为直接使用sql方式装载,默认为1,sql绑定方式加载
RepairDataofNULL 如果NOT NULL列插入NULL,替换成设置的字符串
tablespacename 表存储 表空间
type_map 类型映射,格式 源类型1:目标类型1,源类型2:目标类型2
update_to_insert_cols_diff_skip 0 update转为delete+insert时,如果update的after和before数据的列组合起来仍然不够实际列数时,是否跳过,默认为0,不跳过
zcbusmq_mode 0 设置为1时,全量数据发布时使用zcbus消息队列模式,存储到本地,默认为0
load_with_tag 0 双向复制时使用此参数,设置为1时,如果目标库是mysql,装载时不写binlog日志;****如果目标库是oracle,装载时打上tag;如果目标库是sqlserver,装载时加交易名
ZCBUS_INSERT_OPTIME 0 全量期间,数据首次插入时间记录字段,兼容C
ZCBUS_SOURCE_OPTIME 0 是否添加源端commit时间信息列,0不添加,1添加,兼容C
ZCBUS_SOURCE_OPTYPE 0 是否添加操作类型列,全量期间默认为INSERT/增量跟进实际操作类型记录,0不添加,1添加,兼容C
ZCBUS_SOURCE_PART 是否添加辅助列,空,则不添加,否则为全量期间,自动增加该字段,兼容C;如果内容含冒号:colname:value格式,则显示列名和列对应的值。;如果没有冒号,则为value,列名为ZCBUS_SOURCE_PART
statistics_into_influxdb 0 是否将增量信息记录到influxdb中 0 不添加 1添加
merge_kafka_message 1 默认0,单包加载处理,设置为1时,增量消费时同一个表连续的小包会进行合并,目前是insert和delete的小包会合并,最多合并成5M
output_data_format 0 目标为kafka、rocketmq、rabbitmq时,输出的内容格式:0: 输出json格式 1: 输出sql语句格式
compress_level 0 目标为rocketmq时,设置压缩级别,范围是0 - 9
delete_before_insert 0 设置为1时,如果bsd包里的操作全是insert的时候,会先批量删除,再执行插入
load_error_retry_times 3 加载出现错误后,重试次数,最小三次,可以设置处理N次
count_after_full_sync_end 1 设置为1时,全量装载完成时对表进行select count操作,统计目标库的总记录数,默认为1
compatible_with_old_bsdata 0 设置为1时,对旧版本的bsd数据里的列类型转换为新类型后装载
insert_parallel_load 1 目标端为数据库时,可以控制对于同一张表的insert操作是否可以并发装载,默认为1,可以并发装载,设置为0时,取消并发装载
delete_parallel_load 1 目标端为数据库时,可以控制对于同一张表的删除操作是否可以并发装载,默认为1,可以并发装载,设置为0时,取消并发装载
audit_mode 0 设置为1时,开启审计模式:
1.自动添加ZCBUS_SOURCE_OPTYPE列记录操作类型
2.全量只建表不建主键和索引,增量ddl全部过滤。
3.所有dml操作自动转为insert操作,insert操作的类型是insert,update操作拆分为2条,before值的操作类型是updatebefore,after值的操作类型为update,delete操作的类型是delete
dml_error_skip 0 设置为1时,可以跳过出错的dml操作,目标为restapi时,可以拆分发送,跳过出错的内容
database_update_interval 0 配置数据库统计信息和offset更新的间隔时间,单位为分钟,默认为0,装载完之后马上更新配置表
multi_table_merge_mode 多表合一参数,设置为1时,该通道使用多表合一模式,该功能主要用于对分布式数据库的分表数据进行合并装载,去掉多余的ddl操作,通道内配置的多个表需要源端表结构完全一致,多个表发起订阅时,需要所有表一起发起。此参数修改,需要重启服务才能生效
文档更新时间: 2021-12-05 02:02   作者:阿力