DBMS_CLOUD para la gestión masiva de archivos
Los subprogramas para operaciones de archivos en bloque dentro del paquete DBMS_CLOUD.
Subprograma | Descripción |
---|---|
Procedimiento BULK_COPY |
Este procedimiento copia archivos de un cubo de Cloud Object Storage a otro. |
Procedimiento BULK_DELETE |
El procedimiento suprime los archivos de la carpeta o el cubo de Cloud Object Storage. |
Procedimiento BULK_DOWNLOAD |
Con este procedimiento se descargan archivos del cubo del almacén de objetos en la nube en un directorio de Autonomous Database. |
Procedimiento BULK_MOVE |
Este procedimiento mueve archivos de un cubo de Cloud Object Storage a otro. |
Procedimiento BULK_UPLOAD |
Este procedimiento carga archivos de un directorio de Autonomous Database en Cloud Object Storage. |
Temas relacionados
Requisitos
Como desarrollador, puede utilizar procedimientos DBMS_CLOUD con instancias de Autonomous Database desplegadas en Oracle Public Cloud, Multicloud o Exadata Cloud@Customer.
En función de la opción de despliegue, se deben cumplir los siguientes requisitos para utilizar los procedimientos DBMS_CLOUD con los proveedores de servicios Amazon S3, Azure Blob Storage y Google Cloud Storage.
- Cree un gateway de NAT en la red virtual en la nube (VCN) en la que residan los recursos de Autonomous Database siguiendo las instrucciones de Creación de un gateway de NAT de la Documentación de Oracle Cloud Infrastructure.
- Después de crear el gateway de NAT, agregue una regla de ruta y una regla de seguridad de salida a cada subred (en la VCN) en la que residan los recursos de Autonomous Database para que estos recursos puedan utilizar el gateway para obtener una clave pública de la instancia de Azure AD:
- Vaya a la página Detalles de subred de la subred.
- En el separador Información de Subred, haga clic en el nombre de la Tabla de Direcciones de la subred para mostrar su página Detalles de Tabla de Direcciones.
- En la tabla de Reglas de ruta existentes, compruebe si ya hay una regla con las siguientes características:
- Destino: 0.0.0.0/0
- Tipo de destino: gateway de NAT
- Destino: nombre del gateway de NAT que acaba de crear en la VCN
Si dicha regla no existe, haga clic en Agregar reglas de ruta y agregue una regla de ruta con estas características.
- Vuelva a la página Detalles de subred de la subred.
- En la tabla Listas de seguridad de la subred, haga clic en el nombre de la lista de seguridad de la subred para mostrar su página Detalles de lista de seguridad.
- En el menú lateral, en Recursos, haga clic en Reglas de salida.
- En la tabla de Reglas de salida existentes, compruebe si ya hay una regla con las siguientes características:
- Tipo de destino: CIDR
- Destino: 0.0.0.0/0
- Protocolo IP: TCP
- Rango de puertos de origen: 443
- Rango de puertos de destino: todos
Si dicha regla no existe, haga clic en Agregar Reglas de Salida y agregue una regla de salida con estas características.
La configuración del proxy HTTP en el entorno debe permitir que la base de datos acceda al proveedor de servicios en la nube.
Note:
La configuración de red, incluido el proxy HTTP, solo se puede editar hasta que la infraestructura de Exadata tenga el estado Necesita activación. Una vez activada, no puede editar esa configuración.La configuración de un proxy HTTP para una infraestructura de Exadata ya aprovisionada necesita una solicitud de servicio (SR) en My Oracle Support. Consulte Creación de una solicitud de servicio en My Oracle Support para obtener más información.
Procedimiento BULK_COPY
Este procedimiento copia en bloque archivos de un cubo de Cloud Object Storage a otro. El formulario sobrecargado permite utilizar el parámetro operation_id
.
Puede filtrar la lista de archivos que se van a suprimir mediante un patrón de expresión regular compatible con el operador REGEXP_LIKE
.
La carpeta o el cubo de origen y de destino pueden estar en el mismo proveedor del almacén de objetos en la nube o en otro diferente.
Cuando el origen y el destino están en distintos almacenes de objetos o tienen cuentas diferentes con el mismo proveedor de nube, puede proporcionar nombres de credenciales independientes para las ubicaciones de origen y destino.
Por defecto, el nombre de credencial de origen también lo utiliza la ubicación de destino.
Sintaxis
DBMS_CLOUD.BULK_COPY
(
source_credential_name IN VARCHAR2 DEFAULT NULL,
source_location_uri IN VARCHAR2,
target_location_uri IN VARCHAR2,
target_credential_name IN VARCHAR2 DEFAULT NULL,
regex_filter IN VARCHAR2 DEFAULT NULL,
format IN CLOB DEFAULT NULL
);
DBMS_CLOUD.BULK_COPY
(
source_credential_name IN VARCHAR2 DEFAULT NULL,
source_location_uri IN VARCHAR2,
target_location_uri IN VARCHAR2,
target_credential_name IN VARCHAR2 DEFAULT NULL,
regex_filter IN VARCHAR2 DEFAULT NULL,
format IN CLOB DEFAULT NULL,
operation_id OUT NUMBER
);
Parámetros
parámetro | Descripción |
---|---|
|
Nombre de la credencial para acceder a Cloud Object Storage. Si no proporciona un valor |
|
Especifica el URI, que apunta a la ubicación de carpeta o cubo de Object Storage de origen. Este parámetro es obligatorio. El formato de los URI depende del servicio Cloud Object Storage. Consulte DBMS_CLOUD Formatos de URI de almacenamiento de objetos en la nube de archivos del paquete para obtener más información. |
|
Especifica el URI del cubo o carpeta de Object Storage de destino, donde se deben copiar los archivos. Este parámetro es obligatorio. El formato de los URI depende del servicio Cloud Object Storage. Consulte DBMS_CLOUD Formatos de URI de almacenamiento de objetos en la nube de archivos del paquete para obtener más información. |
|
Nombre de la credencial para acceder a la ubicación de almacenamiento de objetos en la nube de destino. Si no proporciona un valor |
|
Especifica la expresión REGEX para filtrar archivos. El patrón de expresión REGEX debe ser compatible con el operador Si no proporciona un valor Consulte REGEXP_LIKE Condition para obtener más información. |
|
Especifica las opciones de configuración adicionales para la operación de archivo. Estas opciones se especifican como una cadena JSON. Las opciones de formato soportadas son:
Si no proporciona un valor |
|
Utilice este parámetro para realizar un seguimiento del progreso y del estado final de la operación de carga como el identificador correspondiente en la vista |
Notas de uso
-
Se devuelve un error cuando el URI de origen y de destino apuntan al mismo cubo o carpeta de Object Storage.
Ejemplo
BEGIN
DBMS_CLOUD.BULK_COPY
(
source_credential_name => 'OCI_CRED',
source_location_uri => 'https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname1/o',
target_location_uri => 'https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname2/o',
format => JSON_OBJECT ('logretention' value 7, 'logprefix' value 'BULKOP')
);
END;
/
Procedimiento BULK_DELETE
Este procedimiento suprime en bloque archivos de Cloud Object Storage. El formulario sobrecargado permite utilizar el parámetro operation_id
. Puede filtrar la lista de archivos que se van a suprimir mediante un patrón de expresión regular compatible con el operador REGEXP_LIKE
.
Sintaxis
DBMS_CLOUD.BULK_DELETE
(
credential_name IN VARCHAR2 DEFAULT NULL,
location_uri IN VARCHAR2,
regex_filter IN VARCHAR2 DEFAULT NULL,
format IN CLOB DEFAULT NULL
);
DBMS_CLOUD.BULK_DELETE
(
credential_name IN VARCHAR2 DEFAULT NULL,
location_uri IN VARCHAR2,
regex_filter IN VARCHAR2 DEFAULT NULL,
format IN CLOB DEFAULT NULL,
operation_id OUT NUMBER
);
Parámetros
parámetro | Descripción |
---|---|
|
Nombre de la credencial para acceder a Cloud Object Storage. Si no proporciona un valor |
|
Especifica el URI, que apunta a una ubicación de Object Storage en Autonomous Database. Este parámetro es obligatorio. El formato de los URI depende del servicio Cloud Object Storage. Consulte DBMS_CLOUD Formatos de URI de almacenamiento de objetos en la nube de archivos del paquete para obtener más información. |
|
Especifica la expresión REGEX para filtrar archivos. El patrón de expresión REGEX debe ser compatible con el operador Si no proporciona un valor Consulte REGEXP_LIKE Condition para obtener más información. |
|
Especifica las opciones de configuración adicionales para la operación de archivo. Estas opciones se especifican como una cadena JSON. Las opciones de formato soportadas son:
Si no proporciona un valor |
|
Utilice este parámetro para realizar un seguimiento del progreso y del estado final de la operación de carga como el identificador correspondiente en la vista |
Ejemplo
BEGIN
DBMS_CLOUD.BULK_DELETE
(
credential_name => 'OCI_CRED',
location_uri => 'https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname/o',
format => JSON_OBJECT ('logretention' value 5, 'logprefix' value 'BULKDEL')
);
END;
/
Procedimiento BULK_DOWNLOAD
Este procedimiento descarga archivos en un directorio de Autonomous Database desde Cloud Object Storage. El formulario sobrecargado permite utilizar el parámetro operation_id
. Puede filtrar la lista de archivos que se van a descargar mediante un patrón de expresión regular compatible con el operador REGEXP_LIKE
.
Sintaxis
DBMS_CLOUD.BULK_DOWNLOAD
(
credential_name IN VARCHAR2 DEFAULT NULL,
location_uri IN VARCHAR2,
directory_name IN VARCHAR2,
regex_filter IN VARCHAR2 DEFAULT NULL,
format IN CLOB DEFAULT NULL
);
DBMS_CLOUD.BULK_DOWNLOAD
(
credential_name IN VARCHAR2 DEFAULT NULL,
location_uri IN VARCHAR2,
directory_name IN VARCHAR2,
regex_filter IN VARCHAR2 DEFAULT NULL,
format IN CLOB DEFAULT NULL,
operation_id OUT NUMBER
);
Parámetros
parámetro | Descripción |
---|---|
|
Nombre de la credencial para acceder a Cloud Object Storage. Si no proporciona un valor |
|
Especifica el URI, que apunta a una ubicación de Object Storage en Autonomous Database. Este parámetro es obligatorio. El formato de los URI depende del servicio Cloud Object Storage. Consulte DBMS_CLOUD Formatos de URI de almacenamiento de objetos en la nube de archivos del paquete para obtener más información. |
|
Nombre del directorio de la instancia de Autonomous Database desde donde desea descargar los archivos. Este parámetro es obligatorio. |
|
Especifica la expresión REGEX para filtrar archivos. El patrón de expresión REGEX debe ser compatible con el operador Si no proporciona un valor Consulte REGEXP_LIKE Condition para obtener más información. |
|
Especifica las opciones de configuración adicionales para la operación de archivo. Estas opciones se especifican como una cadena JSON. Las opciones de formato soportadas son:
Si no proporciona un valor |
|
Utilice este parámetro para realizar un seguimiento del progreso y del estado final de la operación de carga como el identificador correspondiente en la vista |
Ejemplo
BEGIN
DBMS_CLOUD.BULK_DOWNLOAD
(
credential_name => 'OCI_CRED',
location_uri => 'https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname/o',
directory_name => 'BULK_TEST',
format => JSON_OBJECT ('logretention' value 7, 'logprefix' value 'BULKOP')
);
END;
/
Procedimiento BULK_MOVE
Este procedimiento mueve en bloque archivos de un cubo o carpeta de Cloud Object Storage a otro. El formulario sobrecargado permite utilizar el parámetro operation_id
.
Puede filtrar la lista de archivos que se van a suprimir mediante un patrón de expresión regular compatible con el operador REGEXP_LIKE
.
La carpeta o el cubo de origen y de destino pueden estar en el mismo proveedor del almacén de objetos en la nube o en otro diferente.
Cuando el origen y el destino están en distintos almacenes de objetos o tienen cuentas diferentes con el mismo proveedor de nube, puede proporcionar nombres de credenciales independientes para las ubicaciones de origen y destino.
El nombre de la credencial de origen también lo utiliza por defecto la ubicación de destino cuando no se proporciona el nombre de la credencial de destino.
El primer paso para mover archivos es copiarlos en la ubicación de destino y, a continuación, suprimir los archivos de origen, una vez que se hayan copiado correctamente.
El objeto cambia de nombre en lugar de moverse si el almacén de objetos permite las operaciones de cambio de nombre entre las ubicaciones de origen y destino.
Sintaxis
DBMS_CLOUD.BULK_MOVE
(
source_credential_name IN VARCHAR2 DEFAULT NULL,
source_location_uri IN VARCHAR2,
target_location_uri IN VARCHAR2,
target_credential_name IN VARCHAR2 DEFAULT NULL,
regex_filter IN VARCHAR2 DEFAULT NULL,
format IN CLOB DEFAULT NULL
);
DBMS_CLOUD.BULK_MOVE
(
source_credential_name IN VARCHAR2 DEFAULT NULL,
source_location_uri IN VARCHAR2,
target_location_uri IN VARCHAR2,
target_credential_name IN VARCHAR2 DEFAULT NULL,
regex_filter IN VARCHAR2 DEFAULT NULL,
format IN CLOB DEFAULT NULL,
operation_id OUT NUMBER
);
Parámetros
parámetro | Descripción |
---|---|
|
Nombre de la credencial para acceder a Cloud Object Storage de origen. Si no proporciona un valor |
|
Especifica el URI, que apunta a la ubicación de carpeta o cubo de Object Storage de origen. Este parámetro es obligatorio. El formato de los URI depende del servicio Cloud Object Storage. Consulte DBMS_CLOUD Formatos de URI de almacenamiento de objetos en la nube de archivos del paquete para obtener más información. |
|
Especifica el URI del cubo o carpeta de Object Storage de destino, donde se deben mover los archivos. Este parámetro es obligatorio. El formato de los URI depende del servicio Cloud Object Storage. Consulte DBMS_CLOUD Formatos de URI de almacenamiento de objetos en la nube de archivos del paquete para obtener más información. |
|
Nombre de la credencial para acceder a la ubicación de almacenamiento de objetos en la nube de destino. Si no proporciona un valor |
|
Especifica la expresión REGEX para filtrar archivos. El patrón de expresión REGEX debe ser compatible con el operador Si no proporciona un valor Consulte REGEXP_LIKE Condition para obtener más información. |
|
Especifica las opciones de configuración adicionales para la operación de archivo. Estas opciones se especifican como una cadena JSON. Las opciones de formato soportadas son:
Si no proporciona un valor |
|
Utilice este parámetro para realizar un seguimiento del progreso y del estado final de la operación de carga como el identificador correspondiente en la vista |
Ejemplo
BEGIN
DBMS_CLOUD.BULK_MOVE
(
source_credential_name => 'OCI_CRED',
source_location_uri => 'https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname1/o',
target_location_uri => 'https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname2/o',
format => JSON_OBJECT ('logretention' value 7, 'logprefix' value 'BULKMOVE')
);
END;
/
Note:
Se devuelve un error cuando el URI de origen y de destino apuntan al mismo cubo o carpeta de Object Storage.Procedimiento BULK_UPLOAD
Este procedimiento copia archivos en Cloud Object Storage desde un directorio de Autonomous Database. El formulario sobrecargado permite utilizar el parámetro operation_id
.
Sintaxis
DBMS_CLOUD.BULK_UPLOAD
(
credential_name IN VARCHAR2 DEFAULT NULL,
location_uri IN VARCHAR2,
directory_name IN VARCHAR2,
regex_filter IN VARCHAR2 DEFAULT NULL,
format IN CLOB DEFAULT NULL
);
DBMS_CLOUD.BULK_UPLOAD
(
credential_name IN VARCHAR2 DEFAULT NULL,
location_uri IN VARCHAR2,
directory_name IN VARCHAR2,
regex_filter IN VARCHAR2 DEFAULT NULL,
format IN CLOB DEFAULT NULL,
operation_id OUT NUMBER
);
Parámetros
parámetro | Descripción |
---|---|
|
Nombre de la credencial para acceder a Cloud Object Storage. Si no proporciona un valor |
|
Especifica el URI, que apunta a una ubicación de Object Storage para cargar archivos. Este parámetro es obligatorio. El formato de los URI depende del servicio Cloud Object Storage. Consulte DBMS_CLOUD Formatos de URI de almacenamiento de objetos en la nube de archivos del paquete para obtener más información. |
|
Nombre del directorio de la instancia de Autonomous Database desde donde se cargan los archivos. Este parámetro es obligatorio. |
regex_filter |
Especifica la expresión REGEX para filtrar archivos. El patrón de expresión REGEX debe ser compatible con el operador Si no proporciona un valor Consulte REGEXP_LIKE Condition para obtener más información. |
|
Especifica las opciones de configuración adicionales para la operación de archivo. Estas opciones se especifican como una cadena JSON. Las opciones de formato soportadas son:
Si no proporciona un valor |
|
Utilice este parámetro para realizar un seguimiento del progreso y del estado final de la operación de carga como el identificador correspondiente en la vista |
Ejemplo
BEGIN
DBMS_CLOUD.BULK_UPLOAD
(
credential_name => 'OCI_CRED',
location_uri => 'https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname/o',
directory_name => 'BULK_TEST',
format => JSON_OBJECT ('logretention' value 5, 'logprefix' value 'BULKUPLOAD')
);
END;
/