1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > 金仓数据库 KingbaseES V8.3至V8.6迁移最佳实践(3. KingbaseES移植能力支撑体系)

金仓数据库 KingbaseES V8.3至V8.6迁移最佳实践(3. KingbaseES移植能力支撑体系)

时间:2023-02-17 02:12:01

相关推荐

金仓数据库 KingbaseES V8.3至V8.6迁移最佳实践(3. KingbaseES移植能力支撑体系)

3.KingbaseES移植能力支撑体系

本章节包含以下内容:

迁移工具

KingbaseES应用能力概述

KingbaseES支撑系统割接能力

3.1.迁移工具

KingbaseES 支持应用系统处于离线状态的数据迁移(以下简称离线迁移)和应用系统处于在线状态的数据迁移(以下简称在线迁移)。

离线迁移是指,应用系统在离线状态下,源数据库服务器持续提供服务时,通过KingbaseES 的迁移工具将源数据库的对象定义和数据搬迁到目的数据库。

在线迁移是指,应用系统处于在线状态下,源数据库服务器持续提供服务时,通过KingbaseES 的迁移工具完成对象和数据的搬迁。

3.1.1.数据迁移工具

KingbaseES 提供了KDTS-PLUS 和 KFS 2个工具可以完成迁移数据任务。 KDTS-PLUS 可以用于离线迁移,可以完成数据库中所有所有对象定义的迁移和数据的迁移。 KFS 可以应用于数据的同步,主要应用于表结构和表数据的初始搬迁,以及之后的数据的实时同步。 KDTS-PLUS和KFS 一起部署,可以完成一个大型系统的在线迁移。

KDTS-PLUS的核心任务是将 V8.3 中的数据迁移到KingbaseES V8.6。它完整支持了数据迁移过程中需要的各种特性,包括自定义数据类型映射,并行迁移数据,迁移失败后统计,支持第二次迁移,迁移结束后支持源和目的数据库的数据对比。这个产品是迁移任务中必须使用的工具。

人大金仓提供数据同步产品KFS。进行数据同步的第一步是完成初始数据同步,之后将利用日志分析技术增量同步数据。KFS可以用于V8.3和 V8.6 之间的数据同步,数据集中,包括同步部分数据,同步策略灵活,支持断点续传。

3.1.2.手动迁移调试工具

KingbaseES 提供了2个工具可以完成手动迁移过程中的调试工作:

命令行SQL交互工具 ksql

图形界面SQL交互工具 Kstudio

ksql是命令行的SQL交互工具,轻巧速度快。

Kstudio工具是图形界面的SQL交互工具,易用性较好,同时包含了plsql的调试功能。

3.1.3.系统割接后的数据同步工具

KingbaseES 提供了2个数据同步工具:

KingbaseES 内置的物理同步功能

V8.3 和|version|之间的数据库同步 KFS 产品

KingbaseES 内置物理同步,主要是针对2个KingbaseES产品之间的同步。同步的单位是2个data,不支持同步部分对象。物理同步可以同步所有用户操作,可以执行断点续传,支持重放。

KFS 产品是为了解决 V8.3 和 V8.6 之间的同步,或者同步数据源之间部分对象的同步,同步粒度更加灵活。

若应用系统割接后,用户需要双轨运行,可以视情况选择物理同步或者KFS产品。

3.1.4.系统割接后系统备份工具

KingbaseES 提供了2个备份工具:

逻辑备份sys_dump

物理备份 sys_rman

逻辑备份sys_dump,支持备份对象在某一个执行状态中的定义和数据。不支持增量备份,备份对象选择灵活,可以支持单个表,单个函数等的备份。逻辑备份无法和redo日志一起使用。

物理备份sys_rman备份整个实例的数据,不支持备份单个数据库或者单个表,但是支持增量备份。

3.2.KingbaseES应用能力概述

V8.3的移植的工作较少,这些工作量主要来源于两方面:

应用开发移植需求:在数据对象类型、SQL语言、PL/SQL语言、客户端应用编程接口和开发框架等诸多方面对两个数据库所进行的、大量的语法或功能的对齐处理。同时,源应用系统使用的第三方产品或者组件,目标数据库同样需要支持。

应用系统运行需求:高可用方案是否支持,性能是否满足需求。

3.2.1.支持的模式对象

KingbaseES支持数据库、表空间、模式、用户和角色。同时支持模式下的如下对象。

KingbaseES 支持的函数和视图,请参见 KingbaseES SQL 参考手册和KingbaseES 数据库参考手册。

3.2.2.SQL

在KingbasES支持的SQL中,除了3.2.1 中提到的对象的CREATE/ALTER/DROP之外,还提供了其他SQL访问接口:

数据操作

INSERT | UPDATE | DELETE

TRUNCATE

MERGE INTO

