Todos los productos
Search
Centro de documentos

DataWorks:DM (Dameng)

Última actualización: Sep 24, 2026

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 (splitPk)

Sí (solo columnas de tipo entero)

—

Sincronización incremental (where)

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:

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

Consulte Batch database synchronization configuration.

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

datasource

Sí

—

Nombre de la fuente de datos DM. Consulte Configure a DM data source.

table

Sí

—

Tabla de la cual se leen los datos.

column

Sí

—

Columnas que se sincronizan, especificadas como un arreglo JSON. Use ["*"] para incluir todas las columnas. Admite eliminación de columnas, reordenamiento de columnas y constantes (enteros, cadenas, valores nulos, expresiones de función, punto flotante y booleanos).

splitPk

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.

where

No

—

Condición de filtro SQL que se anexa a la consulta. Por ejemplo, use gmt_create>$bizdate para una sincronización incremental o limit 10 para pruebas. Si no se establece, se leen todas las filas.

querySql

No

—

Consulta SQL personalizada. Por ejemplo: select a,b from table_a join table_b on table_a.id = table_b.id. Cuando se define este parámetro, se ignoran column, table y where.

fetchSize

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).

preSql

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

datasource

Sí

—

Nombre de la fuente de datos DM. Consulte Configure a DM data source.

table

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 schema.table.

column

Sí

—

Columnas de destino donde se escriben los datos, separadas por comas. No utilice la configuración predeterminada de columnas.

preSql

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.

postSql

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.

batchSize

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.

Pasos siguientes