DBMS_LIVE_FEED Referência de Pacote

Este capítulo fornece informações sobre os pacotes usados com a Ferramenta de Carregamento de Dados no Data Studio. O tópico DBMS_LIVE_FEED também abrange os procedimentos incluídos no pacote DBMS_LIVE_FEED.

Resumo de Subprogramas DBMS_LIVE_FEED

O pacote DBMS_LIVE_FEED simplifica operações comuns, como executar um feed de tabela ativa sob demanda, em uma programação ou como resultado de atualizações orientadas por notificação em uma tabela com base em novos objetos nos buckets de armazenamento de objetos.

DBMS_LIVE_FEED Subprogramas do Pacote

A tabela a seguir lista os subprogramas DBMS_LIVE_FEED e os descreve brevemente.

Subprograma Descrição
create_for_storage_link

Este procedimento cria um live feed para link de armazenamento.

create_for_directory

Este procedimento cria um live feed para o diretório.

create_for_url

Este procedimento cria um live feed a partir do URL.

modify_live_feed

Este procedimento modifica um live feed.

drop_live_feed

Este procedimento elimina um live feed.

load_new_content

Este procedimento carrega novo conteúdo em um Live Feed existente.

get_notification_key

Este procedimento recupera a Chave de Notificação de um Live Feed.

get_confirmation_url

Este procedimento recebe o URL de confirmação de um Live feed.

get_notification_state

Este procedimento recebe o estado de notificação de um Live Feed.

Procedimento Criar para Link de Armazenamento

Este procedimento cria um feed de tabela ativa com base em um link de armazenamento na nuvem. Um link de armazenamento na nuvem é uma associação nomeada entre um URI do bucket do OCI e um nome de credencial local.

Sintaxe
procedure create_for_storage_link(live_feed_name     IN VARCHAR2,
                                           table_name         IN VARCHAR2,
                                           storage_link_name  IN VARCHAR2,
                                           schema             IN VARCHAR2 DEFAULT NULL,
                                           table_schema       IN VARCHAR2 DEFAULT NULL,
                                           column_list        IN CLOB     DEFAULT NULL,
                                           object_type        IN VARCHAR2 DEFAULT NULL,
                                           object_format      IN VARCHAR2 DEFAULT NULL,
                                           object_filter      IN VARCHAR2 DEFAULT NULL,
                                           object_filter_type IN VARCHAR2 DEFAULT NULL,
                                           scheduled          IN BOOLEAN  DEFAULT NULL,
                                           scheduler_interval IN VARCHAR2 DEFAULT NULL,
                                           notifications      IN BOOLEAN  DEFAULT NULL,
                                           job_class          IN VARCHAR2 DEFAULT NULL,
                                           start_date         IN TIMESTAMP WITH TIME ZONE DEFAULT NULL,
                                           end_date           IN TIMESTAMP WITH TIME ZONE DEFAULT NULL);

DBMS_ LIVE_FEED Parâmetros

Se você estiver acessando procedimentos DBMS_LIVE_FEED, use os parâmetros a seguir.

Parâmetro Descrição

live_feed_name

O nome do Live feed que você deseja criar.

storage_link_name

O nome do link de armazenamento na nuvem. O nome do link deverá seguir as convenções de nomenclatura padrão da Oracle.

table_name

O nome da tabela de destino do Autonomous Database na qual o live feed carregará dados do Cloud Object Storage.

Object_filter

O nome da tabela de destino na qual os dados do live feed serão carregados na instância do Autonomous Database para acessar o Cloud Object Storage.

object_filter_type

A expressão regular para limitar o feed de tabela ativa apenas aos arquivos no bucket que correspondem à expressão. . Pode ser uma expressão regular ou um glob, dependendo do parâmetro object_filter_type.

scheduled

O default é TRUE. Se TRUE, você poderá configurar uma programação para executar o objeto de feed de tabela ativa.

notifications

O padrão é FALSE. Quando TRUE, a ferramenta Live Feed permite que seu livefeed seja notificado pelo armazenamento de objetos de que há novos arquivos a serem carregados.

schema

O nome do esquema.

O nome do esquema do livefeed. Somente o esquema atual é suportado no momento.

table_schema

O esquema da tabela de destino.

object_type

O tipo do objeto. Os tipos de arquivos que você pode carregar são CSV, JSON e Parquet.

object_format

Esta é uma das opções do SQL Loader.

Aceita o formato recebido pelo procedimento DBMS_CLOUD.COPY_DATA.

scheduler_interval

Esse parâmetro exibe o intervalo no qual o livefeed é executado usando a sintaxe DBMS_SCHEDULER.

job_class

A classe de job do Scheduler. Os valores são TPURGENT,TP,HIGH,MEDIUM e LOW.

start_date

A data inicial da tarefa de live feed.

end_date

A data de término da tarefa do Live feed.

Observação

Os parâmetros de todos os procedimentos descritos abaixo são listados na tabela acima.

Exemplo

Neste exemplo, um live feed chamado MYLIVEFEED é criado no URL fornecido.

SQL> BEGIN
   dbms_live_feed.create_for_storage_link(
     live_feed_name => 'MYLIVEFEED',
     storage_link_name => 'DATATOOLS_LF_BUCKET',
     table_name => 'MALTESE',
     object_filter => 'fndcalday?.csv',
     object_filter_type => 'GLOB',
     scheduled => false,
     notifications => false);
end;
/;
PL/SQL procedure successfully completed.

Procedimento Criar para Diretório

Este procedimento cria um feed de tabela ativa a partir de um diretório.

