DBMS_CLOUD para Gerenciamento de Arquivos em Massa

Pré-requisitos

Como desenvolvedor, você pode usar procedimentos DBMS_CLOUD com Autonomous AI Databases implantados na Oracle Public Cloud, Multicloud ou Exadata Cloud@Customer.

Dependendo da opção de implantação, os pré-requisitos a seguir devem ser atendidos para usar os procedimentos DBMS_CLOUD com os provedores de serviços Amazon S3, Azure Blob Storage e Google Cloud Storage.

Resumo de Subgrupos DBMS_CLOUD para Gerenciamento de Arquivos em Massa

Os subprogramas para operações de arquivo em massa dentro do pacote DBMS_CLOUD.

Subprograma Descrição
Procedimento BULK_COPY Este procedimento copia arquivos de um bucket do Cloud Object Storage para outro.
Procedimento BULK_DELETE O procedimento exclui arquivos do bucket ou da pasta do Cloud Object Storage.
Procedimento BULK_DOWNLOAD Este procedimento faz download de arquivos do bucket do Cloud Object Store para um diretório no Autonomous AI Database.
Procedimento BULK_MOVE Este procedimento move arquivos de um bucket do Cloud Object Storage para outro.
Procedimento BULK_UPLOAD Este procedimento faz upload de arquivos de um diretório no Autonomous AI Database para o Cloud Object Storage.

Procedimento BULK_COPY

Este procedimento copia em massa arquivos de um bucket do Cloud Object Storage para outro. O formulário sobrecarregado permite que você use o parâmetro operation_id.

Você pode filtrar a lista de arquivos a serem excluídos usando um padrão de expressão regular compatível com o operador REGEXP_LIKE.

O bucket ou a pasta de origem e de destino podem estar no mesmo provedor de armazenamento de Objetos da Nuvem ou em outro provedor.

Quando a origem e o destino estiverem em Armazenamentos de Objetos distintos ou tiverem contas diferentes com o mesmo provedor de nuvem, você poderá fornecer nomes de credenciais separados para os locais de origem e destino.

Por padrão, o nome da credencial de origem também é usado pelo local de destino.

Sintaxe

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 Descrição
source_credential_name

O nome da credencial para acessar o Cloud Object Storage.

Se você não fornecer um valor source_credential_name, o credential_name será definido como NULL.

source_location_uri

Especifica o URI que aponta para o bucket ou local da pasta do Object Storage de origem.

Este parâmetro é obrigatório.

URIs de arquivo de origem na nuvem

Você pode usar curingas, bem como expressões regulares nos nomes de arquivo nos URIs de arquivo de origem da Nuvem.

As expressões regulares só podem ser usadas quando o parâmetro regexuri format é definido como TRUE.

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.

Só há suporte para padrões de expressão regular no nome do arquivo ou no caminho da subpasta em seus URIs, e a correspondência de padrões é idêntica à executada pela função REGEXP_LIKE.

Exemplo de uso de expressões regulares:

source_location_uri => 'https://objectstorage.my$region.oraclecloud.com/n/namespace-string/b/bucketname/o(/)*year=[0-9]+(/)*month=[0-9]+(/)*[a-z]+[1-3]??.csv'

Exemplo usando curingas:

source_location_uri => 'https://objectstorage.my$region.oraclecloud.com/n/namespace-string/b/bucketname/o/year=????/month=??/*.csv

O formato dos URIs depende do serviço do Cloud Object Storage que você estiver usando. Para obter detalhes, consulte Formatos do Cloud Object Storage URI.

Consulte Condição REGEXP_LIKE em Referência de Linguagem SQL do Oracle Database 19c ou Referência de Linguagem SQL do Oracle Database 26ai para obter mais informações sobre a condição REGEXP_LIKE.

target_location_uri

Especifica o URI do bucket ou pasta do Object Storage de destino, em que os arquivos precisam ser copiados.

Este parâmetro é obrigatório.

Especifica o URI, que aponta para o bucket ou local da pasta do Object Storage de origem.

Este parâmetro é obrigatório.

O formato dos URIs depende do serviço Cloud Object Storage. Consulte Formatos de URI do Database Cloud Object Storage do Arquivo de Pacote DBMS_CLOUD para obter mais informações.

target_credential_name

O nome da credencial para acessar a localização do Cloud Object Storage de destino.

Se você não fornecer um valor target_credential_name, o target_location_uri será definido como o valor source_credential_name.

regex_filter

