DBMS_CLOUD para Gerenciamento de Arquivos em Massa

Os subprogramas para operações em massa de arquivos no 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 armazenamento de Objetos na Nuvem para um diretório no Autonomous 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 Database para o Cloud Object Storage.

Pré-requisitos

Como desenvolvedor, você pode usar procedimentos DBMS_CLOUD com Autonomous Databases implantados no 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 provedores de serviços Amazon S3, Azure Blob Storage e Google Cloud Storage.

Uma conectividade de saída deve ter sido configurada usando um gateway NAT pelo administrador da frota, conforme descrito abaixo:
  • Crie um gateway NAT na Rede Virtual na Nuvem (VCN) em que seus recursos do Autonomous Database residem seguindo as instruções em Criar um Gateway NAT na Documentação do Oracle Cloud Infrastructure.
  • Após criar o gateway NAT, adicione uma regra de roteamento e uma regra de segurança de saída a cada sub-rede (na VCN) na qual os recursos do Autonomous Database residem para que esses recursos possam usar o gateway para obter uma chave pública da sua instância do Azure AD:
    1. Vá para a página Detalhes da Sub-rede da sub-rede.
    2. Na guia Informações da Sub-rede, clique no nome da Tabela de Rota da sub-rede para exibir sua respectiva página Detalhes da Tabela de Rota.
    3. Na tabela de Regras de Roteamento existentes, verifique se já existe uma regra com as seguintes características:
      • Destino: 0.0.0.0/0
      • Tipo de Destino: Gateway NAT
      • Alvo: O nome do gateway NAT recém-criado na VCN

      Se essa regra não existir, clique em Adicionar Regras de Rota e adicione uma regra de roteamento com essas características.

    4. Retorne à página Detalhes da Sub-rede da sub-rede.
    5. Na tabela Listas de Segurança da sub-rede, clique no nome da lista de segurança da sub-rede para exibir a página Detalhes da Lista de Segurança.
    6. No menu lateral, em Recursos, clique em Regras de Saída.
    7. Na tabela de Regras de Saída existentes, verifique se já existe uma regra com as seguintes características:
      • Tipo de Destino: CIDR
      • Destino: 0.0.0.0/0
      • Protocolo IP: TCP
      • Faixa de Portas de Origem: 443
      • Faixa de Portas de Destino: Todas

      Se essa regra não existir, clique em Adicionar Regras de Saída e adicione uma regra de saída com essas características.

As definições de Proxy HTTP em seu ambiente devem permitir que o banco de dados acesse o provedor de serviços em nuvem.

Essas definições são definidas pelo administrador da frota ao criar a infraestrutura do Exadata Cloud@Customer, conforme descrito em Usando a Console para Provisionar o Exadata Database Service on Cloud@Customer.

Observação:

A configuração de rede, incluindo o Proxy HTTP, só poderá ser editada até que o Exadata Infrastructure esteja no estado Exige Ativação. Depois de ativado, você não poderá editar essas configurações.

A configuração de um Proxy HTTP para uma Infraestrutura do Exadata já provisionada precisa de uma Solicitação de Serviço (SR) no My Oracle Support. Consulte Criar uma Solicitação de Serviço no My Oracle Support para obter detalhes.

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 pasta de origem e destino pode estar no mesmo provedor de armazenamento de Objetos na 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, credential_name será definido como NULL.

source_location_uri

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

Esse parâmetro é obrigatório.

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

target_location_uri

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

Esse parâmetro é obrigatório.

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

target_credential_name

O nome da credencial para acessar o local de destino do Cloud Object Storage.

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 REGEXP_LIKE Condição para obter mais informações.

format

