Updated on 2026-01-04 GMT+08:00

DSC Overview

When switching from a traditional database to Huawei Cloud DWS, companies face challenges in migrating application SQL scripts. This process is often complex, risky, and time-consuming.

To migrate application SQL scripts efficiently and accurately, while minimizing risks and downtime, you can use DSC. DSC is a command-line tool for Linux or Windows that simplifies, speeds up, and ensures reliable SQL script migration. It uses built-in syntax rules to convert your source database's SQL scripts into ones that work with the DWS database

DSC works offline and does not need a database connection. It shows the migration progress and logs any errors, making it easy to find and fix issues.

The syntax parser built in DSC can identify only standard SQL syntax. If the input script contains texts in other languages, syntax parsing will fail. You need to clean such input script before using DSC.

Migration Objects

Table 1 lists the data sources supported by DSC. DSC can migrate the syntax of table objects in databases.

Table 1 Source databases supported by DSC

Database

Version

Teradata

17.20

MySQL

8.0

Oracle

11g Release 2, 12c Release 1

AnalyticDB For MySQL

-

BigQuery

-

Postgres

9.2.x, 11.x

Redshift

-

Greenplum

7.0.0

Hologres

3.1.17

Netezza

-

Hive

-

Migration Process

The process of using DSC to migrate SQL scripts is as follows:

  1. Export the SQL scripts from the source database to the Linux or Windows server installed with DSC.
  2. Execute DSC to migrate the syntax. In the command, specify the paths of the input file, output file, and logs.
  3. DSC automatically archives the migrated SQL scripts and the logs into the specified paths.
Figure 1 DSC migration process

Hardware Requirements

Table 2 lists the hardware requirements of DSC.

Table 2 Hardware requirements of DSC

Hardware

Configuration

CPU

AMD or Intel Pentium (minimum frequency: 500 MHz)

Min memory

1 GB

Disk space

1 GB

Software Requirements

OS

Table 3 lists the operating systems compatible with DSC.

Table 3 OSs compatible with DSC

Server

OS

Version

x86 servers

SUSE Linux Enterprise Server 11

SP1 (SUSE 11.1)

SP2 (SUSE 11.2)

SP3 (SUSE 11.3)

SP4 (SUSE 11.4)

SUSE Linux Enterprise Server 12

SP0 (SUSE 12.0)

SP1 (SUSE 12.1)

SP2 (SUSE 12.2)

SP3 (SUSE 12.3)

RHEL

6.4-x86_64 (RHEL 6.4)

6.5-x86_64 (RHEL 6.5)

6.6-x86_64 (RHEL 6.6)

6.7-x86_64 (RHEL 6.7)

6.8-x86_64 (RHEL 6.8)

6.9-x86_64 (RHEL 6.9)

7.0-x86_64 (RHEL 7.0)

7.1-x86_64 (RHEL 7.1)

7.2-x86_64 (RHEL 7.2)

7.3-x86_64 (RHEL 7.3)

7.4-x86_64 (RHEL 7.4)

CentOS

6.4 (CentOS 6.4)

6.5 (CentOS 6.5)

6.6 (CentOS 6.6)

6.7 (CentOS 6.7)

6.8 (CentOS 6.8)

6.9 (CentOS 6.9)

7.0 (CentOS 7.0)

7.1 (CentOS 7.1)

7.2 (CentOS 7.2)

7.3 (CentOS 7.3)

7.4 (CentOS 7.4)

Windows

7.0, 10, 11

Other software requirements

Table 4 lists the requirements of DSC on other software versions.

Table 4 Requirements of DSC on other software versions

Software

Description

JDK 1.8.0_141 or later (mandatory)

Used to run DSC.

Perl 5.8.8 (optional)

Used to migrate Perl files.

Perl 5.28.2 and later (optional)

Used to migrate Perl files in Windows.

Python 3.8.2 (optional)

Used to verify post migration script.

Command Conventions

The command conventions that may be found in this document are defined as follows.

Table 5 Command conventions

Convention

Description

Boldface

The keywords of a command are in Boldface.

Italic

Command arguments, paths, files, or folders are in italics.

[ ]

Square brackets enclose syntax choices (keywords or arguments) that are optional.

{ x | y | ... }

Braces enclose a set of required syntax choices separated by vertical bars (|), from which you select one.

[ x | y | ... ]

Square brackets enclose a set of optional syntax choices separated by vertical bars, from which you select one or none.

{ x | y | ... }*

Braces enclose a set of required syntax choices separated by vertical bars (|), from which you select at least one.

[ x | y | ... ]*

Square brackets enclose a set of optional syntax choices separated by vertical bars, from which you select multiple choices or none.

&<1-n>

The parameter before the ampersand (&) can be repeated 1 to n times.

#

A line that starts with a pound (#) sign is comments.

Third-party Licenses

Third-party licenses applicable to this tool include:

  • ANTLR v4.9.3
  • Apache Commons IO 2.11
  • Apache Commons CLI 1.5
  • Apache Log4j 2.17.2
  • JSON.org json 20220320
  • postgresql 42.4.1
  • sql-formatter 2.0.3