Descripción de las herramientas de movimiento de datos disponibles

Completado

El punto de conexión REST es un recurso útil para importar datos a Azure SQL Database. Sin embargo, otras herramientas para el movimiento de datos incluyen Azure Data Factory (ADF), Programa de copia masiva (BCP), Asistente para importación y exportación de SQL Server y scripts en la CLI de Azure y PowerShell. Estas herramientas ofrecen varias opciones para el movimiento de datos, cada una adecuada para diferentes escenarios.

En esta unidad, veremos ejemplos paso a paso para algunas de estas herramientas, mientras que otras se explicarán con detalle.

Uso de SQL Data Sync para sincronizar datos

SQL Data Sync es una característica de Azure SQL Database que permite sincronizar datos entre varias bases de datos, tanto en la nube como en el entorno local. Esta capacidad es esencial para mantener la coherencia de los datos y habilitar escenarios de nube híbrida. SQL Data Sync es un servicio basado en Azure SQL Database que permite sincronizar los datos seleccionados bidireccionalmente entre varias bases de datos. Usa una topología radial, donde una base de datos actúa como centro y otros como miembros. La base de datos central debe ser una base de datos de Azure SQL Database, mientras que las bases de datos miembro pueden ser bases de datos de Azure SQL o bases de datos de SQL Server.

Diagrama que muestra la arquitectura de SQL Data Sync.

Configuración de SQL Data Sync

  1. Creación de un grupo de sincronización: Para configurar la sincronización de datos, inicie sesión en Azure Portal y vaya a Azure SQL Database. En la sección Administración de datos, seleccione Sincronizar con otras bases de datos. A continuación, seleccione Nuevo grupo de sincronización y configure las opciones del grupo de sincronización, incluido el nombre del grupo de sincronización y la base de datos de metadatos de sincronización.

    Captura de pantalla en la que se muestra cómo crear un grupo de Data Sync en Azure Portal.

  2. Adición de miembros de sincronización: Para agregar las bases de datos que desea sincronizar, puede incluir otras bases de datos de Azure SQL Database o bases de datos de SQL Server locales. Para las bases de datos locales, debe instalar y configurar un agente de sincronización local.

  3. Configuración de los ajustes de sincronización: Para definir el esquema de sincronización, especifique las tablas y columnas que se van a sincronizar. Establezca la dirección de sincronización (bidireccional, centro a miembro o miembro a centro) y la frecuencia de sincronización. Por último, elija una directiva de resolución de conflictos (gana el centro o gana el miembro) para controlar los conflictos de datos.

  4. Supervisión y administración de la sincronización: Para supervisar el estado y los registros de sincronización, use Azure Portal. Compruebe si hay errores de sincronización y soluciónelos según sea necesario.

Uso de Azure Data Factory para manipular datos en Azure SQL Database

Azure Data Factory (ADF) es un servicio de integración de datos basado en la nube que le permite crear flujos de trabajo basados en datos, con el fin de coordinar y automatizar el movimiento y la transformación de datos. Admite una amplia gama de orígenes de datos y destinos, así como procesos complejos de extracción y transformación híbrida (ETL), extracción y transformación de carga (ELT), lo que lo convierte en una herramienta versátil para tareas de integración de datos.

