10.1.1. 简介

LightDB 多发比对 是一款基于Java语言开发的用于验证SQL语句在oracle或mysql与不同信创数据库之间SQL执行结果是否一致的验证工具。目标是降低业务部门适配信创数据库的成本,实现系统平滑迁移到信创数据库。

10.1.2. 功能特性

  • 业务为中心,业务系统0改造,支持一键参数配置,快速实现真多发、伪多发两种模式接入;

  • 快速、精确提示比对成功、及失败的sql;

  • 多发比对服务支持一键部署,快速安装及使用;

10.1.3. 关键名词

名词

描述

源库

指的是业务多发的源数据库,一般为非信创数据库,以Oracle、Mysql数据库为主。如Oracle->DM,则Oracle为目标数据库。

目标库

指的是业务多发的目标数据库,如Oracle->DM,则DM为目标数据库。

微服务

指代的是业务系统中的微服务,微服务集成统一sql后,业务操作产生运行时sql被统一sql拦截后发送到比对服务。

真多发

业务sql经过统一sql进行转化后,由统一sql进对业务sql解析、转为为目标库的sql后,再由sql-convert-runtime,发送到目标数据库进行sql执行。

伪多发

和真多发相反,业务sql不经过统一sql转化,由业务网关发送到目标数据库进行sql执行。

studio工具

进行数据库管理,及多发体验的小工具。

统一sql

用于源库和目标库之间的sql转化,确保在目标库和源库执行结果一致。

比对服务

将在源库、目标库的执行结果在比对服务器进行比较,给出比较成功或失败的结果,并提示失败的原因。

pulsar

订阅pulsar主题,消费消息,传递源库、目标库的执行结果到比对服务器。

10.1.4. 支持范围

多发列表

源库

多发目标库

支持的多发模式

oracle 19c

lightdb_oracle

真多发

oracle 19c

gaussdb_oracle 505

真多发

oracle 19c

达梦 8

真多发

oracle 19c

oceanbase_oracle

真多发

mysql 8 / mariadb 10

lightdb_mysql

伪多发

mysql 8 / mariadb 10

oceanbase_mysql

伪多发

mysql 8 / mariadb 10

gaussdb_oracle 500

真多发

10.1.5. 使用说明

学习、体验多发比对服务:

  • 1.安装比对服务,参照第4、5章 多发比对服务部署;

  • 2.参照第6章 studio集成多发(体验)使用方法进行体验。

    业务生产使用比对服务:

  • 1.确认业务集成模式,确认真多发还是伪多发;

  • 2.安装比对服务,参照第4、5章 多发比对服务部署;

  • 3.真多发,参照第7章多发模式进行使用;伪多发,参照第8章多发模式进行使用