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 dato: Tipos de datos que pueden ocasionar pérdida de precisión o 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 la base de datos o de la 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 | tipo de dato:
| Alto | La tabla contiene columnas que requieren un manejo especial: <columns>. | Estás almacenando datos geoespaciales en tu 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 exceder el límite de 16MB. | Si están almacenando más de 16MB en el registro, la migración fallará ya que 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 presentan riesgo de pérdida de 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 auto incremento | 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 migrar tus llaves tal y como están, pero tendrás que escribir código para mantener este comportamiento. Si utilizas MongoDB Atlas, puedes utilizar Atlas Triggers para autoincrementar tus IDs. |
No se encontraron claves foráneas | Database | Esquema | Intermedio | La <name> base de datos no tiene claves externas. | Esto hará que el mapeo de esquemas sea más complicado ya que no podemos inferir la relación entre tus tablas sin ellos. Puedes utilizar la funcionalidad de claves externas sintéticas de Migrator para definir relaciones lógicas entre tus tablas. |
Vistas | Database | Esquema | Intermedio | Se detectaron visualizaciones en <database>. | Las vistas son compatibles en MongoDB, pero deben convertirse a MQL. |
Activadores | Database | Funcionalidad no compatible | Alto | La <name> base de datos tiene disparadores. | MongoDB no tiene una forma nativa de implementar disparadores. |
Rutinas | Database | Funcionalidad no compatible | Intermedio | Se detectaron rutinas en <database>. | MongoDB no tiene una forma nativa de representar rutinas. |
Mesa grande y única | Database | Rendimiento | Intermedio | El tamaño total de los datos de las tablas seleccionadas excede los <limit> <límite> GB, con 100 GB. | Las tareas más grandes de migración de datos pueden requerir una planificación cuidadosa para maximizar el rendimiento y la confiabilidad. El tema consideraciones de implementación en la documentación proporciona consejos que pueden ayudar. |
Nombre | Tipo | Categoría | Dificultad | Reportar mensaje | Mitigación |
|---|---|---|---|---|---|
Datos geoespaciales | tabla | Tipos de datos: | Alto | La tabla contiene columnas que requieren un manejo especial: <columns>. | Estás almacenando datos geoespaciales en tu 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 exceder 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 presentan riesgo de pérdida de 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 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 con tipo.<type> Por el momento, no se admite la migración a MongoDB para este tipo. Columnas afectadas: <columns>. |
|
Tipos de Oracle no compatibles | tabla | Tipos de datos: | Intermedio | Se detectaron columnas con tipo.<type> Por el momento, no se admite la migración a MongoDB para este tipo. Columnas afectadas: <columns>. | El informe agrupa todas las columnas de un tipo no compatible en un solo elemento.
|
Columnas de auto incremento | tabla | Esquema | Alto | La tabla <name> tiene una columna de incremento automático. | MongoDB fomenta el uso de ObjectID para campos ID porque los IDs incrementales tienen dificultades con el particionado. El MongoDB Relational Migrator puede migrar tus claves tal cual, pero necesitarás escribir código para mantener este comportamiento. Si estás usando MongoDB Atlas, puedes usar atlas triggers para auto-incrementar tus identificadores. |
No se encontraron claves foráneas | Database | Esquema | Intermedio | La <name> base de datos no tiene claves externas. | Esto hará que el mapeo de esquemas sea más complicado ya que no podemos inferir la relación entre tus tablas sin ellos. Puedes utilizar la funcionalidad de claves externas sintéticas de Migrator para definir relaciones lógicas entre tus tablas. |
Vistas | Database | Esquema | Intermedio | Se detectaron visualizaciones en <database>. | Las vistas son compatibles en MongoDB, pero deben convertirse a MQL. |
Activadores | Database | Funcionalidad no compatible | Alto | La <name> base de datos tiene disparadores. | MongoDB no tiene una forma nativa de implementar disparadores. |
Rutinas | Database | Funcionalidad no compatible | Intermedio | Se detectaron rutinas en <database>. | MongoDB no tiene una forma nativa de representar rutinas. |
Paquetes de Oracle | Database | Funcionalidad no compatible | Intermedio | Un paquete es un objeto de esquema que agrupa tipos, variables, constantes, subprogramas, cursores y excepciones de PL/SQL que están lógicamente relacionados. 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 grande y única | Database | Rendimiento | Intermedio | El tamaño total de los datos de las tablas seleccionadas excede los <limit> <límite> GB, con 100 GB. | Las tareas más grandes de migración de datos pueden requerir una planificación cuidadosa para maximizar el rendimiento y la confiabilidad. El tema consideraciones de implementación en la documentación proporciona consejos que pueden ayudar. |
Nombre | Tipo | Categoría | Dificultad | Reportar mensaje | Mitigación |
|---|---|---|---|---|---|
Datos geoespaciales | tabla | Tipos de datos: | Alto | La tabla contiene columnas que requieren un manejo especial: <columns>. | Estás almacenando datos geoespaciales en tu 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 exceder 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 presentan riesgo de pérdida de 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 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 auto incremento | tabla | Esquema | Alto | La tabla <name> tiene una columna de incremento automático. | MongoDB fomenta el uso de ObjectID para campos ID porque los IDs incrementales tienen dificultades con el particionado. El MongoDB Relational Migrator puede migrar tus claves tal cual, pero necesitarás escribir código para mantener este comportamiento. Si estás usando MongoDB Atlas, puedes usar atlas triggers para auto-incrementar tus identificadores. |
No se encontraron claves foráneas | Database | Esquema | Intermedio | La <name> base de datos no tiene claves externas. | Esto hará que el mapeo de esquemas sea más complicado ya que no podemos inferir la relación entre tus tablas sin ellos. Puedes utilizar la funcionalidad de claves externas sintéticas de Migrator para definir relaciones lógicas entre tus tablas. |
Vistas | Database | Esquema | Intermedio | Se detectaron visualizaciones en <database>. | Las vistas son compatibles en MongoDB, pero deben convertirse a MQL. |
vistas materializadas | Database | Funcionalidad 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 | Funcionalidad no compatible | Alto | La <name> base de datos tiene disparadores. | MongoDB no tiene una forma nativa de implementar disparadores. |
Rutinas | Database | Funcionalidad no compatible | Intermedio | Se detectaron rutinas en <database>. | MongoDB no tiene una forma nativa de representar rutinas. |
Mesa grande y única | Database | Rendimiento | Intermedio | El tamaño total de los datos de las tablas seleccionadas excede los <limit> <límite> GB, con 100 GB. | Las tareas más grandes de migración de datos pueden requerir una planificación cuidadosa para maximizar el rendimiento y la confiabilidad. El tema consideraciones de implementación en la documentación proporciona consejos que pueden ayudar. |
Nombre | Tipo | Categoría | Dificultad | Reportar mensaje | Mitigación |
|---|---|---|---|---|---|
Datos geoespaciales | tabla | Tipos de datos: | Alto | La tabla contiene columnas que requieren un manejo especial: <columns>. | Estás almacenando datos geoespaciales en tu 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 exceder 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 presentan riesgo de pérdida de 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 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 con tipo.<type> Por el momento, no se admite la migración a MongoDB para este tipo. Columnas afectadas: <columns>. |
|
Tipos no admitidos de SQL servidor | tabla | Tipos de datos: | Intermedio | Se detectaron columnas con tipo.<type> Por el momento, no se admite la migración a MongoDB para este tipo. Columnas afectadas: <columns>. | El informe agrupa todas las columnas de un tipo no compatible en un solo elemento.
|
Columnas de auto incremento | tabla | Esquema | Alto | La tabla <name> tiene una columna de incremento automático. | MongoDB fomenta el uso de ObjectID para campos ID porque los IDs incrementales tienen dificultades con el particionado. El MongoDB Relational Migrator puede migrar tus claves tal cual, pero necesitarás escribir código para mantener este comportamiento. Si estás usando MongoDB Atlas, puedes usar atlas triggers para auto-incrementar tus identificadores. |
No se encontraron claves foráneas | Database | Esquema | Intermedio | La <name> base de datos no tiene claves externas. | Esto hará que el mapeo de esquemas sea más complicado ya que no podemos inferir la relación entre tus tablas sin ellos. Puedes utilizar la funcionalidad de claves externas sintéticas de Migrator para definir relaciones lógicas entre tus tablas. |
Vistas | Database | Esquema | Intermedio | Se detectaron visualizaciones en <database>. | Las vistas son compatibles en MongoDB, pero deben convertirse a MQL. |
Activadores | Database | Funcionalidad no compatible | Alto | La <name> base de datos tiene disparadores. | MongoDB no tiene una forma nativa de implementar disparadores. |
Rutinas | Database | Funcionalidad no compatible | Intermedio | Se detectaron rutinas en <database>. | MongoDB no tiene una forma nativa de representar rutinas. |
Mesa grande y única | Database | Rendimiento | Intermedio | El tamaño total de los datos de las tablas seleccionadas excede los <limit> <límite> GB, con 100 GB. | Las tareas más grandes de migración de datos pueden requerir una planificación cuidadosa para maximizar el rendimiento y la confiabilidad. El tema consideraciones de implementación en la documentación proporciona consejos que pueden ayudar. |