Pacote DBMS_CLOUD_PIPELINE

O pacote DBMS_CLOUD_PIPELINE permite criar pipelines de dados para carregar e exportar dados na nuvem. Este pacote suporta carregamento de dados incremental contínuo de arquivos no armazenamento de objetos no banco de dados. DBMS_CLOUD_PIPELINE também suporta exportação incremental contínua de dados de tabela ou resultados de consulta do banco de dados para o armazenamento de objetos com base em uma coluna de timestamp.

Resumo de Subprogramas DBMS_CLOUD_PIPELINE

Esta tabela resume os subprogramas incluídos no pacote DBMS_CLOUD_PIPELINE.

Subprograma Descrição

Procedimento CREATE_PIPELINE

Cria um novo pipeline de dados.

Procedimento DROP_PIPELINE

Elimina um pipeline de dados existente.

Procedimento RESET_PIPELINE

Redefine o estado de rastreamento de um pipeline de dados. Use o pipeline de redefinição para reiniciar o pipeline no estado inicial do carregamento ou da exportação de dados. Opcionalmente, o pipeline de redefinição pode expurgar dados no banco de dados ou no armazenamento de objetos, dependendo do tipo de pipeline.

Procedimento RUN_PIPELINE_ONCE

Executa uma execução sob demanda do pipeline na sessão de primeiro plano atual, em vez de um job programado.

Procedimento SET_ATTRIBUTE

Define atributos de pipeline. Há dois procedimentos sobrepostos, um para definir um único atributo e outro para definir vários atributos usando um documento JSON de pares de nome/valor de atributo

Procedimento START_PIPELINE

Inicia o pipeline de dados. Quando um pipeline é iniciado, a operação do pipeline é executada continuamente em um job programado de acordo com o "intervalo" configurado nos atributos do pipeline.

Procedimento STOP_PIPELINE

Interrompe o pipeline de dados. Quando um pipeline é interrompido, nenhum job futuro é programado para o pipeline.

Procedimento CREATE_PIPELINE

O procedimento cria um novo pipeline de dados.

Sintaxe

DBMS_CLOUD_PIPELINE.CREATE_PIPELINE(
      pipeline_name        IN   VARCHAR2,
      pipeline_type        IN   VARCHAR2,
      attributes           IN   CLOB        DEFAULT NULL,
      description          IN   VARCHAR2    DEFAULT NULL
);

Parâmetros

Parâmetro Descrição

pipeline_name

Especifica um nome para o pipeline. O nome do pipeline deve seguir as regras de nomenclatura dos identificadores SQL da Oracle. Consulte Identificadores para obter mais informações.

Este parâmetro é obrigatório.

pipeline_type

Especifica o tipo de pipeline.

Valores válidos: LOAD, EXPORT

Este parâmetro é obrigatório.

attributes

Atributos de pipeline no formato JSON.

Valor padrão: NULL

Consulte DBMS_CLOUD_PIPELINE Atributos para obter mais informações.

description

Descrição do pipeline.

Valor padrão: NULL

Procedimento DROP_PIPELINE

O procedimento elimina um pipeline de dados existente. Se um pipeline tiver sido iniciado, ele deverá ser interrompido para que possa ser eliminado.

Sintaxe

DBMS_CLOUD_PIPELINE.DROP_PIPELINE(
       pipeline_name        IN   VARCHAR2,
       force                IN   BOOLEAN DEFAULT FALSE
 );

Parâmetros

Parâmetro Descrição

pipeline_name

Especifica um nome de pipeline.

Este parâmetro é obrigatório.

force

Elimine um pipeline à força, mesmo que ele esteja no estado iniciado.

Valores válidos: TRUE, FALSE

Valor padrão: FALSE

Nota de Uso

  • Para eliminar um pipeline que está no estado iniciado, defina o parâmetro force como TRUE.

Procedimento RESET_PIPELINE

Redefine o estado de rastreamento de um pipeline de dados. Use o pipeline de redefinição para reiniciar o pipeline no estado inicial do carregamento ou da exportação de dados. Opcionalmente, o pipeline de redefinição pode expurgar dados no banco de dados ou no armazenamento de objetos, dependendo do tipo de pipeline. Um pipeline de dados deve estar no estado interrompido para redefini-lo.

Sintaxe

DBMS_CLOUD_PIPELINE.RESET_PIPELINE(
       pipeline_name        IN   VARCHAR2,
       purge_data           IN   BOOLEAN DEFAULT FALSE
 );

Parâmetros

Parâmetro Descrição

pipeline_name

Especifica um nome para o pipeline.

Este parâmetro é obrigatório.

purge_data

Os dados de expurgação se aplicam a um pipeline de carga ou de exportação:

  • Para um pipeline de carga, quando TRUE, trunque os dados na tabela de banco de dados.

  • Para um pipeline de exportação, quando TRUE, exclua os arquivos no local do armazenamento de objetos.