Especifica a expressão REGEX para filtrar arquivos. O padrão de expressão REGEX deve ser compatível com o operador REGEXP_LIKE.

Se você não fornecer um valor regex_filter, o regex_filter será definido como NULL.

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

format

Especifica as opções de configuração adicionais para a operação de arquivo. Essas opções são especificadas como uma string JSON.

As opções de formato suportadas são:

  • logretention: Aceita um valor inteiro que determina a duração em dias para a qual a tabela de status é retida para uma operação em massa.

    O valor padrão é 2 dias.

  • logprefix: Aceita um valor de string que determina a string de prefixo do nome da tabela de status da operação em massa.

    O tipo de operação é o valor padrão. Para BULK_COPY, o valor padrão logprefix é COPYOBJ.

  • priority: Aceita um valor de string que determina o número de operações de arquivo executadas simultaneamente.

    Uma operação com prioridade mais alta consome mais recursos de banco de dados e deve ser executada com mais rapidez.

    Ele aceita os seguintes valores:

    • HIGH: Determina o número de arquivos paralelos tratados usando a contagem de ECPUs do banco de dados (contagem de OCPUs se o banco de dados usar OCPUs)

    • MEDIUM: Determina o número de processos simultâneos usando o limite de simultaneidade para o serviço Medium. O valor padrão é 4.

    • LOW: Processe os arquivos em ordem serial.

    O valor-padrão é MEDIUM.

    O número máximo de operações simultâneas de arquivos é limitado a 64.

Se você não fornecer um valor format, o format será definido como NULL.

operation_id Use esse parâmetro para rastrear o andamento e o status final da operação de carga como o ID correspondente na view USER_LOAD_OPERATIONS.

Observação: Um erro é retornado quando os URIs de origem e destino apontam para o mesmo bucket ou pasta do serviço Object Storage.

Exemplo

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;
/

Procedimento BULK_DELETE

Este procedimento exclui em massa arquivos do Cloud Object Storage. O formulário sobrecarregado permite que você use o parâmetro operation_id. Você pode filtrar a lista de arquivos a serem excluídos usando um padrão de expressão regular compatível com o operador REGEXP_LIKE.

Sintaxe

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 Descrição
credential_name

O nome da credencial para acessar o Cloud Object Storage.

Se você não fornecer um valor credential_name, o credential_name será definido como NULL.

location_uri

Especifica o URI que aponta para um local do serviço Object Storage no Autonomous AI Database.

Este parâmetro é obrigatório.

URIs de arquivo de origem na nuvem

Você pode usar curingas, bem como expressões regulares nos nomes de arquivo nos URIs de arquivo de origem da Nuvem.

As expressões regulares só podem ser usadas quando o parâmetro regexuri format é definido como TRUE.

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.

Só há suporte para padrões de expressão regular no nome do arquivo ou no caminho da subpasta em seus URIs, e a correspondência de padrões é idêntica à executada pela função REGEXP_LIKE.

Por exemplo:

location_uri => 'https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname/o(/)*year=[0-9]+(/)*month=[0-9]+(/)*[a-z]+[1-3]??.csv'

O formato dos URIs depende do serviço do Cloud Object Storage que você estiver usando. Para obter detalhes, consulte Formatos do Cloud Object Storage URI.

Consulte Condição REGEXP_LIKE em Referência de Linguagem SQL do Oracle Database 19c ou Referência de Linguagem SQL do Oracle Database 26ai para obter mais informações sobre a condição REGEXP_LIKE.

O formato dos URIs depende do serviço Cloud Object Storage. Consulte Formatos de URI do Database Cloud Object Storage do Arquivo de Pacote DBMS_CLOUD para obter mais informações.

regex_filter

Especifica a expressão REGEX para filtrar arquivos. O padrão de expressão REGEX deve ser compatível com o operador REGEXP_LIKE.

Se você não fornecer um valor regex_filter, o regex_filter será definido como NULL.

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

format

Especifica as opções de configuração adicionais para a operação de arquivo. Essas opções são especificadas como uma string JSON.

