El análisis previo a la migración genera un informe que enumera los riesgos de migración en la base de datos de origen. Esta página de referencia enumera todos los riesgos de migración que Relational Migrator puede detectar en las bases de datos compatibles.
Categorías de riesgo
Los riesgos migratorios se clasifican en:
Tipo de datos: tipos de datos que pueden provocar pérdida de precisión o pérdida de datos al migrar a MongoDB.
Esquema: Configuración de la base de datos o tabla que causa dificultades al mapear el esquema de la base de datos de origen a MongoDB.
Funcionalidad no soportada: Funcionalidades de otras bases de datos que no están soportadas en MongoDB.
Rendimiento: configuración de base de datos o tabla que puede causar problemas de rendimiento al migrar datos a MongoDB.
Referencia de riesgo
Nombre | Tipo | Categoría | Dificultad | Reportar mensaje | Mitigación |
|---|---|---|---|---|---|
Datos geoespaciales | Tabla | Tipos de datos:
| Alto | La tabla contiene columnas que requieren un manejo<columns> especial:. | Está almacenando datos geoespaciales en su base de datos. Estos se convertirán en objetos con una referencia de coordenadas |
Tipos de blobs | Tabla | Tipos de datos: | Intermedio | La tabla contiene columnas que podrían superar el límite de 16MB. | Si está almacenando >16MB en el registro, la migración fallará como Los documentos de MongoDB no pueden superar 16los MB. Recomendamos encarecidamente no almacenar blobs grandes en MongoDB, pero si no se requieren transacciones con varios documentos, se puede usar GridFS. |
Precisión numérica (especificada) | Tabla | Tipo de dato | Intermedio | Las siguientes columnas corren el riesgo de perder datos debido a la precisión decimal: <columns>. | Las columnas especificadas se han configurado para soportar más precisión decimal de la que es compatible con un campo Decimal128. Durante la migración, estos valores serán redondeados a 34 cifras significativas. |
Precisión numérica (no especificada) | Tabla | Tipo de dato | Intermedio | Las siguientes columnas pueden correr el riesgo de perder datos debido a la precisión decimal: <columns>. | Las columnas especificadas utilizan una precisión decimal variable y pueden contener valores con mayor precisión decimal que la admitida en un campo Decimal128. Durante la migración, estos valores se redondearán a 34 cifras significativas. |
Columnas de incremento automático | Tabla | Esquema | Alto | La tabla <name> tiene una columna de incremento automático. | MongoDB fomenta el uso de ObjectID para los campos de ID, ya que los ID incrementales presentan dificultades para la fragmentación. MongoDB Relational Migrator puede Migra tus claves tal cual, pero necesitarás escribir código para mantener este comportamiento. Si usas MongoDB Atlas, puedes usar los disparadores de Atlas para autoincrementar tus ID. |
No se encontraron claves externas | Database | Esquema | Intermedio | La <name> base de datos no tiene claves externas. | Esto complicará la asignación de esquemas, ya que no podemos inferir la relación entre las tablas sin ellos. Puede usar la función de claves foráneas sintéticas de Migrator para definir relaciones lógicas entre las tablas. |
Vistas | Database | Esquema | Intermedio | Se detectaron vistas en <database>. | Las vistas son compatibles con MongoDB, pero deben convertirse a MQL. |
Activadores | Database | Función no compatible | Alto | La <name> base de datos tiene disparadores. | MongoDB no tiene una forma nativa de implementar activadores. |
Rutinas | Database | Función no compatible | Intermedio | Se detectaron rutinas <database> en. | MongoDB no tiene una forma nativa de representar rutinas. |
Mesa individual grande | Database | Rendimiento | Intermedio | El tamaño total de los datos de las tablas seleccionadas es mayor que <limit> <límite> GB, en 100 GB. | Las migraciones de datos de mayor envergadura pueden requerir una planificación minuciosa para maximizar el rendimiento y la fiabilidad. El tema "Consideraciones de implementación" de la documentación ofrece consejos útiles. |
Nombre | Tipo | Categoría | Dificultad | Reportar mensaje | Mitigación |
|---|---|---|---|---|---|
Datos geoespaciales | Tabla | Tipos de datos: | Alto | La tabla contiene columnas que requieren un manejo<columns> especial:. | Está almacenando datos geoespaciales en su base de datos. Estos se convertirán en objetos con una referencia de coordenadas |
Tipos de blobs | Tabla | Tipos de datos: | Intermedio | La tabla contiene columnas que podrían superar el límite de 16MB. | Si almacena >16MB en el registro, la migración fallará ya que Los documentos de MongoDB no pueden exceder 16MB. Recomendamos encarecidamente no almacenar elementos binarios grandes en MongoDB, pero si no se requieren transacciones multi-documento, puede utilizar GridFS. |
Precisión numérica (especificada) | Tabla | Tipo de dato | Intermedio | Las siguientes columnas corren el riesgo de perder datos debido a la precisión decimal: <columns>. | Las columnas especificadas se han configurado para soportar más precisión decimal de la que es compatible con un campo Decimal128. Durante la migración, estos valores serán redondeados a 34 cifras significativas. |
Precisión numérica (no especificada) | Tabla | Tipo de dato | Intermedio | Las siguientes columnas pueden correr el riesgo de perder datos debido a la precisión decimal: <columns>. | Las columnas especificadas utilizan una precisión decimal variable y pueden contener valores con mayor precisión decimal que la admitida en un campo Decimal128. Durante la migración, estos valores se redondearán a 34 cifras significativas. |
Zonas horarias en las fechas | Tabla | Tipos de datos: | Intermedio | Se detectaron columnas con tipo <type>. MongoDB almacena los tiempos en UTC por defecto, y Relational Migrator puede convertir cualquier representación de tiempo local a esta forma o a un string directo. Columnas afectadas: <columns>. | MongoDB no admite almacenar zonas horarias con datos de tiempo. Considera convertir a la zona horaria deseada en tu aplicación o almacenarlo como un string. |
Archivo en disco | Tabla | Tipo de dato:
| Intermedio | Se detectaron columnas de tipo <type>. Actualmente, no se admite la migración a MongoDB para este tipo. Columnas afectadas: <columns>. |
|
Tipos de Oracle no admitidos | Tabla | Tipos de datos: | Intermedio | Se detectaron columnas de tipo <type>. Actualmente, no se admite la migración a MongoDB para este tipo. Columnas afectadas: <columns>. | El informe agrupa todas las columnas de un tipo determinado no admitido en un único elemento.
|
Columnas de incremento automático | Tabla | Esquema | Alto | La tabla <name> tiene una columna de incremento automático. | MongoDB recomienda el uso de ObjectID para los campos de ID, ya que los ID incrementales presentan dificultades para la fragmentación. MongoDB Relational Migrator puede migrar sus claves tal cual, pero deberá escribir código para mantener este comportamiento. Si usa MongoDB Atlas, puede usar los disparadores de Atlas para autoincrementar sus ID. |
No se encontraron claves externas | Database | Esquema | Intermedio | La <name> base de datos no tiene claves externas. | Esto complicará la asignación de esquemas, ya que no podemos inferir la relación entre las tablas sin ellos. Puede usar la función de claves foráneas sintéticas de Migrator para definir relaciones lógicas entre las tablas. |
Vistas | Database | Esquema | Intermedio | Se detectaron vistas en <database>. | Las vistas son compatibles con MongoDB, pero deben convertirse a MQL. |
Activadores | Database | Función no compatible | Alto | La <name> base de datos tiene disparadores. | MongoDB no tiene una forma nativa de implementar activadores. |
Rutinas | Database | Función no compatible | Intermedio | Se detectaron rutinas <database> en. | MongoDB no tiene una forma nativa de representar rutinas. |
Paquetes de Oracle | Database | Función no compatible | Intermedio | Un paquete es un objeto de esquema que agrupa tipos, variables, constantes, subprogramas, cursores y excepciones de PL/SQL relacionados lógicamente. Un paquete se compila y almacena en la base de datos, donde muchas aplicaciones pueden compartir su contenido. | MongoDB no cuenta con ninguna funcionalidad equivalente a los paquetes de Oracle. |
Mesa individual grande | Database | Rendimiento | Intermedio | El tamaño total de los datos de las tablas seleccionadas es mayor que <limit> <límite> GB, en 100 GB. | Las migraciones de datos de mayor envergadura pueden requerir una planificación minuciosa para maximizar el rendimiento y la fiabilidad. El tema "Consideraciones de implementación" de la documentación ofrece consejos útiles. |
Nombre | Tipo | Categoría | Dificultad | Reportar mensaje | Mitigación |
|---|---|---|---|---|---|
Datos geoespaciales | Tabla | Tipos de datos: | Alto | La tabla contiene columnas que requieren un manejo<columns> especial:. | Está almacenando datos geoespaciales en su base de datos. Estos se convertirán en objetos con una referencia de coordenadas |
Tipos de blobs | Tabla | Tipos de datos: | Intermedio | La tabla contiene columnas que podrían superar el límite de 16MB. | Si almacena >16MB en el registro, la migración fallará ya que Los documentos de MongoDB no pueden exceder 16MB. Recomendamos encarecidamente no almacenar elementos binarios grandes en MongoDB, pero si no se requieren transacciones multi-documento, puede utilizar GridFS. |
Precisión numérica (especificada) | Tabla | Tipo de dato | Intermedio | Las siguientes columnas corren el riesgo de perder datos debido a la precisión decimal: <columns>. | Las columnas especificadas se han configurado para soportar más precisión decimal de la que es compatible con un campo Decimal128. Durante la migración, estos valores serán redondeados a 34 cifras significativas. |
Precisión numérica (no especificada) | Tabla | Tipo de dato | Intermedio | Las siguientes columnas pueden correr el riesgo de perder datos debido a la precisión decimal: <columns>. | Las columnas especificadas utilizan una precisión decimal variable y pueden contener valores con mayor precisión decimal que la admitida en un campo Decimal128. Durante la migración, estos valores se redondearán a 34 cifras significativas. |
Zonas horarias en las fechas | Tabla | Tipo de dato:
| Intermedio | Se detectaron columnas con tipo <type>. MongoDB almacena los tiempos en UTC por defecto, y Relational Migrator puede convertir cualquier representación de tiempo local a esta forma o a un string directo. Columnas afectadas: <columns>. | MongoDB no admite almacenar zonas horarias con datos de tiempo. Considera convertir a la zona horaria deseada en tu aplicación o almacenarlo como un string. |
Columnas de incremento automático | Tabla | Esquema | Alto | La tabla <name> tiene una columna de incremento automático. | MongoDB recomienda el uso de ObjectID para los campos de ID, ya que los ID incrementales presentan dificultades para la fragmentación. MongoDB Relational Migrator puede migrar sus claves tal cual, pero deberá escribir código para mantener este comportamiento. Si usa MongoDB Atlas, puede usar los disparadores de Atlas para autoincrementar sus ID. |
No se encontraron claves externas | Database | Esquema | Intermedio | La <name> base de datos no tiene claves externas. | Esto complicará la asignación de esquemas, ya que no podemos inferir la relación entre las tablas sin ellos. Puede usar la función de claves foráneas sintéticas de Migrator para definir relaciones lógicas entre las tablas. |
Vistas | Database | Esquema | Intermedio | Se detectaron vistas en <database>. | Las vistas son compatibles con MongoDB, pero deben convertirse a MQL. |
Vistas materializadas | Database | Función no compatible | Intermedio | Se detectaron vistas materializadas en <database> | MongoDB admite vistas materializadas bajo demanda. Puede programar su generación o usar disparadores Atlas y $merge para mantenerlas. |
Activadores | Database | Función no compatible | Alto | La <name> base de datos tiene disparadores. | MongoDB no tiene una forma nativa de implementar activadores. |
Rutinas | Database | Función no compatible | Intermedio | Se detectaron rutinas <database> en. | MongoDB no tiene una forma nativa de representar rutinas. |
Mesa individual grande | Database | Rendimiento | Intermedio | El tamaño total de los datos de las tablas seleccionadas es mayor que <limit> <límite> GB, en 100 GB. | Las migraciones de datos de mayor envergadura pueden requerir una planificación minuciosa para maximizar el rendimiento y la fiabilidad. El tema "Consideraciones de implementación" de la documentación ofrece consejos útiles. |
Nombre | Tipo | Categoría | Dificultad | Reportar mensaje | Mitigación |
|---|---|---|---|---|---|
Datos geoespaciales | Tabla | Tipos de datos: | Alto | La tabla contiene columnas que requieren un manejo<columns> especial:. | Está almacenando datos geoespaciales en su base de datos. Estos se convertirán en objetos con una referencia de coordenadas |
Tipos de blobs | Tabla | Tipos de datos: | Intermedio | La tabla contiene columnas que podrían superar el límite de 16MB. | Si almacena >16MB en el registro, la migración fallará ya que Los documentos de MongoDB no pueden exceder 16MB. Recomendamos encarecidamente no almacenar elementos binarios grandes en MongoDB, pero si no se requieren transacciones multi-documento, puede utilizar GridFS. |
Precisión numérica (especificada) | Tabla | Tipo de dato | Intermedio | Las siguientes columnas corren el riesgo de perder datos debido a la precisión decimal: <columns>. | Las columnas especificadas se han configurado para soportar más precisión decimal de la que es compatible con un campo Decimal128. Durante la migración, estos valores serán redondeados a 34 cifras significativas. |
Precisión numérica (no especificada) | Tabla | Tipo de dato | Intermedio | Las siguientes columnas pueden correr el riesgo de perder datos debido a la precisión decimal: <columns>. | Las columnas especificadas utilizan una precisión decimal variable y pueden contener valores con mayor precisión decimal que la admitida en un campo Decimal128. Durante la migración, estos valores se redondearán a 34 cifras significativas. |
Zonas horarias en las fechas | Tabla | Tipo de dato:
| Intermedio | Se detectaron columnas con tipo <type>. MongoDB almacena los tiempos en UTC por defecto, y Relational Migrator puede convertir cualquier representación de tiempo local a esta forma o a un string directo. Columnas afectadas: <columns>. | MongoDB no admite almacenar zonas horarias con datos de tiempo. Considera convertir a la zona horaria deseada en tu aplicación o almacenarlo como un string. |
Archivo en disco | Tabla | Tipo de dato:
| Intermedio | Se detectaron columnas de tipo <type>. Actualmente, no se admite la migración a MongoDB para este tipo. Columnas afectadas: <columns>. |
|
Tipos de SQL Server no compatibles | Tabla | Tipos de datos: | Intermedio | Se detectaron columnas de tipo <type>. Actualmente, no se admite la migración a MongoDB para este tipo. Columnas afectadas: <columns>. | El informe agrupa todas las columnas de un tipo determinado no admitido en un único elemento.
|
Columnas de incremento automático | Tabla | Esquema | Alto | La tabla <name> tiene una columna de incremento automático. | MongoDB recomienda el uso de ObjectID para los campos de ID, ya que los ID incrementales presentan dificultades para la fragmentación. MongoDB Relational Migrator puede migrar sus claves tal cual, pero deberá escribir código para mantener este comportamiento. Si usa MongoDB Atlas, puede usar los disparadores de Atlas para autoincrementar sus ID. |
No se encontraron claves externas | Database | Esquema | Intermedio | La <name> base de datos no tiene claves externas. | Esto complicará la asignación de esquemas, ya que no podemos inferir la relación entre las tablas sin ellos. Puede usar la función de claves foráneas sintéticas de Migrator para definir relaciones lógicas entre las tablas. |
Vistas | Database | Esquema | Intermedio | Se detectaron vistas en <database>. | Las vistas son compatibles con MongoDB, pero deben convertirse a MQL. |
Activadores | Database | Función no compatible | Alto | La <name> base de datos tiene disparadores. | MongoDB no tiene una forma nativa de implementar activadores. |
Rutinas | Database | Función no compatible | Intermedio | Se detectaron rutinas <database> en. | MongoDB no tiene una forma nativa de representar rutinas. |
Mesa individual grande | Database | Rendimiento | Intermedio | El tamaño total de los datos de las tablas seleccionadas es mayor que <limit> <límite> GB, en 100 GB. | Las migraciones de datos de mayor envergadura pueden requerir una planificación minuciosa para maximizar el rendimiento y la fiabilidad. El tema "Consideraciones de implementación" de la documentación ofrece consejos útiles. |