Valores válidos: TRUE, FALSE

Valor padrão: FALSE

Observações de Uso

  • Um pipeline de dados deve estar no estado interrompido para redefini-lo. Consulte STOP_PIPELINE Procedimento para obter mais informações.

  • Para um pipeline de carga, a redefinição do pipeline limpa o registro dos arquivos que estão sendo carregados pelo pipeline. Quando você chama START_PIPELINE ou RUN_PIPELINE_ONCE após redefinir um pipeline de carga, o pipeline repete o carregamento de dados e inclui todos os arquivos presentes no local do armazenamento de objetos.

    Quando purge_data é definido como TRUE, DBMS_CLOUD_PIPELINE.RESET_PIPELINE faz o seguinte:

    • Trunca os dados na tabela de banco de dados do pipeline que você especifica com o atributo table_name.

    • Elimina a tabela de status do pipeline e a tabela de arquivos inválidos e de erros do pipeline (se houver).

  • Para um pipeline de exportação, a redefinição do pipeline limpa os últimos dados rastreados na tabela de banco de dados. Quando você chama START_PIPELINE ou RUN_PIPELINE_ONCE após redefinir um pipeline de exportação, o pipeline repete a exportação de dados da tabela ou consulta.

    Quando purge_data é definido como TRUE, DBMS_CLOUD_PIPELINE.RESET_PIPELINE exclui arquivos existentes no local de armazenamento de objetos especificado com o atributo location.

Procedimento RUN_PIPELINE_ONCE

Este procedimento executa uma execução sob demanda do pipeline na sessão de primeiro plano atual, em vez de uma execução em um job programado. Use DBMS_CLOUD_PIPELINE.RUN_PIPELINE_ONCE para testar um pipeline antes de iniciar o pipeline como um job contínuo.

Sintaxe

DBMS_CLOUD_PIPELINE.RUN_PIPELINE_ONCE(
       pipeline_name  IN  VARCHAR2
);

Parâmetros

Parâmetro Descrição

pipeline_name

Especifica um nome para o pipeline a ser executado.

Este parâmetro é obrigatório.

Observações de Uso

  • Depois de executar uma execução de teste de um pipeline, você poderá redefinir o estado do pipeline usando DBMS_CLOUD_PIPELINE.RESET_PIPELINE. Isso permite redefinir o estado do pipeline antes de iniciar o pipeline em um job programado.

  • Se um pipeline estiver no estado iniciado, ele não poderá ser executado na sessão em primeiro plano.

Procedimento SET_ATTRIBUTE

Este procedimento define atributos de pipeline. Há dois procedimentos sobrecarregados, um para definir um único atributo e outro para definir vários atributos usando um documento JSON de pares de nome/valor de atributo.

Sintaxe

PROCEDURE DBMS_CLOUD_PIPELINE.SET_ATTRIBUTE(
      pipeline_name        IN   VARCHAR2,
      attribute_name       IN   VARCHAR2,
      attribute_value      IN   CLOB
);
 
PROCEDURE DBMS_CLOUD_PIPELINE.SET_ATTRIBUTE(
      pipeline_name        IN   VARCHAR2,
      attributes           IN   CLOB
);

Parâmetros

Parâmetro Descrição

pipeline_name

Especifica um nome para o pipeline definir atributos.

Este parâmetro é obrigatório.

attribute_name

Especifica o nome do atributo a ser definido.

Consulte DBMS_CLOUD_PIPELINE Atributos para obter mais informações.

attribute_value

Especifica o valor do atributo do pipeline a ser definido.

Consulte DBMS_CLOUD_PIPELINE Atributos para obter mais informações.

attributes

Especifica um documento JSON que contém nomes e valores de atributos.

Consulte DBMS_CLOUD_PIPELINE Atributos para obter mais informações.

Nota de Uso

  • Quando você usa DBMS_CLOUD_PIPELINE.SET_ATTRIBUTE para definir vários atributos com o parâmetro attributes, todos os atributos existentes são excluídos e substituídos pelos atributos especificados do documento JSON.

Procedimento START_PIPELINE

O procedimento inicia o pipeline de dados. Quando um pipeline é iniciado, a operação do pipeline é executada continuamente em um job programado de acordo com o interval configurado com os atributos do pipeline.

Sintaxe

DBMS_CLOUD_PIPELINE.START_PIPELINE(
      pipeline_name        IN   VARCHAR2,
      start_date           IN   TIMESTAMP WITH TIME ZONE DEFAULT NULL
);

Parâmetros

Parâmetro Descrição

pipeline_name

Especifica um nome para o pipeline.

Este parâmetro é obrigatório.

start_date

Especifica a data inicial do job de pipeline.

Valor padrão: NULL

