Utiliser la messagerie persistante avec les messages stockés dans un magasin d'objets en nuage
L'ensemble DBMS_PIPE offre des fonctionnalités étendues sur Autonomous AI Database pour prendre en charge les messages persistants, où les messages sont stockés dans le magasin d'objets en nuage.
À propos de la messagerie persistante avec DBMS_PIPE
DBMS_PIPE permet à une ou plusieurs sessions de base de données de communiquer dans la même région ou entre les régions avec des messages stockés dans le magasin d'objets en nuage.
Messages persistants dans DBMS_PIPE :
-
Permet d'envoyer et de récupérer des messages très volumineux.
-
Prendre en charge l'envoi d'un grand nombre de messages de canalisation.
-
Prendre en charge l'envoi et la réception de messages au sein d'une seule base de données, entre plusieurs bases de données et entre des bases de données de différentes régions.
-
Prendre en charge plusieurs canaux à l'aide du même URI d'emplacement de magasin d'objets en nuage.
Les canaux de messagerie persistants peuvent être créés dans n'importe quel type DBMS_PIPE pris en charge :
- Conduit implicite : Créé automatiquement lorsqu'un message est envoyé avec un nom de canal inconnu à l'aide de la fonction
DBMS_PIPE.SEND_MESSAGE. - Converbe explicite : Créé à l'aide de la fonction
DBMS_PIPE.CREATE_PIPEavec un nom de canal spécifié par l'utilisateur. - Conseil public : Accessible par tout utilisateur disposant de l'autorisation
EXECUTEsur l'ensembleDBMS_PIPE. - Converbe privé : Accessible par les sessions avec le même utilisateur que le créateur du canal.
Note :
Oracle recommande de créer une barre verticale explicite avant d'envoyer ou de recevoir des messages avec une messagerie persistante. La création d'un canal explicite avecDBMS_PIPE.CREATE_PIPE garantit que le canal est créé avec les autorisations d'accès voulues, publiques ou privées (en définissant le paramètre private).
Voici le flux de travail général pour DBMS_PIPE avec messagerie persistante :
Créer un canal persistant explicite et envoyer un message
Décrit les étapes de création d'un tuyau persistant avec un nom de tuyau spécifié (tuyau explicite).
Extraire un message persistant sur la même base de données
Décrit les étapes d'extraction d'un message persistant à partir d'un canal explicite sur la même instance de base de données d'intelligence artificielle autonome (instance où le message a été envoyé).
Sur une instance Autonomous AI Database, vous pouvez recevoir des messages envoyés à un canal à partir d'une autre session. Les procédures DBMS_PIPE sont des procédures de droits de l'appelant et sont exécutées en tant qu'utilisateur appelé courant.
Les tuyaux privés appartiennent à l'utilisateur courant qui crée le tuyau. Les tuyaux privés ne sont accessibles que par le même utilisateur qui a créé le tuyau. Cela s'applique aux canaux utilisant des messages en mémoire et aux canaux utilisant des messages persistants avec des messages stockés dans le magasin d'objets en nuage.
Les canaux publics sont accessibles par toute session de base de données ayant le privilège d'exécution sur DBMS_PIPE. Cela s'applique aux canaux utilisant des messages en mémoire et aux canaux utilisant des messages persistants avec des messages stockés dans le magasin d'objets en nuage.
Pour plus d'informations, voir Procédure SET_CREDENTIAL_NAME et Fonction GET_LOCATION_URI.
Pour plus d'informations, voir Fonction RECEIVE_MESSAGE.
Extraire un message persistant en créant un canal sur une autre base de données
Décrit les étapes d'extraction d'un message persistant stocké dans le magasin d'objets en nuage avec un canal explicite sur une instance de base de données d'intelligence artificielle autonome différente de l'instance qui a envoyé le message.
Supprimer un tuyau persistant
Décrit les étapes de suppression d'une canalisation persistante.
Les canaux persistants envoient et reçoivent des messages en stockant des messages dans le magasin d'objets en nuage. Utilisez DBMS_PIPE.REMOVE_PIPE pour supprimer une canalisation persistante sur une instance Autonomous AI Database.