Uso de pump de datos para exportar datos a Cloud Object Storage en Oracle Database 26ai

Oracle Database 26ai admite exportaciones directas de Oracle Data Pump desde la base de datos de IA autónoma al siguiente almacenamiento de objetos en la nube:

  • Almacenamiento de objeto de infraestructura de nube de Oracle
  • Amazon S3
  • Almacenamiento de bloques de Azure o almacenamiento de lago de datos de Azure
  • Google Cloud Storage

Con este método de exportación, Oracle Data Pump escribe los archivos de volcado directamente en el almacenamiento de objetos en la nube de destino. No es necesario guardar primero los archivos de volcado en un directorio de base de datos y, a continuación, cargarlos por separado.

Para realizar una exportación directa:

  1. Cree una credencial para el almacenamiento de objetos en la nube de destino mediante DBMS_CLOUD.CREATE_CREDENTIAL.
  2. Especifique el nombre de credencial mediante el parámetro credential de pump de datos.
  3. Especifique la ubicación de destino de Cloud Object Storage mediante el parámetro dumpfile.
  4. Ejecute la exportación de pump de datos mediante un archivo de parámetros.

Para obtener información general sobre el uso del parámetro credential de Data Pump, consulte Use Oracle Data Pump to Export Data to Object Store Using CREDENTIAL Parameter (versión 19.9 o posterior).

Antes de empezar

Antes de empezar:

  1. Cree un cubo o contenedor en el almacenamiento de objetos en la nube de destino.
  2. Obtenga las credenciales necesarias para acceder a Cloud Object Storage de destino.
  3. Instale Oracle Data Pump 19.9 o posterior. Oracle recomienda utilizar la última versión de Descargas de Oracle Instant Client, incluido el paquete de herramientas.
  4. Conéctese a la base de datos de IA autónoma mediante el servicio HIGH para obtener el mejor rendimiento de exportación.

El parámetro directory especifica el directorio de base de datos utilizado para el archivo log de pump de datos. Los archivos de volcado se escriben directamente en el servicio de almacenamiento de objetos en la nube especificado por el parámetro dumpfile.

Creación de una credencial de Cloud Object Storage

Cree una credencial para Cloud Object Storage a la que desee exportar los archivos de volcado.

Ejemplos

En los siguientes ejemplos se muestra cómo crear credenciales para cada almacenamiento de objetos en la nube soportado. Utilice el nombre de credencial que cree en el archivo de parámetros de pump de datos correspondiente.

OCI Object Storage

Para Oracle Cloud Infrastructure Object Storage, utilice la autenticación nativa de OCI soportada para Oracle Database 26ai. Por ejemplo:

BEGIN
  DBMS_CLOUD.CREATE_CREDENTIAL(
    credential_name => 'OCI_OBJECT_STORAGE_CRED',
    username        => 'oci_user@example.com',
    password        => 'oci_authentication_token'
  );
END;
/

Amazon S3

Para Amazon S3, especifique el ID de clave de acceso de AWS como username y la clave de acceso secreta de AWS como password:

BEGIN
  DBMS_CLOUD.CREATE_CREDENTIAL(
    credential_name => 'AWS_S3_CRED',
    username        => 'AKIAEXAMPLE123456789',
    password        => 'aws_secret_access_key'
  );
END;
/

Almacenamiento de bloques de Azure

Para Azure Blob Storage o Azure Data Lake Storage, especifique el nombre de la cuenta de almacenamiento como username y el token de firma de acceso compartido (SAS) como password:

BEGIN
  DBMS_CLOUD.CREATE_CREDENTIAL(
    credential_name => 'AZURE_BLOB_CRED',
    username        => 'myadlsstorageacct',
    password        => 'azure_sas_token'
  );
END;
/

Google Cloud Storage

Para Google Cloud Storage, cree una credencial utilizando la información de la cuenta de servicio requerida por su método de autenticación de Google Cloud Storage. Por ejemplo:

BEGIN
  DBMS_CLOUD.CREATE_CREDENTIAL(
    credential_name => 'GCS_CRED',
    username        => 'gcs-service-account@example-project.iam.gserviceaccount.com',
    password        => 'google_private_key'
  );
END;
/

Para obtener más información:

Creación de un Archivo de Parámetros de Pump de Datos

