Estos contenidos se han traducido de forma automática para su comodidad, pero Huawei Cloud no garantiza la exactitud de estos. Para consultar los contenidos originales, acceda a la versión en inglés.
Centro de ayuda/ Data Warehouse Service/ Prácticas recomendadas / Migración de datos/ Uso de CDM para migrar datos de AnalyticDB for MySQL a un clúster de DWS
Actualización más reciente 2026-09-29 GMT+08:00

Uso de CDM para migrar datos de AnalyticDB for MySQL a un clúster de DWS

Esta práctica demuestra cómo usar CDM para migrar datos de AnalyticDB for MySQL (ADB) a DWS.

CDM es un servicio eficiente y fácil de usar para la migración de datos por lotes. Para obtener más información, consulte Cloud Data Migration.

Esta práctica toma alrededor de 90 minutos y utiliza servicios en la nube como Virtual Private Cloud (VPC) and Subnet, Elastic IP (EIP), Cloud Data Migration (CDM) y DWS. El proceso básico es el siguiente:

  1. Requisitos previos
  2. Paso 1: Migración de metadatos
  1. Paso 2: Migración de datos de tablas
  2. Paso 3: Verificación de consistencia de datos
Figura 1 Migración de ADB

Notas y restricciones

  • Si se producen operaciones DELETE o UPDATE durante la migración de CDM, no se puede garantizar la consistencia de los datos después. En tales casos, se requerirá una remigración.
  • Un único trabajo de migración de bases de datos puede migrar solo una base de datos a la vez. Para migrar varias bases de datos, debe configurar varios trabajos de migración.
  • Debe crear bases de datos y esquemas que se sincronicen en el DWS de destino.
  • En ADB, el nivel de base de datos corresponde al nivel de esquema en DWS.

Requisitos previos

  • El clúster de ADB y el clúster de DWS pueden comunicarse con CDM. En este ejemplo, DWS y CDM se crean en la misma región, nube privada y subred.
  • Tiene el permiso de migración.
  • Se han instalado los clientes de origen y destino.
  • La dirección IP del clúster de CDM se ha incluido en la lista blanca en los ajustes de seguridad de datos dentro del clúster de origen de ADB.
  • Se han preparado las herramientas de migración enumeradas en Tabla 1: DSC y DataCheck.
  • El entorno de tiempo de ejecución de DataCheck cumple con los siguientes requerimientos:
    • El servidor es compatible con sistemas operativos de 64 bits y puede ejecutarse en Linux o Windows.
    • Se ha instalado JDK o JRE 1.8 en el sistema.
    • El servidor donde se instala y ejecuta DataCheck puede comunicarse con la base de datos que se va a conectar.
Tabla 1 Herramientas para la migración de ADB

Herramientas

Descripción

Cómo obtenerla

DSC

Herramienta de migración de sintaxis para DWS

Obtenga el enlace de descarga.

DataCheck

Herramienta de verificación de datos

Póngase en contacto con el soporte técnico.

Paso 1: Migración de metadatos

  1. Exporte la sintaxis de origen. La exportación de la sintaxis de origen, que representa la lógica de implementación de los servicios del cliente, desde ADB y su modificación para que sea compatible con DWS puede reducir la carga de trabajo de modelado y mejorar la eficiencia de la migración de servicios.

    Para ello, seleccione la base de datos de destino en la consola de ADB, elija Export > Export Table Creation Statements y guarde DDL_migration.sql.

    Dado que la sintaxis de origen implica la identificación del alcance del servicio, las operaciones requieren un DBA familiarizado con el servicio. Se recomienda que la sintaxis de origen sea proporcionada por el DBA del cliente.

  2. Utilice la herramienta DSC para convertir la sintaxis DDL.

    1. Descomprima el paquete de la herramienta DSC obtenido en Requisitos previos.
    2. Guarde los archivos de sintaxis DDL que se convertirán en la carpeta input de DSC.
      Figura 2 Directorio input
    3. Abra la herramienta de línea de comandos y haga doble clic en runDSC.bat en Windows. Ejecute runDSC.sh en Linux.
    4. Convierta la sintaxis:
      1
      runDSC.bat -S mysql
      
      Figura 3 Conversión DDL
    5. Vea el resultado de la conversión en la carpeta output.
      Figura 4 Resultado de la conversión DDL

  3. Conéctese a DWS y ejecute la sentencia SQL siguiente para crear una base de datos de destino, que en esta práctica es migration.

    1
    CREATE DATABASE database_name WITH ENCODING 'UTF-8' DBCOMPATIBILITY 'mysql' TEMPLATE template0;
    

  4. El concepto de una base de datos en ADB es equivalente al concepto de un esquema en DWS. Se debe crear un esquema en la base de datos de destino de DWS.

    Primero, cambie a la base de datos recién creada y, a continuación, ejecute la siguiente sentencia SQL para crear un esquema.
    1
    CREATE SCHEMA schema_name;
    

  5. En la ventana del editor SQL de DWS, seleccione la base de datos y el esquema creados y haga clic en Import para importar la sentencia de creación de tabla convertida en 2.

    Figura 5 Importación de sentencias DDL

  6. Después de la importación, haga clic en el botón run para ejecutar la sentencia SQL para crear una tabla.
  7. Verifique si la tabla se ha creado:

    1
    SELECT table_name FROM information_schema.tables WHERE table_schema = 'migration';
    

