Data Pump es una característica de Oracle que proporciona un mecanismo de alto rendimiento para mover datos y objetos de base de datos entre bases de datos Oracle.

Funcionamiento de Data Pump:

  • Exportación (expdp): El proceso de exportación lee los datos y objetos de la base de datos de origen y los escribe en un archivo de volcado (dump file) en el sistema de archivos.
  • Importación (impdp): El proceso de importación lee el archivo de volcado y carga los datos y objetos en la base de datos de destino.

Configuración de Data Pump:

Directorios de base de datos: Definir directorios de la base de datos que apunten a ubicaciones del sistema de archivos donde se almacenarán los archivos de volcado.

Conéctate a la base de datos como usuario con privilegios de administración (por ejemplo, SYSTEM o SYS).

  • Ejecuta el siguiente comando SQL para crear un directorio de base de datos:
    CREATE DIRECTORY data_pump_dir AS '/ruta/al/directorio';

    Reemplaza /ruta/al/directorio con la ruta física del sistema de archivos donde se almacenarán los archivos de volcado (dump files) de Data Pump.

    Verificar la configuración:

    • Conéctate a la base de datos con el usuario que has configurado.
    • Ejecuta el siguiente comando para listar los directorios disponibles:
      SELECT * FROM DBA_DIRECTORIES;

      Deberías ver el directorio «data_pump_dir» que has creado.

      Credenciales de usuario: Crear usuarios con los permisos adecuados para ejecutar las operaciones de exportación e importación.

      • Crea un usuario o utiliza un usuario existente que utilizará Data Pump.
      • Otorga los siguientes permisos al usuario:
      GRANT CREATE ANY DIRECTORY TO usuario;  
      GRANT READ, WRITE ON DIRECTORY data_pump_dir TO usuario;
      • Esto permite que el usuario pueda crear directorios y leer/escribir en el directorio «data_pump_dir» que has creado.

      Parámetros de exportación e importación: Configurar los parámetros de expdp e impdp según los requisitos, como tablas, esquemas, directorios, etc.

        Exportación (expdp):

        expdp system/password DIRECTORY=data_pump_dir DUMPFILE=employees.dmp TABLES=employees

        Este comando exporta la tabla «employees» a un archivo de volcado llamado «employees.dmp» en el directorio «data_pump_dir».

        Importación (impdp):

        impdp system/password DIRECTORY=data_pump_dir DUMPFILE=employees.dmp TABLES=employees

        Este comando importa los datos de la tabla «employees» desde el archivo de volcado «employees.dmp» a la base de datos.

        aquí te muestro algunas de las principales configuraciones que se pueden utilizar con Oracle Data Pump (expdp/impdp):

        Principales Configuraciones en DATAPUMP

        1. Selección de objetos:
          • FULL=Y: Exporta/Importa toda la base de datos.
          • SCHEMAS=schema1,schema2,...: Exporta/Importa objetos de esquemas específicos.
          • TABLES=table1,table2,...: Exporta/Importa tablas específicas.
          • TABLESPACES=tablespace1,tablespace2,...: Exporta/Importa objetos de tablespaces específicos.
        2. Archivos de volcado (dump files):
          • DUMPFILE=file1.dmp,file2.dmp,...: Especifica los nombres de los archivos de volcado.
          • DIRECTORY=data_pump_dir: Indica el directorio de base de datos donde se ubicarán los archivos de volcado.
          • FILESIZE=size: Establece el tamaño máximo de cada archivo de volcado.
        3. Opciones de proceso:
          • PARALLEL=num_procesos: Especifica el grado de paralelismo para las operaciones.
          • LOGFILE=log_file.log: Genera un archivo de registro de la operación.
          • FLASHBACK_SCN=scn: Exporta los datos tal como se encontraban en un determinado número de cambio de sistema (SCN).
          • REMAP_SCHEMA=from_schema:to_schema: Renombra el esquema durante la importación.
        4. Opciones de seguridad y permisos:
          • NETWORK_LINK=link_name: Permite exportar/importar entre bases de datos mediante una conexión de base de datos a base de datos.
          • EXCLUDE=object_type: Excluye ciertos tipos de objetos de la exportación/importación.
          • INCLUDE=object_type: Incluye solo determinados tipos de objetos en la exportación/importación.
          • TRANSFORM=option:value: Aplica transformaciones específicas a los objetos exportados/importados.
        5. Opciones de rendimiento y compresión:
          • COMPRESSION=type: Habilita la compresión de los datos exportados (NONE, LOW, MEDIUM, HIGH).
          • ENCRYPTION=type: Cifra los datos exportados (NONE, ALL, DATA_ONLY, METADATA_ONLY).
          • ESTIMATE=STATISTICS: Calcula la estimación del tamaño del archivo de volcado.
        6. Modo de actualización incremental:
          • INCREMENTAL=LAST_DATE: Exporta solo los cambios realizados desde la última exportación.
          • PARTITION_OPTIONS=option: Controla cómo se exportan/importan las particiones.

        Diferencias entre Oracle 19c y versiones anteriores:

        1. Rendimiento mejorado: Data Pump en Oracle 19c ofrece mejoras significativas en cuanto a rendimiento y velocidad de exportación e importación, en comparación con las versiones anteriores de Oracle.
        2. Soporte de nuevos formatos de datos: Oracle 19c admite la exportación e importación de nuevos formatos de datos, como Parquet y Avro, además de los formatos tradicionales.
        3. Mejoras en la paralelización: Data Pump en Oracle 19c permite una mayor paralelización de las operaciones de exportación e importación, lo que se traduce en tiempos de ejecución más rápidos.
        4. Nuevas características y funcionalidades: Oracle 19c introduce varias mejoras y características adicionales, como la capacidad de realizar actualizaciones incrementales, la opción de exportar e importar a nivel de partición, y la compatibilidad con la replicación de datos.
        5. Mejor integración con otras herramientas: Data Pump en Oracle 19c se integra de manera más fluida con otras herramientas y servicios de Oracle, como GoldenGate y Enterprise Manager Cloud Control.

        Pros y contras de Data Pump (expdp/impdp):

        Pros:

        • Mayor rendimiento y velocidad: Data Pump ofrece un mejor rendimiento y velocidad de exportación e importación en comparación con herramientas más antiguas como exp/imp.
        • Flexibilidad en el formato de exportación: Data Pump permite exportar e importar en diversos formatos, como Parquet, Avro, XML, etc.
        • Granularidad en la selección de objetos: Data Pump permite seleccionar con precisión los objetos (tablas, esquemas, bases de datos) que se desean exportar o importar.
        • Capacidad de paralelización: Data Pump puede aprovechar la paralelización para acelerar las operaciones de exportación e importación.
        • Soporte de actualizaciones incrementales: Data Pump permite realizar actualizaciones incrementales de los datos exportados.

        Contras:

        • Complejidad de configuración: La configuración de directorios, credenciales y parámetros puede ser más compleja que otras herramientas.
        • Dependencia de la base de datos: Las operaciones de exportación e importación dependen de que la base de datos esté activa y en funcionamiento.
        • Limitaciones en la restauración a nivel de bloque: Data Pump no permite realizar restauraciones a nivel de bloque, lo cual puede ser importante en algunos escenarios de recuperación.

        Deja un comentario

        Tendencias