Planificación de la migración de MongoDB a Cosmos DB
Después de revisar las ventajas de Cosmos DB, el director de información le ha dado la autorización para ejecutar una prueba de concepto. La primera fase del proyecto es planificar la migración de datos. Esto incluirá la configuración de una base de datos de Cosmos DB vacía para hospedar los datos migrados.
En esta unidad, se le guiará por los pasos necesarios para crear una base de datos de Cosmos DB y seleccionar un método de migración sin conexión o en línea.
Comprobación de la compatibilidad con MongoDB
La primera tarea antes de la migración es comprobar que está migrando desde una versión compatible de MongoDB. Puede comprobar la compatibilidad con la versión más reciente en el siguiente sitio:
API de Azure Cosmos DB para MongoDB: características y sintaxis que se admiten
Para empezar a usar un Cosmos DB en Azure, cree una cuenta de Cosmos DB con la API de MongoDB. A continuación, cree una base de datos en la cuenta. Puede separar las cargas de trabajo de la base de datos en bases de datos diferentes, una ventaja de este enfoque es la granularidad con la que puede establecer el rendimiento.
El acceso a los datos se controla mediante el uso de redes virtuales (VNet) de Azure. Configurará el grupo de seguridad de red de VNet para abrir los puertos 53, 443, 445, 9354 y 10000 a 20000. Evidentemente, también tendrá que configurar los firewalls locales para permitir el acceso a través de estos puertos al servidor local de MongoDB.
Normalmente, una migración implica la transferencia de una gran cantidad de datos y puede aumentar temporalmente el rendimiento durante la migración. Si especifica el rendimiento a nivel de bases de datos, debe tener en cuenta que cada recopilación requiere al menos 100 RU/s. Por lo tanto, el valor mínimo de RU/s para la base de datos es el número de colecciones multiplicado por 100. A menudo, el rendimiento a nivel de bases de datos parece más adecuado que el rendimiento a nivel de colecciones para escenarios de migración, pero debe tener en cuenta que esta configuración no se puede modificar después de la creación y, por lo tanto, debe elegir la configuración más adecuada para el uso esperado de la base de datos después de la migración.
Migración sin conexión o en línea
En una migración sin conexión, se detienen las conexiones a la base de datos, se realiza la migración y, luego, se establecen conexiones con la nueva base de datos migrada. Se importa para impedir las conexiones durante la migración, ya que estas transacciones se perderían.
Una migración en línea aplica las transacciones que se producen durante la migración a la nueva base de datos migrada. No se pierde ninguna transacción.
Una migración sin conexión es más rápida, pero una migración en línea tiene menos tiempo de inactividad. En el caso sin conexión, el tiempo de inactividad comienza cuando se inicia la migración, pero, en el caso en línea, el tiempo de inactividad solo comienza al final de la migración, cuando se produce la transición a la nueva base de datos. Debe ejecutar una migración sin conexión de prueba en una copia del sistema activo para investigar si el tiempo de inactividad es aceptable. Es posible que se pueda ejecutar la migración a una hora en que la actividad habitualmente sea baja. Si el tiempo de inactividad para la migración sin conexión no es aceptable, elija la migración en línea.
Para obtener más información sobre las migraciones en línea, consulte Migración de MongoDB a la API de Azure Cosmos DB para MongoDB en línea.
Para obtener más información sobre las migraciones sin conexión, consulte Migración de MongoDB a la API de Azure Cosmos DB para MongoDB sin conexión.