Importar datos de recopilación de SODA mediante Oracle Data Pump versión 19.6 o posterior

Muestra los pasos para importar recopilaciones de SODA a Autonomous Database con Oracle Data Pump.

Puede exportar e importar recopilaciones de SODA mediante las utilidades de Oracle Data Pump a partir de la versión 19.6. Oracle recomienda utilizar la versión más reciente de Oracle Data Pump para importar datos de archivos de Data Pump en su base de datos.

Descargue la versión más reciente de Oracle Instant Client, que incluye Oracle Data Pump, para su plataforma desde Oracle Instant Client Downloads. Consulte las instrucciones de instalación en la página de descarga de instalación de la plataforma para conocer los pasos de instalación necesarios después de descargar Oracle Instant Client.

In Oracle Data Pump, if your source files reside on Oracle Cloud Infrastructure Object Storage you can use Oracle Cloud Infrastructure native URIs, Swift URIs, or pre-authenticated URIs. Consulte DBMS_CLOUD Package File URI Formats para obtener más información sobre estos formatos de URI de archivo.

Si utiliza un URI autenticado previamente de Oracle Cloud Infrastructure, deberá proporcionar un parámetro credential. Sin embargo, se ignoran las credenciales para una URL autenticada previamente (y no es necesario que las credenciales proporcionadas sean válidas). Consulte DBMS_CLOUD Package File URI Formats para obtener información sobre los URI autenticados previamente de Oracle Cloud Infrastructure.