Paso 2: Migración de datos de tablas

  1. Configure el enlace de origen para CDM.

    1. Inicie sesión en la consola de CDM. En el panel de navegación, haga clic en Cluster Management.
    2. Si CDM está conectado a ADB a través de la red pública, vincule una EIP. Para obtener más información, consulte Vinculación o desvinculación de una EIP.
    3. Haga clic en Job Management junto al nombre del clúster.
    4. Antes de establecer un enlace de trabajo por primera vez, instale el controlador. Seleccione Links > Driver Management e instale el controlador de MySQL.
    5. Después de instalar el controlador, haga clic en Create Link en la página de gestión de enlaces, seleccione MySQL y, a continuación, haga clic en Next.
    6. Ingrese la información de la base de datos de ADB.
      Figura 6 Información de ADB
    7. Haga clic en Test para comprobar la conectividad y, a continuación, haga clic en Save.

  2. Configure el enlace de destino para CDM.

    1. De manera similar, elija Job Management > Links y haga clic en Create Link.
    2. Seleccione Data Warehouse Service y haga clic en Next.
    3. Ingrese la información de la base de datos de DWS.
      Figura 7 Información de DWS
    4. Haga clic en Test para comprobar la conectividad y, a continuación, haga clic en Save.

  3. Configure y comience un trabajo de migración a nivel de tabla.

    1. Haga clic en la pestaña Table/File Migration. Esta pestaña muestra los trabajos de migración de una sola tabla.
    2. Ingrese la información de origen y destino.
      • Job Name: Ingrese un nombre único.
      • Source Job Configuration
        • Source Link Name: Seleccione el enlace de origen de MySQL creado.
        • Use SQL Statement: Seleccione No.
        • Schema/Tablespace: Seleccione el nombre del esquema o tablespace del que se extraerán los datos.
        • Table Name: Seleccione el nombre de la tabla de la que se extraerán los datos.
        • Mantenga la configuración predeterminada para otros parámetros.
      • Destination Job Configuration
        • Destination Link Name: Seleccione el enlace de destino de DWS creado.
        • Schema/Tablespace: Seleccione la base de datos de DWS en la que se escribirán los datos.
        • Auto Table Creation: Este parámetro se muestra solo cuando tanto el origen como el destino de la migración son bases de datos relacionales.
        • Table Name: Seleccione el nombre de la tabla en la que se escribirán los datos. También puede ingresar un nombre de tabla que no existe. CDM crea automáticamente la tabla en DWS.
        • Clear Data Before Import: Especifique si se deben borrar los datos de la tabla de destino antes de que comience la tarea de migración.
    3. Haga clic en Next para mapear campos.
      • Si el mapeo de campos es incorrecto, puede arrastrar los campos para ajustar el mapeo.
      • Las expresiones de CDM tienen la capacidad integrada de convertir campos de cadenas, fechas y números comunes. Para obtener más información, consulte Configuración de convertidores de campos.
    4. Confirme la información y haga clic en Next.
    5. En la página de configuración de tareas, configure los siguientes parámetros:
      • Retry Upon Failure: Si el trabajo no se puede ejecutar, puede determinar si se debe volver a intentar automáticamente. Conservar el valor predeterminado Nunca.
      • Grupo: Seleccione el grupo al que pertenece el trabajo. El grupo predeterminado es DEFAULT. En la página Job Management, los trabajos se pueden mostrar, iniciar o exportar por grupo.
      • Schedule Execution: Para configurar trabajos programados, habilite esta función. Conservar el valor predeterminado No.
      • Concurrent Extractors: Indica los datos extraídos simultáneamente. El valor predeterminado es 1, pero puede aumentarlo. Sin embargo, se recomienda mantenerlo en 4 o menos.
      • Write Dirty Data: Es posible que se generen datos incorrectos durante la migración de datos entre tablas. Se recomienda seleccionar Yes.
    6. Confirme la información y haga clic en Save and Run.

      Una vez iniciado el trabajo de migración, puede ver el estado en la lista de trabajos.

  4. Configure e inicie un trabajo de migración a nivel de base de datos.

    1. Haga clic en la pestaña Entire DB Migration y haga clic en Create Job.
    2. Ingrese la información de origen a la izquierda y la información de destino a la derecha.
      • Job Name: Ingrese un nombre único.
      • Source Job Configuration
        • Source Link Name: Seleccione el enlace de origen de MySQL creado.
        • Use SQL Statement: Seleccione No.
        • Schema/Tablespace: Seleccione el nombre del esquema o tablespace del que se extraerán los datos.
        • Table Name: Seleccione el nombre de la tabla de la que se extraerán los datos.
        • Mantenga la configuración predeterminada para otros parámetros.
      • Destination Job Configuration
        • Destination Link Name: Seleccione el enlace de destino de DWS creado.
        • Schema/Tablespace: Seleccione la base de datos de DWS en la que se escribirán los datos.
        • Auto Table Creation: Este parámetro se muestra solo cuando tanto el origen como el destino de la migración son bases de datos relacionales.
        • Clear Data Before Import: Especifique si se deben borrar los datos de la tabla de destino antes de que comience la tarea de migración.

    3. Haga clic en Next.
    4. Seleccione todas las tablas o las tablas que desea migrar, haga clic en la flecha derecha en el medio para moverlas al panel derecho y, a continuación, haga clic en Next.
    5. Configure los parámetros del trabajo.
      • Concurrent Subjobs: Indica la cantidad de tablas que se migrarán simultáneamente. El valor predeterminado es 10; se recomienda configurarlo en un valor inferior a 5.
      • Concurrent Extractors: Indica los datos extraídos simultáneamente. El valor predeterminado es 1, pero puede aumentarlo. Sin embargo, se recomienda mantenerlo en 4 o menos.

      Confirme la información y haga clic en Save and Run.

    6. Espere hasta que se complete el trabajo de migración. Haga clic en el nombre del trabajo para ver el estado de migración de cada tabla.

  5. Conéctese a DWS y ejecute las siguientes sentencias SQL para verificar si los datos se han migrado:

    1
    2
    3
    4
    SELECT 'migration.users',count(1) FROM migration.users UNION ALL
    SELECT 'migration.products',count(1) FROM migration.products UNION ALL
    SELECT 'migration.orders',count(1) FROM migration.orders UNION ALL
    SELECT 'migration.employees',count(1) FROM migration.employees;
    

