Por ejemplo:
BEGIN DBMS_CLOUD.CREATE_EXTERNAL_PART_TABLE
(
table_name => 'MYSALES',
credential_name => 'DEF_CRED_NAME',
file_uri_list => 'https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname/o/sales/*.parquet',
format =>
json_object('type' value 'parquet', 'schema' value 'first',
'partition_columns' value
json_array(
json_object('name' value 'country', 'type' value 'varchar2(100)'),
json_object('name' value 'year', 'type' value 'number'),
json_object('name' value 'month', 'type' value 'varchar2(2)')
)
)
);
END;
/
Los parámetros DBMS_CLOUD.CREATE_EXTERNAL_PART_TABLE
para archivos de datos estructurados, como para un archivo de datos Parquet, no requieren los parámetros column_list
o field_list
. Los nombres de columna y los tipos de datos se derivan para las columnas del primer archivo de parquet que explora el procedimiento (y, por lo tanto, todos los archivos deben tener la misma unidad). La lista de columnas generada incluye las columnas derivadas del nombre de objeto y estas columnas tienen los tipos de datos especificados con el parámetro partition_columns
format
.
Los parámetros son:
-
table_name
: es el nombre de la tabla externa.
-
credential_name
: es el nombre de la credencial creada en el paso anterior.
-
file_uri_list
: es una lista delimitada por comas de los URI de archivo de origen. Hay dos opciones para esta lista:
-
Especifique una lista delimitada por comas de URI de archivos individuales sin comodines.
-
Especifique un URI de archivo único con comodines, donde los comodines solo pueden estar después de la última barra "/". Se puede utilizar el carácter "*" como comodín para varios caracteres; el carácter "?" se puede utilizar como comodín para un solo carácter.
-
column_list
: es una lista delimitada por comas de nombres de columna y tipos de datos para la tabla externa. La lista incluye las columnas que se encuentran dentro del archivo, así como las derivadas del nombre del objeto.
column_list
no es necesario cuando los archivos de datos son archivos estructurados (Parquet, Avro u ORC).
-
field_list
: identifica los campos en los archivos de origen y sus tipos de datos. El valor por defecto es NULL
, lo que significa que los campos y sus tipos de datos están determinados por el parámetro column_list
.
field_list
no es necesario cuando los archivos de datos son archivos estructurados (Parquet, Avro u ORC).
-
format
: define las opciones que puede especificar para describir el formato del archivo de origen. El parámetro partition_columns
format
especifica los nombres de las columnas de partición. Para obtener más información, consulte DBMS_CLOUD Package Format Options.
Si los datos del archivo de origen están cifrados, descifre los datos especificando la opción de formato encryption
. Consulte Descifrado de datos durante la importación desde Object Storage para obtener más información sobre el descifrado de datos.
En este ejemplo, namespace-string
es el espacio de nombres de almacenamiento de objetos de Oracle Cloud Infrastructure, y bucketname
es el nombre del cubo. Consulte Descripción de los espacios de nombres de Object Storage para obtener más información.
Consulte CREATE_EXTERNAL_PART_TABLE Procedure para obtener información detallada sobre los parámetros.
Consulte Formatos de URI DBMS_CLOUD para obtener más información sobre los servicios de almacenamiento de objetos en la nube soportados.
Si hay filas en los archivos de origen que no coincidan con las opciones de formato que ha especificado, la consulta informa de un error. Puede utilizar los parámetros DBMS_CLOUD
, como rejectlimit
para suprimir estos errores. Como alternativa, también puede validar la tabla particionada externa que ha creado para ver los mensajes de error y las filas rechazadas, de modo que pueda cambiar las opciones de formato según corresponda. Consulte Validación de datos externos y Validación de datos particionados externos para obtener más información.