¿Qué es la migración de bases de datos?
¿Qué es la migración de bases de datos?
La migración de bases de datos es un proceso que cambia una base de datos de un entorno a otro. A medida que las empresas buscan modernizar sus aplicaciones, migran las bases de datos asociadas de los servidores locales a la nube.
Migrar bases de datos a la nube permite a las empresas aumentar la fiabilidad, la escalabilidad y el rendimiento de los servicios. Además, la migración de datos a la nube reduce los costos de infraestructura derivados del mantenimiento de los centros de datos locales.
Mover los volúmenes de datos a la nube es importante para garantizar la integridad de los datos, el cumplimiento y la continuidad empresarial. Tenga en cuenta lo siguiente.
Presupuesto
La migración de datos implica tareas como la auditoría de datos, el mapeo, las pruebas y la supervisión posterior a la migración. En ocasiones, es necesario modificar la aplicación que accede a la base de datos para poder leer los datos de la base de datos migrada. Las empresas deben presupuestar el tiempo, los costos y los recursos necesarios para tales tareas.
Tiempo de inactividad
Al migrar la base de datos, planifique el tiempo de inactividad mientras cambia entre el origen y el destino. Si bien el tiempo de inactividad cero es imposible, puede reducir las interrupciones empresariales planificando la migración y utilizando las herramientas de migración de bases de datos adecuadas. Por ejemplo, puede probar la base de datos en la nube mucho antes de la conmutación para garantizar la fiabilidad de las aplicaciones y la precisión de los datos.
Sistemas de origen y destino
Una transferencia homogénea mueve los datos de los sistemas de origen a los de destino con motores de bases de datos similares. Por el contrario, la transferencia de datos a una plataforma de destino diferente se denomina transferencia heterogénea. Por ejemplo, la migración de una base de datos MySQL a otra base de datos MySQL es homogénea, mientras que la transferencia de Postgres SQL a Amazon Aurora es heterogénea. La transferencia homogénea es más sencilla porque la base de datos se puede desplazar al destino de destino sin manipulación adicional. Sin embargo, si se trata de una migración heterogénea, los arquitectos de bases de datos deberán limpiar y transformar los datos antes de transferirlos.
Tipo de migración
La migración de bases de datos puede ser de los siguientes tipos.
- Una migración parcial mueve solo una parte de todo el conjunto de datos de la base de datos original a la nube.
- Una migración completa de la base de datos transfiere todos los datos de la plataforma de origen a la de destino.
Tras cualquiera de las transferencias, la base de datos de origen se desconecta de la aplicación. Otro tipo de migración es la migración continua o la replicación de datos. Copia los datos de la base de datos de origen a la base de datos de destino de forma indefinida.
¿Cuáles son los tipos de migraciones de bases de datos?
Antes de migrar, considere qué tipo de migración se adapta mejor a su caso de uso.
Migración sin conexión
La migración sin conexión es adecuada para cambiar bases de datos no críticas que pueden tolerar un tiempo de inactividad significativo. Al realizar una migración sin conexión, debe impedir que las aplicaciones escriban en la base de datos durante un período determinado. El intervalo de tiempo permite a los arquitectos de bases de datos migrar mediante lift-and-shift la base de datos a la nube y modificar la aplicación. Por lo general, las empresas eligen la migración sin conexión cuando modernizan los sistemas heredados que no son compatibles con las herramientas de migración a la nube. Del mismo modo, la migración de bases de datos sin conexión es ideal para proyectos de prueba y desarrollo en los que las actualizaciones de datos oportunas no son fundamentales.
Tomemos el ejemplo de la migración de una base de datos Oracle local a Amazon RDS para Oracle. A pesar de estar alojadas en infraestructuras diferentes, ambas bases de datos comparten motores similares. Por lo tanto, el proceso de migración de datos es sencillo, como se describe a continuación.
Paso 1: Establecer la conectividad a la red
Conecte la base de datos local a la nube de AWS mediante una red segura. Puede configurar una red privada virtual o usar AWS Direct Connect para habilitar la conectividad local con la nube. Con AWS Direct Connect, puede conectar bases de datos directamente sin pasarlas por la Internet pública.
Paso 2: Detener la escritura de la aplicación
Para evitar cambios inesperados en la base de datos de destino, impida que las aplicaciones escriban en la base de datos de origen.
Paso 3: Transferir datos de las instalaciones locales a la nube
A continuación, implemente herramientas de transferencia de datos nativas en un servidor en la nube. Para reducir los costos, recomendamos configurar las herramientas en Amazon EC2. De esta forma, solo paga por los recursos utilizados para ejecutar las herramientas de base de datos nativas. Luego, las herramientas se utilizan para extraer los datos de la base de datos de origen y restaurarlos en la base de datos en la nube.
Paso 4: Realizar la conmutación de la base de datos
Tras transferir toda la base de datos a la nube, valídela para garantizar la coherencia de datos. A continuación, redirija todas las consultas de datos de la aplicación a la nueva base de datos.
Migración de cargas de trabajo de producción
La migración de la carga de trabajo de producción requiere un enfoque diferente al de cambiar las bases de datos no críticas. Las cargas de trabajo de producción y sus orígenes de datos no se pueden desconectar. Los usuarios deben poder acceder a los servicios como de costumbre, incluso cuando la transferencia de datos esté en curso. Por lo tanto, se requiere una amplia planificación y coordinación para hacer posible la migración sin cerrar la aplicación.
Los arquitectos aplican scripts propios o herramientas de replicación de datos de terceros para migrar las bases de datos para las cargas de trabajo de producción. Los scripts o las herramientas replican los datos de la base de datos local a la base de datos en la nube. Mientras se lleva a cabo la replicación de los datos, la base de datos local permanece operativa.
Los desafíos surgen cuando los desarrolladores de software revisan el script para adaptarse a los requisitos de datos nuevos y actuales. Además, es posible que sea necesario actualizar las herramientas de bases de datos de terceros que utilizan para que la migración de la base de datos se realice correctamente.
Replicación de bases de datos en línea
La replicación de una base de datos implica escribir scripts que configuran esquemas de bases de datos en nuevos motores de bases de datos y, a continuación, transferir datos de la base de datos de origen a la base de datos de destino. Los esquemas contienen definiciones para almacenar y organizar los datos en una base de datos identificable. Los ingenieros pueden usar herramientas de replicación de datos de terceros para crear y mantener varias copias de datos en diferentes servidores. Ambos enfoques son igualmente desafiantes porque implican una considerable intervención manual, son propensos a errores y pueden ser ineficientes.
Si desea una forma más eficiente y segura de replicar bases de datos en línea, considere AWS Database Migration Service (DMS). Es un servicio en la nube que automatiza la migración de bases de datos a través de varios motores de bases de datos. En lugar de programar manualmente la transferencia de datos, puede hacer que DMS escanee automáticamente los esquemas de la base de datos original y cree nuevos esquemas para el destino. Esto permite a los desarrolladores centrarse en aplicaciones innovadoras en lugar de en la laboriosa administración de bases de datos.
A continuación, se explica cómo replicar su base de datos local en la nube.
Paso 1: Hacer inventario de los datos existentes
Analice las bases de datos alojadas actualmente localmente. Para acelerar el proceso, utilice AWS DMS Fleet Advisor. Esta herramienta analiza la flota de servidores de bases de datos y análisis existente e identifica posibles rutas de migración. También compila el rendimiento, los esquemas, los patrones de uso y otras métricas.
Paso 2: Trasladar la base de datos a la nube
Utilice AWS DMS para migrar toda la base de datos del centro de datos local a la nube. Además, puede activar el modo de captura de datos de cambios (CDC) de DMS para permitir la replicación casi en tiempo real. Con los CDC, el DMS captura los cambios en los datos a medida que se producen en la base de datos original y los aplica a todas las bases de datos replicadas.
Refactorización de bases de datos
En algunos casos, la estrategia de migración de bases de datos implica la refactorización o la transferencia heterogénea. Las empresas refactorizan las bases de datos al modernizar las aplicaciones por varios motivos, como la reducción de los costos de licencias, el acceso a las capacidades de la nube y la mejora de la calidad de los datos. En una migración heterogénea, la información almacenada en la base de datos de origen no se puede cambiar tal cual. Los datos deben limpiarse, transformarse y estructurarse según los nuevos esquemas que admite la base de datos de destino.
A continuación se indican los pasos que le ayudarán a refactorizar una base de datos.
Paso 1: Auditar la base de datos
Analice la base de datos local e identifique los esquemas utilizados para almacenar los datos. Planifique cómo se almacenarán los datos actuales en la nueva base de datos. En ocasiones, la refactorización de bases de datos implica la consolidación de varias bases de datos en una o la distribución de datos de una única base de datos a varias.
Paso 2: Convertir el esquema de la base de datos
Convierta el esquema compilado desde la base de datos de origen a los formatos necesarios para la base de datos de destino. Puede utilizar Conversión de esquemas de AWS DMS para agilizar el proceso.
Nota: Es posible que los ingenieros de bases de datos tengan que crear o modificar manualmente los nuevos esquemas, especialmente para conjuntos de datos muy complejos.
Paso 3: Iniciar la migración de la base de datos
Migre los datos de una base de datos local a una base de datos en la nube con AWS DMS. Para garantizar que la base de datos en la nube capture todos los cambios durante la migración, active el modo CDC. Después de transferir todos los datos, redirija los servicios de la aplicación a la base de datos en la nube.
¿Cómo puede AWS satisfacer sus necesidades de migración de bases de datos?
Las empresas migran las bases de datos a la nube para reducir los costos de infraestructura, mejorar la fiabilidad del servicio y aprovechar otras capacidades de la nube. La migración de bases de datos puede ser tan simple como portar una base de datos completa tal como está o reconstruir esquemas completos para cumplir con los nuevos requisitos de datos. Independientemente de las complejidades de la migración, es fundamental garantizar que los datos se transfieran de forma segura, precisa y puntual. Explore AWS Database Migration Service para obtener herramientas administradas que permiten la conmutación casi en tiempo real, el análisis de bases de datos, la transferencia automatizada de datos y mucho más.