Paso 3: Verificación de consistencia de datos

Después de la migración, verifique si los datos de las bases de datos de origen y destino son consistentes mediante DataCheck.

  1. Descargue y descomprima DataCheck-*.zip y, a continuación, vaya al directorio DataCheck-* para utilizarlo. Para obtener más información sobre cómo utilizar los archivos del directorio, consulte Tabla 2.
  2. Configure el paquete de herramientas.

    • En Windows:

      Abra el archivo dbinfo.properties en la carpeta conf y configúrelo según sus necesidades reales.

      Puede utilizar el comando siguiente en la herramienta para generar el texto cifrado de src.passwd y dws.passwd.

      encryption.bat password

      Después de ejecutar el comando, se genera un archivo cifrado en el directorio local bin.

    • En Linux:

      El método de generación del texto cifrado es similar al de Windows. El comando es sh encryption.sh Password. Los demás pasos son los mismos.

  3. Verifique los datos.

    En Windows:

    1. Abra el archivo check.input, ingrese las bases de datos (si no se ingresan, se utiliza el contenido del archivo conf), la tabla de origen y la tabla de destino que se van a verificar, y complete Row Range con una sentencia de consulta de datos para especificar el alcance de la consulta.
      • Después de configurar el nombre de la base de datos de origen en el archivo de configuración, el nombre de la base de datos de origen en el archivo check.input es este por defecto. Sin embargo, si se especifica un nombre de base de datos de origen diferente en el archivo check.input, este tendrá prioridad.
      • El Check Strategy ofrece tres niveles: high, medium y low. Si no se especifica, el valor predeterminado es low.

      La siguiente figura muestra el archivo check_input para la comparación de metadatos.

      Figura 8 check_input
    2. Ejecute el comando datacheck.bat en el directorio bin para ejecutar la herramienta de verificación.

    3. Vea el archivo de resultados de la verificación generado check_input_result.xlsx.

    En Linux:

    1. Edite y cargue el archivo check_input.xlsx. Consulte el paso 1 para Windows.
    2. Ejecute el comando sh datacheck.sh para ejecutar la herramienta de verificación.

    3. Vea el resultado de la verificación en el archivo check_input_result.xlsx. (El análisis del resultado de la verificación es el mismo que para Windows).