Con ADF, puede diseñar su propio proceso de orquestación e integración de datos.

  1. Creación de un recurso de Azure Data Factory: Este es el recurso que encapsula todas las actividades de integración y transformación de datos.

    • En Azure Portal, vaya a Crear un recurso y busque "Factorías de datos".
    • Rellene los detalles necesarios, como la suscripción, el grupo de recursos y la región, y, a continuación, seleccione Crear.
  2. Creación de servicios vinculados: Los servicios vinculados se usan para definir la información de conexión para orígenes de datos y destinos.

    • En Azure Data Factory, seleccione Administrar y, a continuación, Servicios vinculados.
    • Cree un nuevo servicio vinculado para Azure SQL Database proporcionando los detalles de conexión necesarios.
  3. Creación de conjuntos de datos: Los conjuntos de datos representan las estructuras de datos dentro de los almacenes de datos que usan las actividades de una canalización.

    • En Azure Data Factory, vaya a la pestaña Creador.
    • Seleccione + (más) y, después, Conjunto de datos.
    • Elija el tipo de almacén de datos (por ejemplo, Azure SQL Database, Azure Blob Storage). Además, proporcione los detalles de conexión necesarios y las propiedades del conjunto de datos.
  4. Creación de una canalización: Las canalizaciones son agrupaciones lógicas de actividades que realizan una unidad de trabajo.

    • En Azure Data Factory, seleccione Creador y cree una canalización.
    • Agregue una actividad Copiar datos a la canalización para copiar datos del conjunto de datos de origen al conjunto de datos de destino.
  5. Ejecución de la canalización: La ejecución de la canalización se encarga de la serie de actividades que configuró.

    • Desencadene la canalización para iniciar el proceso de copia de datos.
    • Supervise la ejecución de canalización para asegurarse de que los datos se importen correctamente.

Uso de BACPAC para importar y exportar datos

Un archivo BACPAC es un archivo ZIP con una extensión de .bacpac, que contiene los metadatos y los datos de la base de datos. Se usa con fines de migración, copia de seguridad y archivado de bases de datos. Puede exportar una base de datos a un archivo BACPAC y almacenarla en Azure Blob Storage o en el entorno local y, posteriormente, importarla de nuevo en Azure SQL Database, Azure SQL Managed Instance o SQL Server. Además, puede usar los archivos BACPAC para importar solo un subconjunto de los datos. Esta flexibilidad permite un enfoque más adaptado a la migración de datos.

Puede importar y exportar datos con archivos BACPAC mediante Azure Portal y SQL Server Management Studio (SSMS), pero también puede usar la utilidad SQLPackage.

Ejecute el siguiente comando de ejemplo para importar datos a un archivo BACPAC mediante SQLPackage. Reemplace <ServerName>, <DatabaseName>, <UserName>, <Password> y <PathToBacpacFile> en los siguientes scripts por el nombre real del servidor, el nombre de la base de datos, las credenciales de usuario y la ruta de acceso del archivo BACPAC.

sqlpackage.exe /Action:Import /tsn:<ServerName> /tdn:<DatabaseName> /tu:<UserName> /tp:<Password> /sf:<PathToBacpacFile>

Ejecute el siguiente comando de ejemplo para exportar datos a un archivo BACPAC mediante SQLPackage.

sqlpackage.exe /Action:Export /ssn:<ServerName> /sdn:<DatabaseName> /su:<UserName> /sp:<Password> /tf:<PathToBacpacFile>

Uso del Programa de copia masiva (BCP)

La utilidad BCP es una herramienta de línea de comandos que exporta tablas a archivos para que pueda importarlas. Use este método para migrar de una base de datos SQL única a SQL Managed Instance y viceversa.

Uso del Asistente para importación y exportación de SQL Server

El Asistente para importación y exportación de SQL Server es una herramienta gráfica de SSMS para importar y exportar datos entre SQL Server y muchos orígenes de datos. Una ventaja del Asistente para importación y exportación de SQL Server es que usa SQL Server Integration Services (SSIS) para copiar datos. SSIS es una herramienta muy configurable para crear procesos de extracción, transformación y carga (ETL) que se pueden ejecutar en instancias de SQL Server y Azure SQL Database.

Uso de la CLI de Azure y PowerShell

Puede usar scripts en la CLI de Azure y PowerShell para automatizar los procesos de importación y exportación. El uso de scripts para la importación o exportación es adecuado para la integración en canalizaciones de CI/CD, pero cada script requiere un alto grado de personalización en comparación con otros métodos.

Para más información sobre otras herramientas disponibles para exportar e importar datos, consulte Importación y exportación de datos desde SQL Server y Azure SQL Database.