En este ejemplo se muestra cómo crear los metadatos de recopilación de SODA e importar una recopilación de SODA con Data Pump.

  1. En la base de datos origen, exporte la recopilación de SODA mediante el comando expdp de Oracle Data Pump.
  2. Cargue el juego de archivos de volcado del paso 1 en Cloud Object Storage.
  3. Cree una recopilación de SODA con los metadatos de recopilación de SODA necesarios en su instancia de Autonomous Database.

    Por ejemplo, si exporta una recopilación denominada MyCollectionName desde la base de datos de origen con los siguientes metadatos:

    • La columna de contenido es de tipo BLOB.

    • La columna de versión utiliza el método SHA256.

    A continuación, en la instancia de Autonomous Database en la que importe la recopilación, cree una nueva recopilación:

    • Por defecto, en Autonomous Database para una nueva recopilación, la columna de contenido se define en BLOB con jsonFormat especificado como OSON.

    • Por defecto, en Autonomous Database para una nueva recopilación, versionColumn.method se define en UUID.

    Consulte Metadatos de recopilación por defecto SODA en Autonomous Database para obtener más información.

    Por ejemplo:

    
    DECLARE
       collection_create SODA_COLLECTION_T;
    BEGIN
       collection_create := DBMS_SODA.CREATE_COLLECTION('MyCollectionName');
    END;
    /
    COMMIT;

    Puede utilizar la función PL/SQL DBMS_SODA.LIST_COLLECTION_NAMES para detectar recopilaciones existentes. Consulte LIST_COLLECTION_NAMES Function para obtener más información.

    Puede ver los metadatos de las recopilaciones de SODA consultando la vista USER_SODA_COLLECTIONS. Consulte USER_SODA_COLLECTIONS para obtener más información.

  4. Almacene su credencial de Cloud Object Storage mediante DBMS_CLOUD.CREATE_CREDENTIAL.

    Por ejemplo, para crear credenciales de token de autenticación de Oracle Cloud Infrastructure:

    BEGIN
      DBMS_CLOUD.CREATE_CREDENTIAL(
        credential_name => 'DEF_CRED_NAME',
        username => 'adb_user@example.com',
        password => 'password'
      );
    END;
    /

    Para obtener más información sobre la autenticación de token de autenticación de Oracle Cloud Infrastructure, consulte el procedimiento CREATE_CREDENTIAL.

    Por ejemplo, para crear credenciales basadas en la clave de firma de Oracle Cloud Infrastructure:

    BEGIN
       DBMS_CLOUD.CREATE_CREDENTIAL (
           credential_name => 'DEF_CRED_NAME',
           user_ocid       => ‘ocid1.user.oc1..aaaaaaaauq54mi7zdyfhw33ozkwuontjceel7fok5nq3bf2vwetkpqsoa’,
           tenancy_ocid    => ‘ocid1.tenancy.oc1..aabbbbbbaafcue47pqmrf4vigneebgbcmmoy5r7xvoypicjqqge32ewnrcyx2a’,
           private_key     => ‘MIIEogIBAAKCAQEAtUnxbmrekwgVac6FdWeRzoXvIpA9+0r1.....wtnNpESQQQ0QLGPD8NM//JEBg=’,
           fingerprint     => ‘f2:db:f9:18:a4:aa:fc:94:f4:f6:6c:39:96:16:aa:27’);
    END;
    /

    Para obtener más información sobre las credenciales basadas en claves de firma de Oracle Cloud Infrastructure, consulte el procedimiento CREATE_CREDENTIAL.

    Tipos de credenciales soportados:

    • La importación de pump de datos soporta credenciales basadas en token de autenticación de Oracle Cloud Infrastructure y credenciales basadas en clave de firma de Oracle Cloud Infrastructure.

      Para obtener más información sobre las credenciales basadas en claves de firma de Oracle Cloud Infrastructure, consulte el procedimiento CREATE_CREDENTIAL.

    • El pump de datos soporta el uso de una URL autenticada previamente de Oracle Cloud Infrastructure Object Storage para el parámetro dumpfile. Al utilizar una URL autenticada previamente, es necesario proporcionar el parámetro credential y el valor credential puede ser NULL. Consulte Uso de solicitudes autenticadas previamente para obtener más información.
  5. Ejecute Data Pump Import con el parámetro dumpfile definido en la lista de URL de archivo de Cloud Object Storage y el parámetro credential definido en el nombre de la credencial que ha creado en el paso anterior.
    Nota

    Importe los datos de recopilación mediante la opción CONTENT=DATA_ONLY.

    Especifique la recopilación que desea importar mediante el parámetro INCLUDE. Esto resulta útil si un juego de archivos de datos contiene todo el esquema y la recopilación de SODA que necesita importar se incluye como parte del juego de archivos de volcado.

    Utilice REMAP_DATA para cambiar cualquiera de las columnas durante la importación. En este ejemplo se muestra el uso de REMAP_DATA para cambiar el método de columna de versión de SHA256 a UUID.

    impdp admin/password@db2022adb_high \       
         directory=data_pump_dir \       
         credential=def_cred_name \      
         dumpfile= https://namespace-string.objectstorage.us-ashburn-1.oci.customer-oci.com/n/namespace-string/b/bucketname/o/export%l.dmp \
         
         encryption_pwd_prompt=yes \
         SCHEMA=my_schema \
         INCLUDE=TABLE:\"= \'MyCollectionName\'\"  \
         CONTENT=DATA_ONLY \
         REMAP_DATA=my_schema.'\"MyCollectionName\"'.VERSION:SYS.DBMS_SODA.TO_UUID 
          
    

    Notas para los parámetros de pump de datos:

    • Si durante la exportación con expdp utiliza el parámetro encryption_pwd_prompt=yes, utilice encryption_pwd_prompt=yes e introduzca la misma contraseña en la petición de datos impdp que ha especificado durante la exportación.

    • El parámetro dumpfile soporta los comodines %L y %l, además de los comodines %U y %u heredados. Por ejemplo, dumpfile=export%L.dmp. Utilice el comodín %L o %l para las exportaciones de Oracle Database versión 12.2 y posteriores. Este comodín amplía el nombre del archivo de volcado a un entero de incremento de ancho variable de 3 dígitos a 10 dígitos, comenzando en 100 y terminando en 2147483646.

      Utilice el comodín heredado %U o %u para las exportaciones de Oracle Database anteriores a la versión 12.2. Si utiliza esta opción y se necesitan más de 99 archivos de volcado, debe especificar varios nombres de archivo de volcado, cada uno con el parámetro %U o %u.

    Para dumpfile, en este ejemplo se utiliza el formato de URI recomendado mediante los puntos finales dedicados de OCI para el dominio comercial (OC1). namespace-string es el espacio del nombre de almacenaje de objetos de Oracle Cloud Infrastructure, y bucketname es el nombre del cubo. Consulte Puntos finales dedicados de Object Storage, Regiones y dominios de disponibilidad y Descripción de los espacios de nombres de Object Storage para obtener más información.

    En Oracle Data Pump versión 19.6 y posteriores, el argumento credencial autentica Oracle Data Pump para el servicio de Cloud Object Storage que utilice para los archivos de origen. El parámetro credential no puede ser un principal de servicio de Azure, un nombre de recurso de Amazon (ARN) o una cuenta de servicio de Google. Consulte Acceso a recursos en la nube mediante la configuración de políticas y roles para obtener más información sobre la autenticación basada en entidad de recurso.

    El argumento archivo de volcado es una lista delimitada por comas de direcciones URL para sus archivos de Data Pump.

    Para obtener el mejor rendimiento del proceso de importación, utilice el servicio de base de datos HIGH para las conexiones de importación y defina el parámetro parallel en un cuarto del número de ECPU (.25 x recuento de ECPU). Si utiliza el modelo de recursos informáticos de OCPU, defina el parámetro paralelo en el número de OCPU (1 x recuento de OCPU).

    Para obtener información sobre el nombre del servicio de base de datos al que conectarse para ejecutar la importación de pump de datos, consulte Gestión de simultaneidad y prioridades en Autonomous Database.

    Para obtener el formato para diferentes servicios de Cloud Object Storage, consulte Formatos del URI de archivo del paquete DBMS_CLOUD.

    Nota

    Para realizar una importación completa o importar objetos que sean propiedad de otros usuarios, necesita el rol DATAPUMP_CLOUD_IMP.

    Para obtener información sobre los objetos no permitidos en Autonomous Database, consulte Comandos SQL.

    En este ejemplo de importación, la especificación para el parámetro REMAP_DATA utiliza la función DBMS_SODA.TO_UUID para generar valores de UUID. Por defecto, para las bases de datos locales, la columna de versión de una recopilación de SODA se calcula mediante el hash SHA-256 del contenido del documento. En Autonomous Database, la columna de versión utiliza valores generados por el UUID, que son independientes del contenido del documento.

    En este ejemplo, el parámetro REMAP_DATA utiliza la función DBMS_SODA.TO_UUID para sustituir el tipo de versión de recopilación de origen por el control de versiones del UUID. Si en el juego de archivos de volcado de exportación que está importando versionColumn.method ya está definido en UUID, no se necesita REMAP_DATA para este campo.

    Para obtener información detallada sobre los parámetros de Oracle Data Pump Import, consulte Oracle Database Utilities.

Los archivos log para las operaciones de importación de pump de datos se almacenan en el directorio que especifique con el parámetro DIRECTORY de importación de pump de datos. Consulte Acceso al archivo log para la importación de pump de datos para obtener más información.