Información relacionada

Tabla 2 Descripción del directorio DataCheck

Archivo o carpeta

Descripción

DataCheck

bin

Guarda el script de entrada de la herramienta de verificación.

  • Versión de Windows: datacheck.bat
  • Versión de Linux: datacheck.sh

conf

Archivo de configuración, que se utiliza para configurar la conexión entre la base de datos de origen y la base de datos de destino y establecer la impresión de registros.

lib

Almacena los paquetes JAR necesarios para ejecutar la herramienta de verificación.

check_input.xlsx

  • Información sobre la tabla que se va a verificar, incluidos los nombres de esquema, tabla y columna.
  • Información sobre el nivel de verificación y reglas de verificación de los usuarios. Se admiten tres niveles de verificación: high, middle y low. El valor predeterminado es low.

logs

El paquete no incluye este archivo. Una vez que se ejecuta la herramienta de verificación, genera automáticamente este archivo para registrar el proceso de ejecución de la herramienta.

check_input_result.xlsx

El paquete no incluye este archivo. Una vez que se ejecuta la herramienta de verificación, se creará un archivo de resultados de verificación en la misma ubicación que check_input.xlsx.

Tabla 3 Funciones básicas de la herramienta de verificación de datos

DataCheck

  • Verificar los datos en las bases de datos DWS, MySQL y PostgreSQL.
  • Verificar los campos comunes, como los tipos numéricos, de tiempo y de caracteres.
  • Admitir tres niveles de verificación, incluidos high, middle, y low.
  • Verificar los esquemas, los nombres de las tablas y los nombres de las columnas.
  • Especificar el alcance de comprobación de los registros. Por defecto, se verifican todos los registros.
  • Admitir varios métodos de verificación, incluidos count(*), max, min, sum, avg y la verificación de detalles de muestreo.
  • Generar el resultado de la verificación y los detalles de la verificación relacionados.
Tabla 4 Niveles de verificación de datos

Nivel de verificación

Descripción

Sintaxis

Low

  • Verificación de cantidad
  • Cantidad de registros: COUNT(*)

Middle

  • Verificación de cantidad
  • Verificación de tipo numérico
  • Cantidad de registros: COUNT(*)
  • Verificación de valor: MAX, MIN, SUM y AVG

High

  • Verificación de cantidad
  • Verificación de tipo numérico
  • Verificación de tipo de fecha
  • Verificación de tipo de carácter
  • Cantidad de registros: COUNT(*)
  • Verificación de valor: MAX, MIN, SUM y AVG
  • Verificación de fecha: MAX y MIN
  • Verificación de caracteres: order by limit 1000, que lee los datos y verifica si el contenido es el mismo