Todos los productos
Search
Centro de documentos

DataWorks:Origen de datos de AnalyticDB for MySQL 3.0

Última actualización: Oct 09, 2026

AnalyticDB for MySQL 3.0 data source le permite leer y escribir datos en AnalyticDB for MySQL 3.0 mediante un canal bidireccional. Este tema describe las capacidades de sincronización de datos de AnalyticDB for MySQL 3.0 compatibles con DataWorks.

Límites

  • No es posible configurar ni ejecutar tareas de sincronización para un origen de datos ADB Lakehouse Edition en un resource group público.

  • Si una instancia configurada en un origen de datos ADB cambia de Data Warehouse Edition a Lakehouse Edition, las tareas de sincronización que usen este origen de datos en un resource group público fallarán. Antes de cambiar de edición, compruebe si alguna tarea se ejecuta en un resource group público y muévala a un Serverless resource group (recommended) o a un resource group exclusivo para Data Integration.

  • La sincronización por lotes admite la lectura de vistas (tablas VIEW).

Tipos de campo compatibles

Lectura por lotes

A continuación se muestran las asignaciones de tipos de AnalyticDB for MySQL 3.0 para AnalyticDB for MySQL 3.0 Reader.

Categoría de tipo

Tipo de AnalyticDB for MySQL 3.0

Entero

INT, INTEGER, TINYINT, SMALLINT y BIGINT

Punto flotante

FLOAT, DOUBLE y DECIMAL

Cadena

VARCHAR

Fecha y hora

DATE, DATETIME, TIMESTAMP y TIME

Booleano

BOOLEAN

Escritura por lotes

A continuación se muestran las asignaciones de tipos de AnalyticDB for MySQL 3.0 para AnalyticDB for MySQL 3.0 Writer.

Tipo

Tipo de datos de AnalyticDB for MySQL 3.0

Entero

INT, INTEGER, TINYINT, SMALLINT y BIGINT

Punto flotante

FLOAT, DOUBLE y DECIMAL

Cadena

VARCHAR

Fecha y hora

DATE, DATETIME, TIMESTAMP y TIME

Booleano

BOOLEAN

Agregar un origen de datos

Antes de desarrollar una tarea de sincronización en DataWorks, debe agregar el origen de datos obligatorio a DataWorks. Siga las instrucciones de Data source configuration. Consulte las descripciones de los parámetros en la consola de DataWorks para comprender el significado de cada parámetro al agregar un origen de datos.

Desarrollo de tareas de sincronización de datos

Para conocer el punto de entrada y el procedimiento de configuración de una tarea de sincronización, consulte las siguientes guías de configuración.

Configurar una tarea de sincronización por lotes de tabla única

Configurar una tarea de sincronización en tiempo real de tabla única

Para consultar el procedimiento, vea Single-table real-time synchronization task configuration.

Configurar una tarea de sincronización por lotes de base de datos completa

Para consultar el procedimiento, vea Batch database synchronization configuration.

Configurar una tarea de sincronización en tiempo real de base de datos completa

Para consultar el procedimiento, vea Configure real-time full-database synchronization tasks.

Apéndice: scripts de ejemplo y parámetros

Configurar una tarea de sincronización por lotes con el editor de código

Si desea configurar una tarea de sincronización por lotes con el editor de código, debe establecer los parámetros correspondientes en el script según los requisitos unificados de formato de script. Para obtener más información, consulte Script mode configuration. La siguiente información describe los parámetros que debe configurar para los orígenes de datos cuando utilice el editor de código.

Script de ejemplo de Reader