Observações de Uso

  • Por padrão, um job de pipeline começa imediatamente, assim que o pipeline é iniciado. Para iniciar um job de pipeline posteriormente, especifique uma data ou timestamp válido usando o parâmetro start_date.

  • Consulte Atributos DBMS_CLOUD_PIPELINE para obter informações sobre o pipeline interval e outros atributos de pipeline.

Procedimento STOP_PIPELINE

O procedimento interrompe o pipeline de dados. Quando um pipeline é interrompido, nenhum job futuro é programado para o pipeline.

Sintaxe

DBMS_CLOUD_PIPELINE.STOP_PIPELINE(
      pipeline_name        IN   VARCHAR2,
      force                IN   BOOLEAN  DEFAULT  FALSE
);

Parâmetros

Parâmetro Descrição

pipeline_name

Especifica um nome para o pipeline.

Este parâmetro é obrigatório.

force

Se o parâmetro de imposição for informado como TRUE, ele encerrará qualquer job em execução para o pipeline.

Valores válidos: TRUE, FALSE

Valor padrão: FALSE

DBMS_CLOUD_PIPELINE Atributos

Os atributos ajudam a controlar e configurar o comportamento de um pipeline de dados.

Atributos

Observação

Conforme indicado na coluna Tipo de Pipeline, dependendo do tipo de pipeline LOAD ou EXPORT, um pipeline suporta outro conjunto de atributos.
Nome do Atributo Descrição Tipo de Pipeline Modificável após Início do Pipeline
credential_name

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

Você pode usar 'OCI$RESOURCE_PRINCIPAL' como credential_name quando o controlador de recursos está ativado. As credenciais especificadas com o seguinte também são suportadas: Amazon Resource Names, Controlador de Serviços do Azure ou Conta de Serviços do Google. Consulte Configurar Políticas e Atribuições para Acessar Recursos para obter mais informações.

Valor padrão: NULL.

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

LOAD, EXPORT Sim
field_list

Identifica os campos nos arquivos de origem e seus tipos de dados. A sintaxe desse argumento é a mesma da cláusula field_list nas tabelas externas regulares do sistema Oracle. Para obter mais informações sobre field_list consulte Oracle® Database Utilities.

Valor padrão: NULL

O valor padrão especifica os campos e seus tipos de dados são determinados pelas colunas na tabela especificada no atributo table_name.

LOAD Sim
format

As opções que descrevem o formato do tipo de pipeline.

Não há suporte para o Datapump format em um pipeline de exportação.

Esse atributo é obrigatório para os pipelines LOAD e EXPORT.

LOAD, EXPORT Sim
interval

O intervalo de tempo em minutos entre execuções consecutivas do job de pipeline programado.

Valor padrão: 15 minutos

LOAD, EXPORT Sim
key_column

Uma coluna de timestamp ou data no table ou query especificado para exportar dados mais novos continuamente para o armazenamento de objetos. O último timestamp ou data de execução é rastreado pelo pipeline de Exportação e comparado com o valor em key_column para identificar novos dados para exportação para o armazenamento de objetos.

Valor padrão: NULL

Se key_column não for especificado para um pipeline de exportação, todo o conteúdo de table ou query será submetido a upload para o armazenamento de objetos em cada execução de job de pipeline.

EXPORT No
location

Especifica um URI que aponta para um local de Armazenamento de Objetos.

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

Esse atributo é obrigatório para os pipelines LOAD e EXPORT.

LOAD, EXPORT No
priority

Especifica um valor de string que determina o número de operações paralelas executadas para o pipeline.

  • Em um pipeline de carregamento, ele determina o número de arquivos carregados em paralelo.

  • Em um pipeline de exportação, ele determina o grau de paralelismo para extrair dados do banco de dados.

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

Valores válidos:

  • 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: Execute o job de pipeline em ordem serial.

Valor padrão: MEDIUM

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

LOAD, EXPORT Sim
query

Especifica uma instrução SELECT para que apenas os dados necessários sejam exportados. A consulta determina o conteúdo dos arquivos exportados como arquivos de texto (CSV, JSON, Parquet ou XML) ou arquivos de dump.

Por exemplo:

SELECT warehouse_id, quantity FROM inventories

Valor padrão: NULL

Para um pipeline de exportação, table_name ou query é obrigatório.

EXPORT No
table_name

Especifica o nome da tabela de destino para carregar ou exportar dados.

Para um pipeline de carga, table_name é obrigatório.

Para um pipeline de exportação, table_name ou query é obrigatório.

LOAD, EXPORT No
table_owner

O nome do esquema em que a tabela de destino reside para carregar ou exportar dados.

Valor padrão: NULL

Com um valor NULL, a tabela de destino está no mesmo esquema que o usuário que está executando o procedimento.

LOAD, EXPORT Número