As opções de formato suportadas são:

  • logretention: Ele aceita um valor inteiro que determina a duração em dias para a qual a tabela de status é retida para uma operação em massa.

    O valor padrão é 2 dias.

  • logprefix: Aceita um valor de string que determina a string de prefixo do nome da tabela de status da operação em massa.

    O tipo de operação é o valor padrão. Para BULK_DELETE, o valor padrão logprefix é DELETE.

  • priority: Aceita um valor de string que determina o número de operações de arquivo executadas simultaneamente.

    Uma operação com prioridade mais alta consome mais recursos de banco de dados e é concluída mais cedo.

    Ele aceita os seguintes valores:

    • HIGH: Determina o número de arquivos paralelos tratados usando a contagem de ECPUs do banco de dados (contagem de OCPUs se o banco de dados usar OCPUs).

    • MEDIUM: Determina o número de processos simultâneos usando o limite de simultaneidade para o serviço Medium. O valor padrão é 4.

    • LOW: Processe os arquivos em ordem serial.

    O valor-padrão é MEDIUM.

    O número máximo de operações simultâneas de arquivos é limitado a 64.

Se você não fornecer um valor format, o format será definido como NULL.

operation_id Use esse parâmetro para rastrear o andamento e o status final da operação de carga como o ID correspondente na view USER_LOAD_OPERATIONS.

Exemplo

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;
/

Procedimento BULK_DOWNLOAD

Este procedimento faz download de arquivos em um diretório do Autonomous AI Database do Cloud Object Storage. O formulário sobrecarregado permite que você use o parâmetro operation_id. Você pode filtrar a lista de arquivos a serem baixados usando um padrão de expressão regular compatível com o operador REGEXP_LIKE.

Sintaxe

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 Descrição
credential_name

O nome da credencial para acessar o Cloud Object Storage.

Se você não fornecer um valor credential_name, o credential_name será definido como NULL.

location_uri

Especifica o URI que aponta para um local do serviço Object Storage no Autonomous AI Database.

Este parâmetro é obrigatório.

URIs de arquivo de origem na nuvem

Você pode usar curingas, bem como expressões regulares nos nomes de arquivo nos URIs de arquivo de origem da Nuvem.

As expressões regulares só podem ser usadas quando o parâmetro regexuri format é definido como TRUE.

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.

Só há suporte para padrões de expressão regular no nome do arquivo ou no caminho da subpasta em seus URIs, e a correspondência de padrões é idêntica à executada pela função REGEXP_LIKE.

Por exemplo:

location_uri => 'https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname/o(/)*year=[0-9]+(/)*month=[0-9]+(/)*[a-z]+[1-3]??.csv'

O formato dos URIs depende do serviço do Cloud Object Storage que você estiver usando. Para obter detalhes, consulte Formatos do Cloud Object Storage URI.

Consulte Condição REGEXP_LIKE em Referência de Linguagem SQL do Oracle Database 19c ou Referência de Linguagem SQL do Oracle Database 26ai para obter mais informações sobre a condição REGEXP_LIKE.

directory_name

O nome do diretório no Autonomous AI Database do qual você deseja fazer download dos arquivos.

Este parâmetro é obrigatório.

regex_filter

Especifica a expressão REGEX para filtrar arquivos. O padrão de expressão REGEX deve ser compatível com o operador REGEXP_LIKE.

Se você não fornecer um valor regex_filter, o regex_filter será definido como NULL.

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

format

Especifica as opções de configuração adicionais para a operação de arquivo. Essas opções são especificadas como uma string JSON.

As opções de formato suportadas são:

  • logretention: Aceita um valor inteiro que determina a duração em dias para a qual a tabela de status é retida para uma operação em massa.

    O valor padrão é 2 dias.

  • logprefix: Aceita um valor de string que determina a string de prefixo do nome da tabela de status da operação em massa. Para BULK_DOWNLOAD, o valor padrão logprefix é DOWNLOAD.

    O tipo de operação é o valor padrão.

  • priority: Aceita um valor de string que determina o número de operações de arquivo executadas simultaneamente.

    Uma operação com prioridade mais alta consome mais recursos de banco de dados e é concluída mais cedo.

    Ele aceita os seguintes valores:

    • HIGH: Determina o número de arquivos paralelos tratados usando a contagem de ECPUs do banco de dados (contagem de OCPUs se o banco de dados usar OCPUs).

    • MEDIUM: Determina o número de processos simultâneos usando o limite de simultaneidade para o serviço Medium. O valor padrão é 4.

    • LOW: Processe os arquivos em ordem serial.

    O valor-padrão é MEDIUM.

    O número máximo de operações simultâneas de arquivos é limitado a 64.

Se você não fornecer um valor format, o format será definido como NULL.

operation_id Use esse parâmetro para rastrear o andamento e o status final da operação de carga como o ID correspondente na view USER_LOAD_OPERATIONS.

Exemplo

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;
/

Procedimento BULK_MOVE

