DBMS_CLOUD Opções de Formato do Pacote para Avro, ORC ou Parquet

O argumento de formato em DBMS_CLOUD especifica o formato de arquivos de origem.

As duas maneiras de especificar o argumento de formato são:

format => '{"format_option" : “format_value” }'  

E:

format => json_object('format_option' value 'format_value'))

Exemplos de:

format => json_object('type' VALUE 'CSV')

Para especificar várias opções de formato, separe os valores com uma vírgula (",").

Por exemplo:

format => json_object('ignoremissingcolumns' value 'true', 'removequotes' value 'true', 'dateformat' value 'YYYY-MM-DD-HH24-MI-SS', 'blankasnull' value 'true')
Opção de Formato Descrição Sintaxe

maxvarchar

Controla o tamanho máximo padrão de varchar2() para colunas de caracteres ao criar tabelas externas em arquivos de formato Avro, ORC ou Parquet. As opções são:

  • standard: Especifica que o limite de tamanho para colunas varchar2() é de 4000 bytes. Isso é equivalente a auto em sistemas com MAX_STRING_SIZE = standard.

    Em sistemas com MAX_STRING_SIZE = extended, quando você cria uma tabela externa em Avro, ORC ou Parquet e especifica maxvarchar como standard, isso encurta as colunas de caracteres para varchar2(4000).

  • extended: Especifica que o limite de tamanho para colunas varchar2() é de 32767 bytes. Isso é equivalente a auto em sistemas com MAX_STRING_SIZE = extended. Esse valor gera um erro em sistemas com MAX_STRING_SIZE = standard.

  • auto: O sistema seleciona automaticamente o tamanho máximo de byte varchar2(), com base no valor MAX_STRING_SIZE. O valor auto é o valor padrão para maxvarchar.

maxvarchar: standard | extended | auto

Valor padrão:auto

regexuri

Quando o valor de regexuri é definido como TRUE, você pode usar curingas, bem como expressões regulares nos nomes de arquivo nos URIs de arquivo de origem da Nuvem.

Os caracteres "*" e "?" são considerados caracteres curinga quando o parâmetro regexuri é definido como FALSE. Quando o parâmetro regexuri é definido como TRUE, os caracteres "*" e "?" fazem parte do padrão de expressão regular especificado.

Padrões de expressão regulares só são suportados para o nome do arquivo ou caminho da subpasta em seus URIs e a correspondência de padrões é idêntica à executada pela função REGEXP_LIKE. Padrões de expressão regular não são suportados para nomes de diretório.

Para tabelas externas, essa opção só é suportada com as tabelas criadas em um arquivo no Object Storage.

Por exemplo:

format => JSON_OBJECT('regexuri' value TRUE)

Consulte Condição REGEXP_LIKE para obter mais informações sobre a condição REGEXP_LIKE.

regexuri: True

Valor padrão:False

type

Especifica o tipo de arquivo.

type : avro | orc | parquet

schema

Quando o esquema é definido como first ou all, as colunas da tabela externa e os tipos de dados são derivados automaticamente dos metadados do arquivo Avro, ORC ou Parquet.

Os nomes de coluna corresponderão aos encontrados em Avro, ORC ou Parquet. Os tipos de dados são convertidos de tipos de dados Avro, ORC ou Parquet para tipos de dados Oracle. Todas as colunas são adicionadas à tabela.

O valor first especifica para usar os metadados do primeiro arquivo Avro, ORC ou Parquet no file_uri_list para gerar automaticamente as colunas e seus tipos de dados. Use first se todos os arquivos tiverem o mesmo esquema.

O valor all especifica o uso dos metadados de todos os arquivos Avro, ORC ou Parquet no file_uri_list para gerar automaticamente as colunas e seus tipos de dados. Use all (mais lento) se os arquivos puderem ter esquemas diferentes.

Padrão: Se column_list for especificado, o valor schema, se especificado, será ignorado. Se column_list não for especificado, o valor padrão schema será first.

Observação: Para arquivos de formato Avro, ORC ou Parquet, a opção de formato schema não está disponível e o parâmetro column_list deve ser especificado para tabelas externas particionadas usando o procedimento DBMS_CLOUD.CREATE_EXTERNAL_PART_TABLE.

schema : first | all