检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
使用CDM迁移Oracle数据至GaussDB(DWS)集群 迁移流程 准备工具 迁移表定义 迁移表全量数据 迁移业务SQL 父主题: 数据迁移
目实际迁移时建议在技术支持人员的指导下完成。 图2 Oracle迁移到DWS基本流程 表1 Oracle迁移到DWS基本流程 流程 描述 准备工具 迁移前需准备的软件工具。 迁移表定义 使用PL/SQL Developer工具进行表定义迁移。 迁移表全量数据 使用华为云迁移服务CDM完成进行数据迁移。
图1 AnalyticDB for MySQL迁移场景 约束与限制 如果在CDM迁移过程中有DELETE、UPDATE操作,无法保证迁移后的数据一致,需要重新迁移。 整库迁移作业一次只能迁移一个数据库,如果迁移多个数据库需要配置多个迁移作业。 在目标端DWS需要创建待同步的数据库和schema。
表迁移 操作步骤 在CDM管理控制台的“集群管理”页面,单击集群操作列的“作业管理”,选择“表/文件迁移 > 新建作业”。 选择源端以及目的端配置。 配置源端作业参数,根据待迁移的数据库类型配置对应参数: 表1 源端作业参数 源端参数 取值样例 模式或表空间 db_user01 使用SQL语句
NOCOMPRESS DISTRIBUTE BY HASH ("id_buyer"); 表级参数相关迁移 SQL-Server支持创建行压缩表,DWS不支持,迁移过程中删除。 SQL-Server语法 迁移后语法 CREATE TABLE dbo.T1 ( c1 INT, c2 NVARCHAR(200)
表迁移 CREATE TABLE CHARACTER SET和CASESPECIFIC VOLATILE SET MULTISET TITLE 索引 约束 COLUMN STORE PARTITION ANALYZE 支持指定部分列 父主题: Teradata语法迁移
在离线模式下实现零停机迁移。在GaussDB(DWS)中通过执行迁移后的SQL脚本即可恢复数据库,从而实现线下数据库轻松上云。 DSC支持迁移Teradata、Oracle、Netezza、MySQL和DB2数据库的SQL脚本。 下载DSC SQL语法迁移工具 登录GaussDB(DWS)
的数据源迁移数据到GaussDB(DWS)。 CDM在迁移数据到GaussDB(DWS)时,采用的是COPY方式和GDS并行导入方式。 使用CDM迁移数据到GaussDB(DWS)的典型场景,请参见云数据迁移服务(简称CDM)的如下章节: 入门:该入门场景为使用CDM迁移本地MySQL数据库到GaussDB(DWS)
整库迁移 使用CDM迁移数据到GaussDB(DWS) 使用DSC工具迁移SQL脚本
规划导出数据 MRS导出支持的数据类型请参见表2。 表1 ORC格式的只写外表与HIVE数据类型匹配关系 类型名称 GaussDB(DWS)内表支持类型(数据源表) GaussDB(DWS)只写外表对应的类型 HIVE建表类型 1字节整数 TINYINT TINYINT(不推荐)
规划导出数据 OBS导出数据准备:请参见规划导出数据完成OBS导出数据准备。 OBS导出支持的数据类型请参见表1。 表1 ORC格式的只写外表与HIVE数据类型匹配关系 类型名称 GaussDB(DWS)内表支持类型(数据源表) GaussDB(DWS)只写外表对应的类型 HIVE建表类型
规划导出数据 操作场景 使用GDS从集群导出到数据之前,要提前准备需要导出的数据,并规划导出的路径。 规划导出路径 Remote模式 以root用户登录GDS数据服务器,创建导出的数据文件存放目录“/output_data”。 1 mkdir -p /output_data (
规划导出数据 操作场景 在OBS上规划导出数据存放的位置。 规划OBS存储位置和文件 导出数据需要指定数据在OBS中的存储路径(需指定到目录),导出的数据可以按CSV解析格式保存到文件中。系统还支持TEXT类型的解析格式,将数据导出保存便于导入不同的应用程序。 导出路径的目标目录中不能存在任何文件。
据库。 步骤三:迁移数据:包括全量迁移、增量迁移。 步骤四:并发执行迁移作业:创建一个job,用于并发执行多个transformation任务,达到并发迁移多张表的目的。 步骤五:优化迁移作业:通过调整Kettle内存大小和Job的任务数量,提高迁移效率。 迁移前准备 已经购买了
索引迁移 Teradata中CREATE INDEX的列和表名的顺序和GaussDB(DWS)中不同。使用参数distributeByHash配置数据在集群节点间的分布方式。该工具不会添加DISTRIBUTE BY HASH用于创建具有主键和非唯一主索引的表。 输入:主键非主索引的超集,且仅有1列匹配
迁移验证 迁移后验证 Database Schema Convertor转换完含有SQL语句的源文件后,在目标GaussDB(DWS)上执行转换后的文件,并生成文件执行成功和失败的明细报告。 Database Schema Convertor完成迁移后,会调用迁移后验证脚本(通过
约束与限制 如果待迁移的表数量较多,建议分批次进行迁移。可以按业务分批,也可以按表的数据量分批。 如果在CDM迁移过程中有DELETE、UPDATE操作,无法保证迁移后的数据一致,需要重新迁移。 表的数据量太大,可以切片迁移。 整库迁移作业一次只能迁移一个数据库,如果迁移多个数据库需要配置多个迁移作业。
业务语法转换迁移 假设Oracle有原业务SQL如下,将其保存成query.sql格式文件。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 -- HAVING子句必须出现在GROUP BY子句后面,而Oracle允许HAVING在GROUP
查询规划 优化器方法配置 优化器开销常量 基因查询优化器 其他优化器选项 父主题: GaussDB(DWS)数据库GUC参数
Developer界面,依次输入用户名、密码及数据库地址。 单击“确定”,若能正常连接数据库,说明PL/SQL Developer安装完成。 父主题: 迁移表定义