Este procedimento move arquivos em massa de um bucket ou pasta do Cloud Object Storage para outro. O formulário sobrecarregado permite que você use o parâmetro operation_id.

Você pode filtrar a lista de arquivos a serem excluídos usando um padrão de expressão regular compatível com o operador REGEXP_LIKE.

O bucket ou a pasta de origem e de destino podem estar no mesmo provedor de armazenamento de Objetos da Nuvem ou em outro provedor.

Quando a origem e o destino estiverem em Armazenamentos de Objetos distintos ou tiverem contas diferentes com o mesmo provedor de nuvem, você poderá fornecer nomes de credenciais separados para os locais de origem e destino.

Por padrão, o nome da credencial de origem também é usado pelo local de destino quando o nome da credencial de destino não é fornecido.

A primeira etapa na movimentação de arquivos é copiá-los para o local de destino e, em seguida, excluir os arquivos de origem, depois que eles forem copiados com sucesso.

O objeto será renomeado em vez de movido se o Object Store permitir operações de renomeação entre os locais de origem e de destino.

Sintaxe

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 Descrição
source_credential_name

O nome da credencial para acessar o Cloud Object Storage de origem.

Se você não fornecer um valor source_credential_name, o credential_name será definido como NULL.

source_location_uri

Especifica o URI que aponta para o bucket ou local da pasta do Object Storage de origem.

Este parâmetro é obrigatório.

URIs de arquivo de origem na nuvem

Você pode usar curingas, bem como expressões regulares nos nomes de arquivo em URIs de arquivo de origem na Nuvem.

As expressões regulares só podem ser usadas quando o parâmetro regexuri format é definido como TRUE.

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.

Só há suporte para padrões de expressão regular no nome do arquivo ou no caminho da subpasta em seus URIs, e a correspondência de padrões é idêntica à executada pela função REGEXP_LIKE.

Exemplo de uso de expressões regulares:

source_location_uri => 'https://objectstorage.my$region.oraclecloud.com/n/namespace-string/b/bucketname/o(/)*year=[0-9]+(/)*month=[0-9]+(/)*[a-z]+[1-3]??.csv'

Exemplo usando curingas:

source_location_uri => 'https://objectstorage.my$region.oraclecloud.com/n/namespace-string/b/bucketname/o/year=????/month=??/*.csv

O formato dos URIs depende do serviço do Cloud Object Storage que você estiver usando. Para obter detalhes, consulte Formatos do Cloud Object Storage URI.

Consulte Condição REGEXP_LIKE em Referência de Linguagem SQL do Oracle Database 19c ou Referência de Linguagem SQL do Oracle Database 26ai para obter mais informações sobre a condição REGEXP_LIKE.

target_location_uri

Especifica o URI do bucket ou pasta do Object Storage de destino, onde os arquivos precisam ser movidos.

Este parâmetro é obrigatório.

O formato dos URIs depende do serviço do Cloud Object Storage que você estiver usando. Para obter detalhes, consulte Formatos do Cloud Object Storage URI.

target_credential_name

O nome da credencial para acessar a localização do Cloud Object Storage de destino.

Se você não fornecer um valor target_credential_name, o target_location_uri será definido como o valor source_credential_name.

regex_filter

Especifica a expressão REGEX para filtrar arquivos. O padrão de expressão REGEX deve ser compatível com o operador REGEXP_LIKE.

Se você não fornecer um valor regex_filter, o regex_filter será definido como NULL.

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

format

Especifica as opções de configuração adicionais para a operação de arquivo. Essas opções são especificadas como uma string JSON.

As opções de formato suportadas são:

  • logretention: Aceita um valor inteiro que determina a duração em dias para a qual a tabela de status é retida para uma operação em massa.

    O valor padrão é 2 dias.

  • logprefix: Aceita um valor de string que determina a string de prefixo do nome da tabela de status da operação em massa.

    O tipo de operação é o valor padrão. Para BULK_MOVE, o valor padrão logprefix é MOVE.

  • priority: Aceita um valor de string que determina o número de operações de arquivo executadas simultaneamente.

    Uma operação com prioridade mais alta consome mais recursos de banco de dados e é concluída mais cedo.

    Ele aceita os seguintes valores:

    • HIGH: Determina o número de arquivos paralelos tratados usando a contagem de ECPUs do banco de dados (contagem de OCPUs se o banco de dados usar OCPUs).

    • MEDIUM: Determina o número de processos simultâneos usando o limite de simultaneidade para o serviço Medium. O valor padrão é 4.

    • LOW: Processe os arquivos em ordem serial.

    O valor-padrão é MEDIUM.

    O número máximo de operações simultâneas de arquivos é limitado a 64.