Cree un archivo de parámetros que especifique los objetos que desea exportar, la credencial y la URL de Cloud Object Storage. Los siguientes ejemplos utilizan DATA_PUMP_DIR para el archivo log y %L para crear archivos de volcado adicionales según sea necesario.

Exportación de un esquema a Azure Blob Storage

El siguiente archivo de parámetros exporta el esquema HR al almacenamiento de bloques de Azure:

schemas=HR
credential=AZURE_BLOB_CRED
dumpfile=https://<azure_storage_account>.blob.core.windows.net/<container>/hr_exp%L.dmp
filesize=5GB
parallel=8
directory=DATA_PUMP_DIR
logfile=hr_export.log
encryption_pwd_prompt=yes

Exportación de una base de datos completa a Amazon S3

El siguiente archivo de parámetros exporta la base de datos completa a Amazon S3:

full=y
credential=AWS_S3_CRED
dumpfile=https://s3.<aws_region>.amazonaws.com/<bucket>/adb_exp%L.dmp
filesize=5GB
parallel=8
directory=DATA_PUMP_DIR
logfile=aws_export.log
encryption_pwd_prompt=yes

Exportación de una base de datos completa a OCI Object Storage

El siguiente archivo de parámetros exporta la base de datos completa a un cubo de OCI Object Storage. Utiliza la credencial OCI_OBJECT_STORAGE_CRED creada en el paso anterior.

full=y
credential=OCI_OBJECT_STORAGE_CRED
dumpfile=https://<namespace>.objectstorage.<region>.oci.customer-oci.com/n/<namespace>/b/<bucket>/o/adb_exp%L.dmp
filesize=5GB
parallel=8
directory=DATA_PUMP_DIR
logfile=oci_export.log
encryption_pwd_prompt=yes

En este ejemplo, Data Pump utiliza la credencial de OCI para autenticarse con Object Storage y escribe los archivos de volcado en el cubo especificado. Sustituya <NAMESPACE>, <REGION> y <BUCKET> por los valores de su arrendamiento de OCI.

Exportación de un esquema a Google Cloud Storage

El siguiente archivo de parámetros exporta el esquema HR a un cubo de Google Cloud Storage. Utiliza la credencial GCS_CRED creada en el paso anterior.

schemas=HR
credential=GCS_CRED
dumpfile=https://storage.googleapis.com/<BUCKET>/hr_exp%L.dmp
filesize=5GB
parallel=8
directory=DATA_PUMP_DIR
logfile=gcs_export.log
encryption_pwd_prompt=yes

En este ejemplo, el pump de datos solo exporta el esquema HR y escribe los archivos de volcado en el cubo de Google Cloud Storage especificado.

Ejecutar la exportación de pump de datos

Ejecute la exportación de pump de datos con el archivo de parámetros. Por ejemplo:

expdp admin/<password>@<db_service_name> parfile=azure_expdp.par

Para el ejemplo de Amazon S3, ejecute:

expdp admin/<password>@<db_service_name> parfile=aws_expdp.par

Para el ejemplo de OCI Object Storage, ejecute:

expdp admin/<password>@<db_service_name> parfile=oci_expdp.par

Para el ejemplo de Google Cloud Storage, ejecute:

expdp admin/<password>@<db_service_name> parfile=gcs_expdp.par

El archivo log del pump de datos se escribe en DATA_PUMP_DIR. Los archivos de volcado se escriben en la URL de Cloud Object Storage especificada en el archivo de parámetros.

Notas de uso

  • Utilice el servicio de base de datos HIGH para obtener el mejor rendimiento de exportación.
  • Defina parallel en aproximadamente una cuarta parte de las ECPU disponibles.
  • La variable de sustitución %L crea varios archivos de volcado según sea necesario.
  • Considere el uso de compression=all para grandes exportaciones.
  • Utilice encryption_pwd_prompt=yes al exportar datos confidenciales. Utilice la misma contraseña de cifrado al importar los archivos de volcado.
  • Para realizar una exportación completa o exportar objetos propiedad de otros usuarios, necesita el rol DATAPUMP_CLOUD_EXP.
  • Para obtener información sobre la descarga de archivos de volcado, la ejecución de Data Pump Import y la limpieza del almacén de objetos, consulte Descarga de archivos de volcado, ejecución de Data Pump Import y limpieza del almacén de objetos.

Para obtener información detallada sobre los parámetros de exportación de pump de datos, consulte Utilidades de Oracle AI Database.