Especifica as opções de configuração adicionais para a operação do 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 pela qual a tabela de status é retida para uma operação em massa.

    O valor padrão é 2 dias.

  • logprefix: Ele 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 logprefix padrão é COPYOBJ.

  • priority: Ele 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 mais rapidamente.

    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 seu banco de dados usar OCPUs)

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

    • LOW: Processe os arquivos em ordem serial.

    O valor default é MEDIUM.

    O número máximo de operações de arquivo simultâneas é 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ções sobre Uso

  • Um erro é retornado quando o URI de origem e destino apontam para o mesmo bucket ou pasta do 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 em massa exclui 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, credential_name será definido como NULL.

location_uri

Especifica o URI, que aponta para um local do Object Storage no Autonomous Database.

Esse parâmetro é obrigatório.

O formato dos URIs depende do serviço Cloud Object Storage. Consulte DBMS_CLOUD Formatos de URI do Serviço File Cloud Object Storage 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 REGEXP_LIKE Condição para obter mais informações.

format

Especifica as opções de configuração adicionais para a operação do 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 pela qual a tabela de status é retida para uma operação em massa.

    O valor padrão é 2 dias.

  • logprefix: Ele 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 logprefix padrão é DELETE.

  • priority: Ele 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 seu banco de dados usar OCPUs).

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

    • LOW: Processe os arquivos em ordem serial.

    O valor default é MEDIUM.

    O número máximo de operações de arquivo simultâneas é 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 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, credential_name será definido como NULL.

location_uri

Especifica o URI, que aponta para um local do Object Storage no Autonomous Database.

Esse parâmetro é obrigatório.

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

directory_name

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

Esse 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 REGEXP_LIKE Condição para obter mais informações.

format

Especifica as opções de configuração adicionais para a operação do 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 pela qual a tabela de status é retida para uma operação em massa.

    O valor padrão é 2 dias.

  • logprefix: Ele 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 logprefix padrão é DOWNLOAD.

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

  • priority: Ele 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 seu banco de dados usar OCPUs).

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

    • LOW: Processe os arquivos em ordem serial.

    O valor default é MEDIUM.

    O número máximo de operações de arquivo simultâneas é 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

Esse procedimento em massa move arquivos 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 pasta de origem e destino pode estar no mesmo provedor de armazenamento de Objetos na 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, uma vez copiados com sucesso.

O objeto será renomeado em vez de movido se o Armazenamento de Objetos permitir a renomeação de operações entre locais de origem e 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, credential_name será definido como NULL.

source_location_uri

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

Esse parâmetro é obrigatório.

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

target_location_uri

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

Esse parâmetro é obrigatório.

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

target_credential_name

O nome da credencial para acessar o local de destino do Cloud Object Storage.

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 REGEXP_LIKE Condição para obter mais informações.

format

Especifica as opções de configuração adicionais para a operação do 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 pela qual a tabela de status é retida para uma operação em massa.

    O valor padrão é 2 dias.

  • logprefix: Ele 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 logprefix padrão é MOVE.

  • priority: Ele 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 seu banco de dados usar OCPUs).

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

    • LOW: Processe os arquivos em ordem serial.

    O valor default é MEDIUM.

    O número máximo de operações de arquivo simultâneas é 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 o URI de origem e destino apontam para o mesmo bucket ou pasta do Object Storage.

Procedimento BULK_UPLOAD

Este procedimento copia arquivos para o Cloud Object Storage de um diretório do Autonomous 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, credential_name será definido como NULL.

location_uri

Especifica o URI, que aponta para um local de Armazenamento de Objetos para fazer upload de arquivos.

Esse parâmetro é obrigatório.

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

directory_name

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

Esse 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 REGEXP_LIKE Condição para obter mais informações.

format

Especifica as opções de configuração adicionais para a operação do 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 pela qual a tabela de status é retida para uma operação em massa.

    O valor padrão é 2 dias.

  • logprefix: Ele 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 logprefix padrão é UPLOAD.

  • priority: Ele 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 seu banco de dados usar OCPUs).

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

    • LOW: Processe os arquivos em ordem serial.

    O valor default é MEDIUM.

    O número máximo de operações de arquivo simultâneas é 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;
/