Solución de problemas del migrador de Oracle NoSQL Database

Descubra los desafíos generales a los que puede enfrentarse mientras utiliza el , y cómo resolverlos.

La migración ha fallado. ¿Cómo puedo resolver esto?

Un fallo de la migración de datos puede deberse a varios motivos subyacentes. A continuación se enumeran las causas importantes:

Tabla 9-3 Causas del fallo de migración

Mensaje de error Significado Resolución
Failed to connect to Oracle NoSQL Database El migrador no pudo establecer una conexión con la NoSQL Database.
  • Compruebe si los valores de los atributos storeName y helperHosts en el archivo JSON de configuración son válidos y que se puede acceder a los hosts.
  • Para un almacén protegido, verifique si el archivo de seguridad es válido con los valores de nombre de usuario y contraseña correctos.
Failed to connect to Oracle NoSQL Database Cloud Service El migrador no ha podido establecer una conexión con Oracle NoSQL Database Cloud Service.
  • Verifique si la URL de punto final o el nombre de región especificados en el archivo JSON de configuración es correcto.
  • Compruebe si el archivo de credenciales de OCI está disponible en la ruta de acceso especificada en el archivo JSON de configuración.
  • Asegúrese de que las credenciales de OCI proporcionadas en las credenciales de OCI sean válidas.
Table not found La tabla identificada para la migración no se pudo ubicar mediante el NoSQL Database Migrator.

Para el origen:

  • Verifique si la tabla está presente en la base de datos origen.
  • Asegúrese de que la tabla está cualificada con su espacio de nombres en el archivo JSON de configuración, si la tabla se crea en un espacio de nombres no por defecto.
  • Verifique si tiene la autorización de lectura/escritura necesaria para acceder a la tabla.
  • Si el origen es Oracle NoSQL Database Cloud Service, verifique si el nombre de compartimento válido está especificado en el archivo JSON de configuración y asegúrese de tener la autorización necesaria para acceder a la tabla.

Para el Sink:

  • Verifique si la tabla está presente en el Sink. Si no existe, debe crear la tabla manualmente o utilizar la configuración schemaInfo para crearla a través de la migración.
DDL Execution failed Los comandos DDL proporcionados en el archivo de definición de esquema de entrada no son válidos.
  • Compruebe la sintaxis de los comandos DDL en el archivo schemaPath.
  • Asegúrese de que solo hay una sentencia DDL por línea en el archivo schemaPath.
failed to write record to the sink table with java.lang.IllegalArgumentException El registro de entrada no coincide con el esquema de tabla del disipador.
  • Compruebe si los tipos de dato y los nombres de columna especificados en la tabla de destino coinciden con el esquema de tabla de destino.
  • Si aplicó alguna transformación, compruebe si los registros transformados coinciden con el esquema de la tabla de sincronización.
Request timeout La operación de origen o hundimiento no se ha finalizado dentro del tiempo esperado.
  • Verifique la conexión de red.
  • Compruebe si NoSQL Database está activo y en ejecución.
  • Intente aumentar el valor requestTimeout en el archivo JSON de configuración.

¿Qué debo tener en cuenta antes de reiniciar una migración fallida?

Cuando una tarea de migración de datos falla, el fregadero estará en un estado intermedio que contenga los datos importados hasta el punto de fallo. Puede identificar los detalles de error y fallo de los logs y reiniciar la migración después de diagnosticar y corregir el error. Una migración reiniciada se inicia, procesando todos los datos desde el principio. No hay forma de realizar un punto de control y reiniciar la migración desde el punto de fallo. Por lo tanto, NoSQL Database Migrator sobrescribe cualquier registro que ya se ha migrado al disipador.

La migración es demasiado lenta. ¿Cómo puedo acelerar el proceso?

El tiempo necesario para la migración de datos depende de varios factores, como el volumen de datos que se va a migrar, la velocidad de la red y la carga actual en la base de datos. En el caso de un servicio en la nube, la velocidad de migración también depende del rendimiento de lectura y el rendimiento de escritura aprovisionados. Por lo tanto, para mejorar la velocidad de migración, puede:
  • Intente reducir la carga de trabajo actual en Oracle NoSQL Database al migrar los datos.
  • Asegúrese de que la máquina que ejecuta la migración, el origen y el destino estén ubicados en el mismo centro de datos y que las latencias de red sean mínimas.
  • En el caso de Oracle NoSQL Database Cloud Service, aprovisione un alto rendimiento de lectura/escritura y verifique si el almacenamiento asignado a la tabla es suficiente o no. Si el NoSQL Database Migrator no está creando la tabla, puede aumentar el rendimiento de escritura. Si el migrador está creando la tabla, considere la posibilidad de especificar un valor superior para el parámetro schemaInfo.writeUnits en la configuración de sink. Una vez finalizada la migración de datos, puede reducir este valor. Tenga en cuenta los límites diarios de los cambios de rendimiento. Consulte Límites de la nube y Plantillas de configuración de enlace.

Realice una migración de larga duración con enormes conjuntos de datos. ¿Cómo puedo realizar un seguimiento del progreso de la migración?

Puede activar el registro adicional para realizar un seguimiento del progreso de una migración de larga ejecución. Para controlar el comportamiento de registro del migrador de Oracle NoSQL Database, debe definir el nivel deseado de registro en el archivo logging.properties. Este archivo se proporciona con el paquete NoSQL Database Migrator y está disponible en el directorio donde se desempaquetó Oracle NoSQL Database Migrator. Los diferentes niveles de registro son OFF, SEVERE, WARNING, INFO, FINE, y ALL en orden de aumento de la verbosidad. Al definir el nivel de log en OFF, se desactiva toda la información de registro, mientras que al definir el nivel de log en ALL se proporciona la información de log completa. El nivel de log por defecto es WARNING. Por defecto, toda la salida de registro está configurada para ir a la consola. Puede ver comentarios en el archivo logging.properties para conocer cada nivel de log.