es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Transferencia de datos de Oracle a Postgres utilizando Pandas, Python

Necesitamos cargar datos históricos (>10M) desde Oracle a Postgres. Pensamos en utilizar Pandas para leer desde Oracle en un DataFrame de Pandas y cargar el DataFrame en Postgres. Pero el equipo sugiere que tomará mucho tiempo y podría ser mejor si hay una forma de cargar directamente desde Oracle a Postgres sin el DataFrame. ¿Podrías sugerir alguna estrategia mejor para lograr esto?

¡Gracias!

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Sí, hay un enfoque mejor para cargar datos históricos desde Oracle a Postgres sin utilizar un marco de datos de Pandas. Una forma de lograr esto es utilizando el Foreign Data Wrapper (FDW) de Oracle en Postgres.

    El FDW de Oracle es una extensión en Postgres que te permite acceder a los datos de Oracle como si fuera una tabla de Postgres. Puedes instalar la extensión FDW de Oracle en Postgres y luego crear una tabla externa que apunte a la tabla de Oracle. Una vez creada la tabla externa, puedes utilizar consultas SQL estándar en Postgres para transferir los datos de la tabla de Oracle a la tabla de Postgres, sin necesidad de utilizar un marco de datos intermedio.

    A continuación, se pueden seguir los siguientes pasos para cargar datos desde Oracle a Postgres utilizando el FDW de Oracle:

    1. Instalar la extensión FDW de Oracle en Postgres.
    2. Crear un servidor externo en Postgres para conectarse a la base de datos de Oracle.
    3. Crear un mapeo de usuarios para vincular el usuario de Postgres al usuario de Oracle.
    4. Crear una tabla externa en Postgres que apunte a la tabla de Oracle.
    5. Utilizar consultas SQL estándar en Postgres para copiar los datos desde la tabla externa a la tabla local de Postgres.

    Utilizando el FDW de Oracle, puedes transferir grandes cantidades de datos rápidamente y de manera eficiente entre Oracle y Postgres sin crear ningún marco de datos intermedio. Este enfoque puede reducir significativamente el tiempo necesario para transferir los datos en comparación con el uso de marcos de datos de Pandas.

Comments are closed.