DBMS_LIVE_FEED Référence de package

Ce chapitre fournit des informations sur les packages que vous utilisez avec l'outil de chargement de données dans Data Studio. La rubrique DBMS_LIVE_FEED couvre également les procédures incluses dans le package DBMS_LIVE_FEED.

Récapitulatif des sous-programmes DBMS_LIVE_FEED

Le package DBMS_LIVE_FEED simplifie les opérations courantes, telles que l'exécution d'un flux de table en direct à la demande, selon une programmation ou suite à des mises à jour de table basées sur des notifications en fonction de nouveaux objets dans les buckets de banque d'objets.

DBMS_LIVE_FEED Sous-programmes de package

Le tableau suivant répertorie les sous-programmes DBMS_LIVE_FEED et les décrit brièvement.

Sous-programme Description
create_for_storage_link

Cette procédure crée un flux en direct pour le lien de stockage.

create_for_directory

Cette procédure crée un flux en direct pour le répertoire.

create_for_url

Cette procédure crée un flux en direct à partir de l'URL.

modify_live_feed

Cette procédure modifie un flux actif.

drop_live_feed

Cette procédure supprime un flux actif.

load_new_content

Cette procédure charge le nouveau contenu dans un Live Feed existant.

get_notification_key

Cette procédure extrait la clé de notification d'un flux en direct.

get_confirmation_url

Cette procédure reçoit l'URL de confirmation d'un flux en direct.

get_notification_state

Cette procédure reçoit l'état de notification d'un flux en direct.

Procédure de création de lien de stockage

Cette procédure crée un flux de table en direct à partir d'un lien de stockage cloud. Un lien de stockage cloud est une association nommée entre un URI de bucket OCI et un nom d'informations d'identification locales.

Syntaxe
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);

Paramètres DBMS_ LIVE_FEED

Si vous accédez aux procédures DBMS_LIVE_FEED, utilisez les paramètres suivants.

Paramètre Description

live_feed_name

Nom du flux en direct que vous voulez créer.

storage_link_name

Nom du lien de stockage cloud. Le nom du lien doit respecter les conventions de dénomination Oracle standard.

table_name

Nom de la table cible Autonomous Database dans laquelle le flux en direct chargera les données à partir de Cloud Object Storage.

Object_filter

Nom de la table cible dans laquelle les données du flux en direct seront chargées dans votre instance Autonomous Database pour accéder au stockage d'objet cloud.

object_filter_type

Expression régulière permettant de limiter le flux de table en direct aux fichiers du bucket correspondant à l'expression uniquement. Il peut s'agir d'une expression régulière ou d'un glob, selon le paramètre object_filter_type.

scheduled

La valeur par défaut est TRUE. Si la valeur est TRUE, vous pouvez configurer une programmation pour l'exécution de l'objet de flux de table actif.

notifications

La valeur par défaut est FALSE. Lorsque TRUE est activé, l'outil de flux en direct permet à votre flux en direct d'être averti par le stockage d'objets qu'il existe de nouveaux fichiers à charger.

schema

Nom du schéma.

Nom du schéma du flux direct. Seul le schéma en cours est pris en charge pour le moment.

table_schema

Schéma de la table cible.

object_type

Type de l'objet. Les types de fichier que vous pouvez charger sont CSV, JSON et Parquet.

object_format

Il s'agit de l'une des options du programme de chargement SQL.

Il accepte le format reçu par la procédure DBMS_CLOUD.COPY_DATA.

scheduler_interval

Ce paramètre affiche l'intervalle d'exécution du flux direct à l'aide de la syntaxe DBMS_SCHEDULER.

job_class

Classe de travail du planificateur. Les valeurs sont TPURGENT,TP,HIGH,MEDIUM et LOW.

start_date

Date de début du travail de flux en direct.

end_date

Date de fin du travail de flux en direct.

Remarque

Les paramètres de toutes les procédures décrites ci-dessous sont répertoriés dans le tableau ci-dessus.

Exemple

Dans cet exemple, un flux en direct nommé MYLIVEFEED est créé sur l'URL indiquée.

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.

Procédure de création pour répertoire

Cette procédure crée un flux de table en direct à partir d'un répertoire.

Syntaxe

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

Procédure Créer pour URL

Cette procédure crée un flux de table en direct à partir d'une URL.

Syntaxe

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

Modifier la procédure Live Feed

Cette procédure modifie un flux de table actif.

Syntaxe

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

Exemple

Dans cet exemple, un flux en direct nommé MYLIVEFEED est modifié.

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

Supprimer la procédure de flux en direct

Cette procédure supprime un flux de table actif.

Syntaxe

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

Exemple

Dans cet exemple, un flux en direct nommé MYLIVEFEED est supprimé.

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

Procédure de chargement de nouveau contenu

Cette procédure charge le nouveau contenu dans le flux.

Syntaxe

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

Obtenir la procédure clé de notification

Cette procédure reçoit la clé de notification de flux de table en direct. Il est utilisé pour un flux en direct avec des notifications activées pour créer une URL de notification afin de fournir un service cloud. Suivez les instructions du chapitre Création d'un flux de table en direct basé sur les notifications pour créer un flux de table en direct basé sur les notifications.

Syntaxe

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

Obtenir l'URL de confirmation

Cette procédure reçoit une URL de confirmation qui vérifie que l'adresse peut recevoir des notifications.

Vous devez visiter cette URL pour activer les notifications que vous recevez d'un service cloud. Il n'est pas possible de confirmer l'activation automatique des notifications en raison des restrictions de pare-feu de base de données. Cliquez sur cette URL pour activer les notifications. Sinon, vous ne recevrez aucune notification.

Syntaxe

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

Obtenir l'état de la notification

Cette procédure reçoit l'état de notification de l'exécution du travail de flux en direct.

Syntaxe

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