{ "type": "job", "steps": [ { "stepType": "analyticdb_for_mysql", //Plug-in name. "parameter": { "column": [ //Column names. "id", "value", "table" ], "connection": [ { "datasource": "xxx", //Data source. "table": [ //Table name. "xxx" ] } ], "where": "", //Filter condition. "splitPk": "", //Split key. "encoding": "UTF-8" //Encoding format. }, "name": "Reader", "category": "reader" }, { "stepType": "stream", "parameter": {}, "name": "Writer", "category": "writer" } ], "version": "2.0", "order": { "hops": [ { "from": "Reader", "to": "Writer" } ] }, "setting": { "errorLimit": { "record": "0" //Maximum number of error records during synchronization. }, "speed": { "throttle":true,//When throttle is false, mbps is ignored and throughput is unlimited; when true, throughput is limited. "concurrent":1 //Job concurrency. "mbps":"12"//Rate limit. Here, 1 mbps = 1 MB/s. } } }

Parámetros del script de Reader

Parámetro

Descripción

Obligatorio

Valor predeterminado

datasource

Nombre del origen de datos. En el modo script, puede agregar un origen de datos. El valor debe coincidir con el nombre del origen de datos agregado.

Sí

Ninguna

table

Tabla que se va a sincronizar.

Sí

Ninguna

column

Columnas que se van a sincronizar desde la tabla configurada. Describa los campos en un arreglo JSON. De forma predeterminada, se seleccionan todas las columnas; por ejemplo, [ * ].

  • Se admite la selección de columnas, por lo que puede exportar únicamente las columnas elegidas.

  • Se admite la reordenación de columnas, así que el orden de exportación puede diferir del esquema de la tabla.

  • Se admiten valores constantes. Siga la sintaxis de MySQL; por ejemplo, ["id", "table", "1", "'bazhen.csy'", "null", "to_char(a + 1)", "2.3" , "true"].

    • id es un nombre de columna normal.

    • table es un nombre de columna reservado.

    • 1 es una constante entera.

    • bazhen.csy es una constante de cadena.

    • null es un puntero nulo.

    • to_char(a + 1) es una expresión de función para calcular la longitud de una cadena.

    • 2.3 es un número de punto flotante.

    • true es un valor booleano.

  • column: debe especificar explícitamente un conjunto no vacío de columnas para sincronizar.

Sí

Ninguna

splitPk

Cuando AnalyticDB for MySQL 3.0 Reader extrae datos, especificar splitPk indica que desea usar el campo representado por splitPk para dividir los datos. La sincronización inicia tareas simultáneas para mejorar la eficiencia.

  • Se recomienda utilizar la clave primaria de la tabla para splitPk. Los valores de clave primaria suelen distribuirse de manera uniforme, lo que reduce la probabilidad de puntos críticos de datos en los fragmentos resultantes.

  • Actualmente, splitPk solo admite la división de datos enteros, no de cadenas, números de punto flotante, fechas u otros tipos. Si especifica un tipo no compatible, se omite la configuración de splitPk y la sincronización utiliza un solo canal.

  • Si no se especifica splitPk, ya sea porque falta el parámetro splitPk o porque su valor está vacío, la sincronización lee la tabla a través de un único canal.

No

Ninguna

where

Condición de filtro. En muchos escenarios de negocio, se sincronizan los datos del día actual. Establezca la condición where como gmt_create>$bizdate.

  • where habilita la sincronización incremental del negocio. Si no se especifica la instrucción where, ya sea porque falta la clave o el valor de where, se sincronizan todos los datos.

  • No establezca la condición where como LIMIT 10. Esto no cumple con las restricciones de una cláusula WHERE de SQL en MySQL.

No

Ninguna

Script de ejemplo de Writer

{ "type": "job", "steps": [ { "stepType": "stream", "parameter": {}, "name": "Reader", "category": "reader" }, { "stepType": "analyticdb_for_mysql", //Plug-in name. "parameter": { "postSql": [], //Statements to run after import. "tableType": null, //Reserved field, empty by default. "datasource": "hangzhou_ads", //Data source name. "column": [ //Fields to synchronize. "id", "value" ], "guid": null, "writeMode": "insert", //Write mode. See the writeMode parameter description. "batchSize": 2048, //Batch size. See the batchSize parameter description. "encoding": "UTF-8", //Encoding format. "table": "t5", //Name of the table to write to. "preSql": [] //Statements to run before import. }, "name": "Writer", "category": "writer" } ], "version": "2.0", //Configuration file format version. "order": { "hops": [ { "from": "Reader", "to": "Writer" } ] }, "setting": { "errorLimit": { "record": "0" //Number of error records. }, "speed": { "throttle":true,//When throttle is false, mbps is ignored and throughput is unlimited; when true, throughput is limited. "concurrent":2, //Job concurrency. "mbps":"12"//Rate limit. Here, 1 mbps = 1 MB/s. } } }

Parámetros del script de Writer

Parámetro

Descripción

Obligatorio

Valor predeterminado

datasource

Nombre del origen de datos. En el modo script, puede agregar un origen de datos. El valor debe coincidir con el nombre del origen de datos agregado.

Sí

Ninguna

table

Nombre de la tabla que se va a sincronizar.

Sí

Ninguna

writeMode

Modo de escritura. Elija insert, replace o update.

  • insert: si no hay conflicto de clave primaria o índice único, los datos se escriben normalmente. Si ocurre un conflicto, se ignora la fila actual y no se actualiza.

  • replace: si no hay conflicto de clave primaria o índice único, los datos se escriben normalmente. Si ocurre un conflicto, se elimina la fila en conflicto antes de insertar la nueva, por lo que se reemplazan todos los campos de la fila original.

  • update: si no hay conflicto de clave primaria o índice único, los datos se escriben normalmente. Si ocurre un conflicto, la nueva fila reemplaza todos los campos de la fila original.

    Nota

    Este modo solo es compatible con el modo script.

No

insert

column

Campos que se van a escribir en la tabla de destino, separados por comas; por ejemplo, "column": ["id", "name", "age"]. Para escribir todas las columnas en orden, use , por ejemplo, "column": [""].

Nota

Si el nombre de un campo contiene select, encierre el nombre del campo entre acentos graves. Por ejemplo, escriba item_select_no como item_select_no.

Sí

Ninguna

preSql

Instrucciones SQL que se deben ejecutar antes de la tarea de sincronización. El modo asistente solo permite una instrucción SQL; el modo script admite varias instrucciones, como limpiar datos antiguos.

Nota

No se admiten transacciones para varias instrucciones SQL.

No

Ninguna

postSql

Instrucciones SQL que se deben ejecutar después de la tarea de sincronización. El modo asistente solo permite una instrucción SQL; el modo script admite varias instrucciones, como agregar una marca de tiempo.

Nota

No se admiten transacciones para varias instrucciones SQL.

No

Ninguna

batchSize

Número de registros enviados en un solo lote. Esto reduce considerablemente las interacciones de red entre el sistema de sincronización de datos y MySQL, además de mejorar el rendimiento general. Un valor demasiado grande puede provocar un error de memoria insuficiente (OOM) en el proceso de sincronización.

No

1,024