Data Integration de DataWorks admite DM (Dameng) como origen y destino para la sincronización por lotes sin conexión. Utilice DM Reader para extraer datos de bases de datos DM y DM Writer para cargarlos.
Capacidades
|
Capability |
DM Reader |
DM Writer |
|
Sincronización sin conexión (por lotes) |
Sí |
Sí |
|
Lectura desde vistas |
Sí |
— |
|
Eliminación de columnas |
Sí |
— |
|
Reordenamiento de columnas |
Sí |
— |
|
Lectura paralela ( |
Sí (solo columnas de tipo entero) |
— |
|
Sincronización incremental ( |
Sí |
— |
|
Ejecución de SQL previa |
Sí |
Sí |
|
Ejecución de SQL posterior |
— |
Sí |
|
Serverless resource groups |
Sí |
Sí |
|
Grupos de recursos exclusivos para Data Integration |
Sí |
Sí |
Tipos de campo compatibles
DM Reader y DM Writer admiten la mayoría de los tipos de datos comunes de las bases de datos relacionales. En la siguiente tabla se muestran los tipos de datos de DM que DM Reader puede convertir. Los tipos no compatibles generan un error de lectura, así que compruebe su esquema antes de configurar una tarea de sincronización.
|
Category |
DM data types |
|
Entero |
INT, TINYINT, SMALLINT, BIGINT |
|
Punto flotante |
REAL, FLOAT, DOUBLE, NUMBER, DECIMAL |
|
Cadena |
CHAR, VARCHAR, LONGVARCHAR, TEXT |
|
Fecha y hora |
DATE, DATETIME, TIMESTAMP, TIME |
|
Booleano |
BIT |
|
Binario |
BINARY, VARBINARY, BLOB |
Configurar una tarea de sincronización
Sincronización sin conexión de una sola tabla
Configure la tarea mediante la interfaz visual o el editor de código:
Interfaz visual: Configure a task in the codeless UI
Editor de código: Configure a task in the code editor
Para consultar la referencia completa del script y la descripción de los parámetros, vea Referencia del script.
Sincronización sin conexión de toda la base de datos
Referencia del script
Cuando configure una tarea de sincronización por lotes en el editor de código, utilice el formato de script unificado. En las siguientes secciones se describen los parámetros específicos de DM para Reader y Writer.
Reader
Ejemplo de script
{
"type": "job",
"version": "2.0",
"order": {
"hops": [
{ "from": "Reader", "to": "Writer" }
]
},
"setting": {
"errorLimit": { "record": "0" },
"speed": {
"throttle": true,
"concurrent": 1,
"mbps": "12"
}
},
"steps": [
{
"category": "reader",
"name": "Reader",
"stepType": "dm",
"parameter": {
"datasource": "dm_datasource",
"table": "table",
"column": ["*"],
"preSql": ["delete from XXX;"],
"fetchSize": 2048
}
},
{
"category": "writer",
"name": "Writer",
"stepType": "stream",
"parameter": {}
}
]
}
Parámetros de Reader
|
Parameter |
Required |
Default |
Description |
|
|
Sí |
— |
Nombre de la fuente de datos DM. Consulte Configure a DM data source. |
|
|
Sí |
— |
Tabla de la cual se leen los datos. |
|
|
Sí |
— |
Columnas que se sincronizan, especificadas como un arreglo JSON. Use |
|
|
No |
Vacío |
Columna utilizada para dividir los datos en lecturas paralelas. Establezca este valor con la clave principal para lograr una distribución uniforme y evitar puntos críticos de datos. Solo se admiten columnas de tipo entero; los tipos de punto flotante, cadena, fecha y otros generan un error. Si no se configura, la tabla se lee con un solo canal. |
|
|
No |
— |
Condición de filtro SQL que se anexa a la consulta. Por ejemplo, use |
|
|
No |
— |
Consulta SQL personalizada. Por ejemplo: |
|
|
No |
1,024 |
Número de filas obtenidas por lote. Los valores más altos reducen los viajes de ida y vuelta por la red y mejoran el throughput. Los valores superiores a 2,048 pueden provocar un error de memoria insuficiente (OOM). |
|
|
No |
— |
Instrucción SQL que se ejecuta antes de iniciar la tarea de sincronización. Solo se admite una instrucción. |
Writer
Ejemplo de script
{
"type": "job",
"version": "2.0",
"order": {
"hops": [
{ "from": "Reader", "to": "Writer" }
]
},
"setting": {
"errorLimit": { "record": "" },
"speed": {
"throttle": true,
"concurrent": 2,
"mbps": "12"
}
},
"steps": [
{
"category": "reader",
"name": "Reader",
"stepType": "oracle",
"parameter": {
"datasource": "aaa",
"column": ["PROD_ID", "name"],
"where": "",
"splitPk": "",
"encoding": "UTF-8",
"table": "PENGXI.SALES"
}
},
{
"category": "writer",
"name": "Writer",
"stepType": "dm",
"parameter": {
"datasource": "dm_datasource",
"table": "table",
"column": ["id", "name"],
"preSql": ["delete from XXX;"]
}
}
]
}
Parámetros de Writer
|
Parameter |
Required |
Default |
Description |
|
|
Sí |
— |
Nombre de la fuente de datos DM. Consulte Configure a DM data source. |
|
|
Sí |
— |
Tabla de destino. Si el esquema de la tabla difiere del nombre de usuario definido en la configuración de la fuente de datos, utilice el formato |
|
|
Sí |
— |
Columnas de destino donde se escriben los datos, separadas por comas. No utilice la configuración predeterminada de columnas. |
|
|
No |
— |
Instrucción SQL que se ejecuta antes de iniciar la tarea de sincronización. Por ejemplo, sirve para eliminar datos antiguos. Solo se admite una instrucción; si se incluyen varias, se deshabilita la compatibilidad con transacciones. |
|
|
No |
— |
Instrucción SQL que se ejecuta después de completar la tarea de sincronización. Por ejemplo, permite agregar una marca de tiempo. Solo se admite una instrucción; si se incluyen varias, se deshabilita la compatibilidad con transacciones. |
|
|
No |
1,024 |
Número de filas escritas por lote. Los valores más altos reducen las interacciones de red y mejoran el throughput. Un valor demasiado grande puede provocar un error OOM. |