Se você não fornecer um valor format, o format será definido como NULL.

operation_id Use esse parâmetro para rastrear o andamento e o status final da operação de carga como o ID correspondente na view USER_LOAD_OPERATIONS.

Exemplo

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;
/

Observação: Um erro é retornado quando os URIs de origem e destino apontam para o mesmo bucket ou pasta do serviço Object Storage.

Procedimento BULK_UPLOAD

Este procedimento copia arquivos no Cloud Object Storage de um diretório do Autonomous AI Database. O formulário sobrecarregado permite que você use o parâmetro operation_id.

Sintaxe

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 Descrição
credential_name

O nome da credencial para acessar o Cloud Object Storage.

Se você não fornecer um valor credential_name, o credential_name será definido como NULL.

location_uri

Especifica URI, que aponta para um local do Object Storage para fazer upload de arquivos.

Este parâmetro é obrigatório.

O formato dos URIs depende do serviço Cloud Object Storage. Consulte Formatos de URI do Database Cloud Object Storage do Arquivo de Pacote DBMS_CLOUD para obter mais informações.

directory_name

O nome do diretório no Autonomous AI Database do qual você faz upload de arquivos.

Este parâmetro é obrigatório.

Diretório

Você pode especificar um diretório e um ou mais nomes de arquivos ou usar uma lista separada por vírgulas de diretórios e nomes de arquivos. O formato para especificar um diretório é:'MY_DIR:filename.ext'. Por padrão, o nome do diretório MY_DIR é um objeto de banco de dados e não faz distinção entre maiúsculas e minúsculas. O arquivo faz distinção entre maiúsculas e minúsculas.

Não há suporte para expressões regulares ao especificar os nomes de arquivo em um diretório. Você só pode usar curingas para especificar nomes de arquivo em um diretório. O caractere "*" pode ser usado como caractere curinga para vários caracteres e o caractere "?" pode ser usado como caractere curinga para um único caractere. Por exemplo:'MY_DIR:*" ou 'MY_DIR:test?'

Para especificar vários diretórios, use uma lista de diretórios separada por vírgulas: Por exemplo:'MY_DIR1:*, MY_DIR2:test?'

Use aspas duplas para especificar um nome de diretório com distinção entre maiúsculas e minúsculas. Por exemplo:'"my_dir1":*, "my_dir2":Test?'

Para incluir um caractere de aspas, use duas aspas. Por exemplo:'MY_DIR:''filename.ext'. Isso especifica que filename começa com uma aspa (').

regex_filter

Especifica a expressão REGEX para filtrar arquivos. O padrão de expressão REGEX deve ser compatível com o operador REGEXP_LIKE.

Se você não fornecer um valor regex_filter, o regex_filter será definido como NULL.

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

format

Especifica as opções de configuração adicionais para a operação de arquivo. Essas opções são especificadas como uma string JSON.

As opções de formato suportadas são:

  • logretention: Aceita um valor inteiro que determina a duração em dias para a qual a tabela de status é retida para uma operação em massa.

    O valor padrão é 2 dias.

  • logprefix: Aceita um valor de string que determina a string de prefixo do nome da tabela de status da operação em massa.

    O tipo de operação é o valor padrão. Para BULK_UPLOAD, o valor padrão logprefix é UPLOAD.

  • priority: Aceita um valor de string que determina o número de operações de arquivo executadas simultaneamente.

    Uma operação com prioridade mais alta consome mais recursos de banco de dados e é concluída mais cedo.

    Ele aceita os seguintes valores:

    • HIGH: Determina o número de arquivos paralelos tratados usando a contagem de ECPUs do banco de dados (contagem de OCPUs se o banco de dados usar OCPUs).

    • MEDIUM: Determina o número de processos simultâneos usando o limite de simultaneidade para o serviço Medium. O valor padrão é 4.

    • LOW: Processe os arquivos em ordem serial.

    O valor-padrão é MEDIUM.

    O número máximo de operações simultâneas de arquivos é limitado a 64.

Se você não fornecer um valor format, o format será definido como NULL.

operation_id Use esse parâmetro para rastrear o andamento e o status final da operação de carga como o ID correspondente na view USER_LOAD_OPERATIONS.

Exemplo

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;
/

Conteúdo Relacionado

Operações em Lote para Arquivos na Nuvem