INSERT FIRST/ALL

COPY

CLUSTER

数据查询

SELECT

层次查询CONNECT BY

LATERAL 子句

外连接操作符(‘+’)

WITH [ RECURSIVE ] 子句

PREPARE, EXECUTE

VALUES 子句

EXPLAIN

数据整理

ANALYZE

VACUUM

REINDEX

事务控制语句

BEGIN,START TRANSACTION

COMMIT

ROLLBACK

SAVEPOINT | RELEASE SAVEPOINT | ROLLBACK TO SAVEPONIT

SET TRANSACTION { READ ONLY | READ WRITE }

PREPARE TRANSACTION

权限语句

GRANT

REVOKE

3.2.3.PL/SQL

KingbaseES支持如下 PL/SQL的常用语法:

赋值语句

IF-THEN-ELSE语句

CASE语句

多种循环语句,如LOOP语句、WHILE-LOOP语句和FOR LOOP语句

%TYPE属性和%ROWTYPE属性

REF CUSOR游标

预定义异常和自定义异常

%NOTFOUND、%FOUND、%ISOPEN 和 %ROWCOUNT游标属性

RETURNING INTO语句

EXECUTE IMMEDIATE语句

动态SQL

BULK COLLECT

消息输入RAISE

PL/SQL支持集合类型(关联数组、嵌套表、可变数组)

KingbaseES 支持如下 PL/SQL 常用对象:

触发器(行级触发器,列级触发器,事件触发器)

函数,嵌套函数

存储过程

匿名块

Package

OBJECT TYPE

3.2.4.客户端编程

KingbaseES 支持如下编程接口和开发框架。

3.2.5.第三方产品和组件

KingbaseES目前已经和超过1200家的软硬件产品完成适配,涵盖CPU、存储、操作系统、中间件、备份软件、办公OA、报表、安全邮件、流版签、信息安全、地理信息等多类的主流产品都已覆盖。

支持POSTGIS 组件。

3.2.6.高可用

KingbaseES支持完善的高可用方案,为客户提供的一系列产品和方案能够解决无法预测的停机及计划停机造成的常见问题,并且能以最低的成本进行部署。

支持多种物理备份和逻辑备份,支持多种集群,支持物理同步,支持逻辑同步。具体请参见高可用。

3.2.7.性能

随着企业业务数据量呈爆炸式增长,数据库性能问题变得越来越突出。通常,数据库性能优化是一个系统工程。而不同的场景下,对性能的关注点也会有所不同,KingbaseES分别采用更有针对性的优化技术来保证用户的各种应用均可得到高性能的支撑。

KingbaseES 在数据装载,事务性应用场景,分析性应用场景都有针对性的性能优化,具体请参见《KingbaseES数据库性能调优指南》 。

3.2.8.相关技术资源

本指南重点从语句兼容特性、迁移工具、迁移场景和应用程序移植等几方面描述移植的关键技术和实现方式。在每项技术和实现方式的描述上,本指南只提供有限的内容介绍,并未提供全面的细节说明。所以,用户若需了解某些技术的实现细节还请参照相关的技术资料,这些资料诸如:

KingbaseES 数据库管理指南:详尽和全方位地介绍如何高效管理KingbaseES数据库系统。其中,这些管理诸如用户管理、存储管理、模式对象管理等。

KingbaseES 开发指南:提供了JDBC、ODBC、DCI和ESQL等应用编程接口的详细使用说明。

KingbaseES 高可用指南:详细描述了系统在高可用方面的支持。

KingbaseES 安装指南:全面介绍了KingnaseES各种工具的使用方法,这些工具如SQL交互工具KSQL和数据迁移工具KDTS-PLUS等。

KingbaseES 数据库调优指南:详细描述了系统提供的优化能力。

3.3.KingbaseES支撑系统割接能力

本章主要描述除了产品对应用运行的支撑以外,对系统割接上线过程中的需求是否都满足。

3.3.1.应用业务割接时间短

应用业务无法停机,或者用于割接的时间非常端,就需要说过同步工具持续同步数据。

评估系统割接需要的最短时间,协调用户预留最短时间;

做出系统割接失败的回退预案,一旦割接失败,快速退回原有系统;

使用迁移工具KDTS-PLUS完成历史数据迁移;

使用KFS 进行 V8.3 和|version|的持续同步。

源数据库和目的数据库的数据差异小于预留的时间时,就可以进行系统割接。

3.3.2.割接后需要双轨运行

若应用迁移时间短,没有足够的测试时间和试运行时间,用户可以采用割接后双轨运行,应用系统运行在一个数据库上,数据库中的数据实时同步到另一个数据库中;一旦应用出现问题,可以快速切换到另一个数据库中。

KFS 支持KingbaseES和异构数据库的实施同步。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。