Updated on 2022-09-22 GMT+08:00

From a Common Relational Database

Common relational databases that can serve as the source include GaussDB(DWS), RDS for MySQL, RDS for PostgreSQL, RDS for SQL Server, Dameng, FusionInsight LibrA, PostgreSQL, Microsoft SQL Server, SAP HANA, and MyCAT.

To export data from the preceding databases, configure the source job parameters listed in Table 1.

Table 1 Parameter description

Category

Parameter

Description

Example Value

Basic parameters

Use SQL Statement

Whether you can use SQL statements to export data from a relational database

No

SQL Statement

When Use SQL Statement is set to Yes, enter an SQL statement here. CDM exports data based on the SQL statement.

NOTE:
  • SQL statements can only be used to query data. Join and nesting are supported, but multiple query statements are not allowed, for example, select * from table a; select * from table b.
  • With statements are not supported.
  • Comments, such as -- and /*, are not supported.
  • Addition, deletion, and modification operations are not supported, including but not limited to the following:
    • load data
    • delete from
    • alter table
    • create table
    • drop table
    • into outfile

select id,name from sqoop.user;

Schema/Tablespace

Name of the schema or tablespace from which data will be extracted. This parameter is displayed when Use SQL Statement is set to No. Click the icon next to the text box to go to the page for selecting a schema or directly enter a schema or tablespace.

If the desired schema or tablespace is not displayed, check whether the login account has the permissions required to query metadata.

NOTE:
The parameter value can contain wildcard characters (*), which is used to export all databases whose names start with a certain prefix or end with a certain suffix. The examples are as follows:
  • SCHEMA* indicates that all databases whose names starting with SCHEMA are exported.
  • *SCHEMA indicates that all databases whose names ending with SCHEMA are exported.
  • *SCHEMA* indicates that all databases whose names containing SCHEMA are exported.

SCHEMA_E

Table Name

Name of the table from which data will be extracted. This parameter is displayed when Use SQL Statement is set to No. Click the icon next to the text box to go to the page for selecting the table or directly enter a table name.

If the desired table is not displayed, confirm that the table exists or that the login account has the permissions required to query metadata.

This parameter can be configured as a macro variable of date and time and a path name can contain multiple macro variables. When the macro variable of date and time works with a scheduled job, the incremental data can be synchronized periodically. For details, see Incremental Synchronization Using the Macro Variables of Date and Time.

NOTE:

If you have configured a macro variable of date and time and schedule a CDM job through DataArts Studio DataArts Factory, the system replaces the macro variable of date and time with (Planned start time of the data development jobOffset) rather than (Actual start time of the CDM jobOffset).

NOTE:
The table name can contain wildcard characters (*), which is used to export all tables whose names start with a certain prefix or end with a certain suffix. The number and types of fields in the tables must be the same. The examples are as follows:
  • table* indicates that all tables whose names starting with table are exported.
  • *table indicates that all tables whose names ending with table are exported.
  • *table* indicates that all tables whose names containing table are exported.

table

Advanced attributes

Partition Column

This parameter is displayed when Use SQL Statement is set to No, indicating that a field used to split data during data extraction. CDM splits a job into multiple tasks based on this field and executes the tasks concurrently. Fields with data distributed evenly are used, such as the sequential number field.

Click the icon next to the text box to go to the page for selecting a field or directly enter a field.

NOTE:
  • The following types of partition columns are supported: CHAR, VARCHAR, LONGVARCHAR, TINYINT, SMALLINT, INTEGER, BIGINT, REAL, FLOAT, DOUBLE, NUMERIC, DECIMAL, BIT, BOOLEAN, DATE, TIME, and TIMESTAMP. It is recommended that the partition column have an index.
  • If the partition column type is CHAR, VARCHAR, or LONGVARCHAR, the column value cannot contain characters other than those in the ASCII character code table or Chinese characters.

id

Where Clause

WHERE clause used to specify the data extraction range. This parameter is displayed when Use SQL Statement is set to No. If this parameter is not set, the entire table is extracted.

You can set a date macro variable to extract data generated on a specific date. For details, see Incremental Migration of Relational Databases.

NOTE:

If you have configured a macro variable of date and time and schedule a CDM job through DataArts Studio DataArts Factory, the system replaces the macro variable of date and time with (Planned start time of the data development jobOffset) rather than (Actual start time of the CDM jobOffset).

DS='${dateformat(yyyy-MM-dd,-1,DAY)}'

Null in Partition Column

Whether the partition column can contain null values

Yes

Job Split Field

Used to split a job into multiple subjobs for concurrent execution.

-

Minimum value of a split field

Specifies the minimum value of Job Split Field during data extraction.

-

Maximum Split Field Value

Specifies the maximum value of Job Split Field during data extraction.

-

Number of subjobs

Specifies the number of subjobs split from a job based on the data range specified by the minimum and maximum values of Job Split Field.

-

Extract by Partition

When data is exported from an MySQL database, data can be extracted from each partition in the partitioned table. If this function is enabled, you can configure Table Partition to specify specific MySQL table partitions from which data is extracted.
  • This function does not support non-partitioned tables.
  • This parameter is available only for RDS for PostgreSQL and RDS for MySQL.
  • The database user must have the SELECT permission on the system views dba_tab_partitions and dba_tab_subpartitions.

No