传输通道描述
在数据库和策略之间,进行管理,调整的一个桥梁。为数据应用提供一个更为合理,灵活的框架,保证软件能够进行多数据库配置。
- 作用
为企业数据应用,提供一个桥梁作用,操作方便快捷,简单。 - 功能:
- 数据库和数据应用策略之间桥梁连接作用
- 数据应用过程中,多线程策略管理服务
- 数据应用过程中,针对整个策略中的数据,在通道层,可以整体配置表附加信息
- 加载过程中,DDL的控制粒度,是否执行DDL等操作
- 加载过程中,是否增加辅助列:合并分区列数据、源端生产操作提交时间、数据最后操作类型、目标端数据加载时间、数据首次插入到目标端需要的时间字段。
- 数据加载的过程中,是否完全过滤DDl操作等
- 控制全量、增量数据加载方式
参数参考列表:
参数名 | 参数值 | 参数描述 |
---|---|---|
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 作者:阿力