Published on

December 22, 2020

Sincronización de bases de datos SQL

Mantener las bases de datos de SQL Server y las bases de datos de SQL Database / SQL Managed Instance (SQL MI) sincronizadas de forma asincrónica se puede lograr a través de varios métodos. En esta publicación de blog, exploraremos algunas de estas opciones y discutiremos sus casos de uso.

Un caso de uso común para sincronizar bases de datos es distribuir lecturas, como tener una segunda copia de la base de datos para fines de informes. Otro caso de uso es para aplicaciones híbridas, donde algunos datos se almacenan localmente y otros en Azure. Además, la sincronización de bases de datos puede ser beneficiosa para aplicaciones distribuidas globalmente, ya que ayuda a reducir la latencia de la red al tener datos en regiones más cercanas a los usuarios. Por último, la sincronización de bases de datos también puede ser útil para mantener una base de datos de prueba o desarrollo sincronizada con una base de datos de producción.

Echemos un vistazo a algunas de las opciones disponibles para sincronizar bases de datos SQL:

Azure Data Factory (ADF) o SQL Server Integration Services (SSIS)

Utilizar una herramienta ETL como Azure Data Factory o SQL Server Integration Services permite construir una solución para sincronizar bases de datos. Sin embargo, este enfoque puede ser complejo, ya que requiere determinar qué registros han cambiado en la base de datos de origen.

Azure SQL Data Sync

Azure SQL Data Sync es un servicio web de Microsoft Windows Azure que proporciona capacidades de sincronización de datos bidireccional para bases de datos SQL. Permite la sincronización entre bases de datos de SQL Server locales y bases de datos de SQL de Azure, así como mantener múltiples bases de datos de SQL de Azure sincronizadas. Tenga en cuenta que Azure SQL Managed Instance no es compatible en este momento.

Grupo de disponibilidad Always On de SQL Server, Replicación activa de Geo de SQL Database o Grupo de conmutación por error automática de SQL Managed Instance

Estas opciones implican una replicación unidireccional que copia automáticamente los datos a una o más réplicas secundarias. Se pueden utilizar con fines de recuperación ante desastres.

Replicación de SQL Server

SQL Server admite seis tipos de replicación para copiar datos de una base de datos a otra. Azure SQL Database solo se puede utilizar como suscriptor de envío en una topología de replicación transaccional o de instantánea unidireccional. La instancia de SQL Server que actúa como publicador y/o distribuidor puede ser un SQL Server local, una instancia administrada de SQL de Azure o una instancia de SQL Server que se ejecuta en una máquina virtual de Azure.

Copia de seguridad/restauración de SQL Server, exportación/importación o instantánea de base de datos

Estas opciones implican hacer una copia completa de la base de datos en lugar de solo una copia incremental. Se pueden utilizar con fines de recuperación ante desastres, pero tienen el inconveniente de una posible pérdida de datos y un tiempo de inactividad más prolongado.

Productos de terceros

Existen varios productos de terceros disponibles que pueden ayudar con la sincronización de bases de datos SQL, como Attunity Replicate for SQL Server, ScaleArc for SQL Server, StarQuest Data Replication y RedGate SQL Data Compare.

Azure Database Migration Service (DMS)

Azure Database Migration Service ofrece una opción en línea (sincronización continua) para copiar datos de SQL Server a Azure SQL Database o SQL Managed Instance con un tiempo de inactividad mínimo.

Azure Arc

Si necesita copiar datos por motivos de latencia y/o soberanía de datos, Azure Arc podría ser una solución adecuada. Azure Arc permite la replicación transparente de datos a regiones especificadas con una sincronización casi instantánea y sin tiempo de inactividad.

SQL Server Service Broker o Azure Event Hub

Crear una aplicación de mensajería y encolamiento utilizando SQL Server Service Broker o un Azure Event Hub asincrónico también se puede utilizar para sincronizar bases de datos. Todos los escritos se colocan en la cola y se envían a diferentes servidores.

Todas las opciones mencionadas anteriormente no requieren cambios en la base de datos de origen. Sin embargo, si tiene la flexibilidad de cambiar su solución de base de datos, Cosmos DB puede simplificar en gran medida el proceso de copia de datos. Puede replicar datos de forma transparente a todas las regiones especificadas de manera casi instantánea y sin tiempo de inactividad.

Sincronizar bases de datos SQL puede ser una tarea compleja, pero con el enfoque y las herramientas adecuadas, se puede lograr de manera eficiente y efectiva. Considere su caso de uso específico y sus requisitos para determinar el mejor método para sincronizar sus bases de datos SQL.

¡Gracias por leer!

Click to rate this post!
[Total: 0 Average: 0]

Let's work together

Send us a message or book free introductory meeting with us using button below.