基本概念
本文介绍了 MDB 系统中涉及到的一些基本概念,如:节点、通道、对象、任务等。
节点
在 MDB 系统中,节点是复制过程中的端点,对应一个数据库系统。
节点可以是本地(即与 MDB 系统位于同一台机器上)或远程(位于远程机器上)。
节点可以作为源库使用,即从节点中进行数据抓取,也可以作为目标库使用,即将数据同步到节点数据库中。
节点中涉及到的概念描述如下:
概念 | 描述 |
---|---|
节点类型 | 数据库类别,例如: Oracle, MogDB, DB2, MySQL等,目前支持: Oracle、MogDB、MySQL、PostgreSQL、SQL Server |
节点名称 | 自定义名称( 2-30 位字母数字下划线横杆等符号组成,开头必须字母或数字) |
IP | 数据库服务监听 IP 地址 |
端口 | 数据库服务监听端口 |
服务名/库名 | 数据库服务名、SID、库名等 |
服务名/库名类型 | Oracle连接类型,仅oracle可以选择,可选值: ServiceName、SID |
用户名 | 数据库连接用户 |
密码 | 连接用户的密码 |
关联通道数 | 被通道使用的通道数量 |
更新时间 | 操作时间 |
通道
在 MDB 系统中,通道是一个逻辑单元,通过一系列操作连接源节点和目标节点。 数据复制、调度、错误处理、性能调整和其他操作都发生在通道中。 MDB 将通道内的数据从源节点同步到目标节点。 目前一个通道中仅支持一个源节点和一个目标节点,即实现一对一的数据同步复制。
通道中涉及到的概念描述如下:
概念 | 描述 |
---|---|
通道名称 | 自定义名称( 2-30位字母数字下划线横杆等符号组成,开头必须字母或数字) |
源节点 | 用于数据抓取的节点,即待同步的数据库节点 |
目标节点 | 需要同步数据的目标节点,源节点中抓取到的数据,会同步写入此目标节点 |
状态 | 通道当前状态,目前有如下状态: 初始化 预检查 结构同步 数据同步 |
异常对象数 | 通道中选择同步的对象数量 |
最后更新时间 | 操作时间 |
对象
在 MDB 系统中,对象是复制的基本单位,在数据库中代表 TABLE、SEQUENCE、VIEW、SYNONYM 等。
对象中涉及到的概念描述如下:
概念 | 描述 |
---|---|
源 Schema | 源节点 schema 名称(Oracle中为用户名,MySQL中为库名) |
源名称 | 源节点的对象名,在对象选择操作中选择 |
对象类型 | 源库中的对象类型:支持可选择的对象类型 |
目标 Schema | 同步到目标节点的 schema 名 |
目标名称 | 同步到目标节点的对象名 |
字段变更 | 字段映射配置中,目标端字段名变更的数量 |
是否跳过结构 | 选择是否同步对象的结构 |
是否跳过全量 | 选择是否同步对象的全量数据 |
是否跳过增量 | 选择是否同步对象的增量数据 |
同步状态 | 展示对象的当前同步状态 |
字段映射
节点表结构映射,展示表字段、数据类型、精度等信息, 可变更目标端 schema 名、表名、字段名,修改后不随规则映射配置变更。
字段映射中涉及到的概念描述如下:
标题 | 描述 |
---|---|
源端 | 源节点表结构 |
目标端 | 目标节点表结构 |
字段名 | 表列名,支持目标端修改 |
类型 | 数据类型 |
精度 | 数据长度 |
标度 | 数据标度 |
允许为空 | 是否允许数据为空 (Y, N) |
规则映射
通道中 schema 和对象同步到目标端名字变更规则,对在字段映射中,对目标端 schema 名和表名做的变更不生效。
规则映射中涉及到的概念描述如下:
概念 | 描述 |
---|---|
源端 Schema | 字符串,匹配源端 schema 名,大小写敏感(Oracle中为大写,MogDB、MySQL、PostgreSQL、SQL Server中为小写) |
目标 Schema | 字符串,替换为目标 schema 名,大小写敏感(Oracle中为大写,MogDB、MySQL、PostgreSQL、SQL Server中为小写) |
替换规则 | 对象映射规则类型: 字符替换:针对源库对象名称中出现的指定字符串,全部替换为指定的目标字符串。 正则替换:使用正则规则进行替换,即将源库对象名称中符合正则规则的字符串,全部替换为指定的目标字符串。 |
源端搜索 | 字符串或正则表达式,匹配源节点对象名 |
目标替换 | 字符串,源端搜索匹配到的部分,替换为目标端替换字符串 |
通道-高级参数
在 MDB 系统中,高级参数控制着通道同步过程中的逻辑, 例如 skipSnapShot 是否跳过快照,只同步增量数据,overrideMode 是否覆盖目标节点已存在的对象等。
通道高级参数中涉及到的概念描述如下:
概念 | 描述 |
---|---|
参数名称 | 高级参数名称 |
参数值 | 参数的默认值,可以编辑修改 |
参数说明 | 参数名的描述 |
通道-操作
在 MDB 系统中,操作控制同步任务,检查配置,对象同步,数据的捕获和写入,同步任务开始和暂停。
任务汇总
- 一键同步: 从当前通道状态向后依次自动执行,直到增量启动。
- 预检查: 执行同步前的环境检查,主要包括:节点连接、字符集、时区、补充日志、数据库配置、表冲突、命名规范等
- 结构同步: 执行对象结构同步,目前包含:Schema、Table、Index、Constraint、Synonym、Sequence、View、Trigger、Procedure、Function、Package
- 结构同步复位: 复位结构同步操作,将删除通道内所有表的结构同步进度和记录
- 数据同步暂停: 暂停数据同步,停止数据抽取和数据投递服务
- 数据同步启动: 启动数据同步,执行数据同步,恢复数据抽取和数据投递服务
- 数据同步复位: 复位数据同步操作,将删除通道内所有表的数据同步进度和记录
- 暂停抽取: 暂停数据抽取服务
- 暂停投递: 暂停数据投递服务
- 启动抽取: 恢复数据抽取服务
- 启动投递: 恢复数据投递服务
运行日志
数据同步操作后,数据捕获和目标节点写入的过程日志。
预检查详情
预检查操作,执行检查项信息。
标题 | 描述 |
---|---|
检查项 | 检查项名 |
检查说明 | 检查项说明 |
检查时间 | 检查时间 |
状态 | 成功、失败、警告 |
对象同步异常
对象同步操作,同步过程中失败的信息。
标题 | 描述 |
---|---|
对象类型 | 同步的对象类型:SCHEMA、TABLE、INDEX、CONSTRAINT、SYNONYM、SEQUENCE、 VIEW、TRIGGER、PROCEDURE、FUNCTION、PACKAGE |
源端 Schema | 源节点中的 schema 名称 |
源端名称 | 源节点对象名 |
目标端 Schema | 目标节点中的 schema 名称 |
目标端名称 | 目标节点对象名 |
迁移时间 | 对象同步时间 |
同步结果 | 对象同步执行结果:失败、警告 |
操作 | 重新执行:重新执行目标端SQL |
目标端 SQL | 目标节点执行的 SQL 语句,支持编辑、格式化、复制 |
目标端错误信息 | 目标节点执行目标端 SQL 异常内容 |
数据同步任务详情
任务详情涉及到的概念描述如下:
概念 | 描述 |
---|---|
数据抽取 | 从源节点抓取数据的服务,状态:正常、异常、暂停 |
数据投递 | 向目标节点同步数据的服务,状态:正常、暂停 |
目标schema | 目标节点中的schema名称 |
目标表 | 目标节点中的表名 |
全量条数 | 同步快照数据数量 |
全量同步状态 | 快照同步状态: 待同步、同步中、跳过、已完成、暂停、异常 |
增量条数 | 同步增量数据数量 |
增量同步状态 | 增量数据同步状态: 正常、暂停、异常 |
数据校验任务详情
任务详情涉及到的概念描述如下:
概念 | 描述 |
---|---|
源schema | 源节点中的 schema 名称 |
源表名 | 源节点中表名 |
目标schema | 目标节点中的 schema 名称 |
目标表名 | 目标节点表名 |
job类型 | 执行类型 MVD |
源表总数 | 源表记录数 |
源差异行数 | 源表与目标表差异记录数 |
目标表总数 | 目标表记录数 |
目标差异行数 | 目标表与源表差异记录数 |
开始时间 | 任务开始时间 |
结束时间 | 任务结束时间 |
任务状态 | 任务状态:NOT_STARTED、 PENDING、 RUNNING、 FINISHED、 ERROR、STOPPED、WAITING |
结果状态 | 结果状态: 数据一致、数据不一致、解析失败 |
失败数据详情
详情涉及到的概念描述如下:
概念 | 描述 |
---|---|
源 | 源节点中的 schema.table 名称 |
目标 | 目标节点中的 schema.table 名称 |
更改前数据 | 更新前数据 |
更改后数据 | 更新后数据 |
操作类型 | 类型:FULL_SYNC、INSERT、 UPDATE、 DELETE |
异常原因 | 同步失败原因 |
迁移时间 | 失败时间 |
操作 | 丢弃:不执行同步,重试:再次同步 |