Sintaxe

procedure create_for_directory(live_feed_name     IN VARCHAR2,
                                 table_name         IN VARCHAR2,
                                 directory_name     IN VARCHAR2,
                                 schema             IN VARCHAR2 DEFAULT NULL,
                                 table_schema       IN VARCHAR2 DEFAULT NULL,
                                 column_list        IN CLOB     DEFAULT NULL,
                                 object_type        IN VARCHAR2 DEFAULT NULL,
                                 object_format      IN VARCHAR2 DEFAULT NULL,
                                 object_filter      IN VARCHAR2 DEFAULT NULL,
                                 object_filter_type IN VARCHAR2 DEFAULT NULL,
                                 scheduled          IN BOOLEAN  DEFAULT NULL,
                                 scheduler_interval IN VARCHAR2 DEFAULT NULL,
                                 notifications      IN BOOLEAN  DEFAULT NULL,
                                 job_class          IN VARCHAR2 DEFAULT NULL,
                                 start_date         IN TIMESTAMP WITH TIME ZONE DEFAULT NULL,
                                 end_date           IN TIMESTAMP WITH TIME ZONE DEFAULT NULL);

Procedimento Criar para URL

Este procedimento cria um feed de tabela ativa a partir de um URL.

Sintaxe

 procedure create_for_url(live_feed_name     IN VARCHAR2,
                           table_name         IN VARCHAR2,
                           url                IN VARCHAR2,
                           credential_name    IN VARCHAR2,
                           schema             IN VARCHAR2 DEFAULT NULL,
                           table_schema       IN VARCHAR2 DEFAULT NULL,
                           column_list        IN CLOB     DEFAULT NULL,
                           object_type        IN VARCHAR2 DEFAULT NULL,
                           object_format      IN VARCHAR2 DEFAULT NULL,
                           object_filter      IN VARCHAR2 DEFAULT NULL,
                           object_filter_type IN VARCHAR2 DEFAULT NULL,
                           scheduled          IN BOOLEAN  DEFAULT NULL,
                           scheduler_interval IN VARCHAR2 DEFAULT NULL,
                           notifications      IN BOOLEAN  DEFAULT NULL,
                           job_class          IN VARCHAR2 DEFAULT NULL,
                           start_date         IN TIMESTAMP WITH TIME ZONE DEFAULT NULL,
                           end_date           IN TIMESTAMP WITH TIME ZONE DEFAULT NULL);

Modificar Procedimento de Live Feed

Este procedimento modifica um feed de tabela ativa.

Sintaxe

procedure modify_live_feed(live_feed_name     IN VARCHAR2,
                             schema             IN VARCHAR2 DEFAULT NULL,
                             scheduled          IN BOOLEAN  DEFAULT NULL,
                             scheduler_interval IN VARCHAR2 DEFAULT NULL,
                             notifications      IN BOOLEAN  DEFAULT NULL,
                             job_class          IN VARCHAR2 DEFAULT NULL,
                             start_date         IN TIMESTAMP WITH TIME ZONE DEFAULT NULL,
                             end_date           IN TIMESTAMP WITH TIME ZONE DEFAULT NULL);

Exemplo

Neste exemplo, um live feed chamado MYLIVEFEED é modificado.

begin
   dbms_live_feed.modify_live_feed(
     live_feed_name => 'MYLIVEFEED',
     scheduled => true,
     scheduler_interval => 'FREQ=daily;INTERVAL=1',
     notifications => true);
end;
/

Eliminar Procedimento de Live Feed

Este procedimento elimina um feed de tabela ativa.

Sintaxe

procedure drop_live_feed(live_feed_name     IN VARCHAR2,
                                  schema             IN VARCHAR2 DEFAULT NULL);

Exemplo

Neste exemplo, um live feed chamado MYLIVEFEED é eliminado.

begin
   dbms_live_feed.drop_live_feed(live_feed_name => 'MYLIVEFEED');
end;
/

Carregar Procedimento de Novo Conteúdo

Este procedimento carrega novo conteúdo no feed.

Sintaxe

 procedure load_new_content(live_feed_name IN VARCHAR2,
                                     schema         IN VARCHAR2 DEFAULT NULL);

Obter Procedimento da Chave de Notificação

Este procedimento recebe a Chave de Notificação de Alimentação da Tabela Ativa. Ele é usado para um live feed com notificações ativadas para construir um URL de notificação para fornecer um serviço de nuvem. Siga as instruções no capítulo Criando um Feed de Tabela Ativa Baseado em Notificação para criar um live feed baseado em notificação.

Sintaxe

function get_notification_key(live_feed_name IN VARCHAR2,
                                       schema         IN VARCHAR2 DEFAULT NULL)
    return VARCHAR2;

Obter URL de Confirmação

Este procedimento recebe o URL de confirmação que verifica se o ponto final pode receber notificações.

Você deve visitar esse URL para ativar as notificações recebidas de um serviço de nuvem. Não é possível confirmar a ativação de notificações automaticamente devido a restrições de firewall de banco de dados. Clique neste URL para ativar as notificações; caso contrário, você não receberá nenhuma notificação.

Sintaxe

function get_confirmation_url(live_feed_name IN VARCHAR2,
                                       schema         IN VARCHAR2 DEFAULT NULL)
    return VARCHAR2;

Obter Status da Notificação

Este procedimento recebe o estado de notificação da execução do job do Live Feed.

Sintaxe

 function get_notification_state(live_feed_name IN VARCHAR2,
                                          schema         IN VARCHAR2 DEFAULT NULL)
    return VARCHAR2;