Prise en charge de SharePoint dans une base de données Autonomous AI à l'aide de DBMS_CLOUD
Avec la prise en charge de SharePoint, vous pouvez accéder aux fichiers stockés dans Microsoft SharePoint à l'aide des packages DBMS_CLOUD et DBMS_CLOUD_PIPELINE avec des URI et des objets d'informations d'identification propres au fournisseur.
Si vous stockez des fichiers dans SharePoint, vous pouvez utiliser le package DBMS_CLOUD pour répertorier et extraire des données de manière cohérente avec les intégrations de banque d'objets cloud existantes.
La prise en charge de SharePoint permet de répertorier, de télécharger et de traiter en aval du contenu externe dans la base de données Autonomous AI.
Avec le type de pipeline DOWNLOAD dans le package DBMS_CLOUD_PIPELINE, Autonomous AI Database peut extraire des fichiers externes pour une analyse et une indexation plus poussées.
Avant de commencer
Avant d'utiliser SharePoint avec DBMS_CLOUD, vous devez vous assurer que vous disposez des informations d'identification client requises pour créer un objet d'informations d'identification de base de données. Vous pouvez créer des informations d'identification avec l'ID client et la clé secrète client de l'utilisateur SharePoint ou d'une application Azure qui a accès au contenu SharePoint.
Packages pris en charge
DBMS_CLOUD suivantes prennent en charge les URI SharePoint :
- OBTENIR L'OBJET
- LISTES_OBJETS
- LIST_OBJECTS_EXTENDED
- DBMS_CLOUD_AI.CREATE_VECTOR_INDEX
SharePoint est pris en charge uniquement avec le type de pipeline DOWNLOAD dans la procédure DBMS_CLOUD_PIPELINE.
Format d'URI SharePoint
SharePoint://tenant_id=<tenant_id>/site_id=<site_id>/sites/<subsite_id>/list_id=<list_id>/<item_id>Vous pouvez générer un URI SharePoint valide à l'aide de DBMS_CLOUD.INIT_SHAREPOINT_URI.
Sujets :
- Exemple : extraction et liste de fichiers à partir de SharePoint
Exécutez les étapes suivantes pour accéder aux fichiers stockés dans SharePoint afin de charger des données dans la base de données Autonomous AI pour analyse. - Exemple : téléchargement de contenu SharePoint avec un pipeline
Vous pouvez utiliser un pipeline lorsque vous voulez que la base de données Autonomous AI repère le contenu et le télécharge dans un workflow. - Exemple : création d'un index vectoriel à partir de fichiers SharePoint
Vous pouvez créer des index vectoriels directement à partir de SharePoint à l'aide deDBMS_CLOUD_AI.CREATE_VECTOR_INDEX.
Rubrique parent : Développement
Exemple : Extraire et répertorier des fichiers à partir de SharePoint
Exécutez les étapes suivantes pour accéder aux fichiers stockés dans SharePoint afin de charger des données dans la base de données Autonomous AI pour analyse.
- Créer des informations d'identification SharePointCréez des informations d'identification avec l'ID client SharePoint et la clé secrète client, puis indiquez un nom d'informations d'identification.
BEGIN DBMS_CLOUD.CREATE_CREDENTIAL( credential_name => 'SHAREPOINT_CRED', username => '<client-id>', password => '<client-secret>' ); END; / - Générer l'URI SharePointExécutez
DBMS_CLOUD.INIT_SHAREPOINT_URIpour générer l'URI SharePoint pour le site, le sous-site, la liste ou l'élément SharePoint auquel vous voulez accéder.DECLARE l_location_uri varchar2(4000); BEGIN l_location_uri := DBMS_CLOUD.INIT_SHAREPOINT_URI( tenant_id => 'Tenant ID', site_id => 'Site ID', sub_site_id => 'Sub Site ID', list_id => 'List ID', item_id => 'Item ID' ); END; /Cette procédure renvoie le format d'URI correct pour l'emplacement SharePoint auquel vous voulez accéder.
- Répertorier les objets et vérifier les métadonnées
Exécutez
DBMS_CLOUD.LIST_OBJECTS_EXTENDEDpour identifier les fichiers disponibles dans SharePoint et les détails des identificateurs SharePoint dans la colonneMETADATA.SELECT * FROM DBMS_CLOUD.LIST_OBJECTS_EXTENDED( location_uri => DBMS_CLOUD.INIT_SHAREPOINT_URI( tenant_id => 'Tenant ID', site_id => 'Site ID', sub_site_id => 'Sub Site ID', list_id => 'List ID', item_id => 'Item ID'), credential_name => 'SHAREPOINT_CRED');La sortie inclut une colonne
METADATAavec des attributs JSON spécifiques à SharePoint tels quetenantid,siteid,listidetitemid.Pour plus d'informations, reportez-vous à DBMS_CLOUD.LIST_OBJECTS_EXTENDED.
- Télécharger un seul fichierUne fois que vous avez identifié l'élément souhaité, exécutez
DBMS_CLOUD.GET_OBJECTpour télécharger un fichier unique à partir de SharePoint. PourGET_OBJECT, l'URI SharePoint doit inclureitemid.DBMS_CLOUD.GET_OBJECT( object_uri => DBMS_CLOUD.INIT_SHAREPOINT_URI( tenant_id => 'Tenant ID', site_id => 'Site ID', sub_site_id => 'Sub Site ID', list_id => 'List ID', item_id => 'Item ID'), credential_name => 'SHAREPOINT_CRED');Exécutez l'instruction ci-dessus lorsque vous souhaitez que l'objet soit renvoyé directement au lieu d'être écrit dans un répertoire de base de données.
- Télécharger un objet en local dans un répertoireExécutez
GET_OBJECTet incluezdirectory_namedans la procédure.DBMS_CLOUD.GET_OBJECT( object_uri => DBMS_CLOUD.INIT_SHAREPOINT_URI( tenant_id => 'Tenant ID', site_id => 'Site ID', sub_site_id => 'Sub Site ID', list_id => 'List ID', item_id => 'Item ID'), credential_name => 'SHAREPOINT_CRED', directory_name => 'STAGING');Comme vous indiquez le nom du répertoire, les fichiers sont téléchargés vers ce répertoire de base de données.
Pour plus d'informations, reportez-vous à DBMS_CLOUD.GET_OBJECT.
Exemple : téléchargement de contenu SharePoint avec un pipeline
Vous pouvez utiliser un pipeline lorsque vous voulez que la base de données Autonomous AI repère du contenu et le télécharge dans un workflow.
Le système crée des pipelines au niveau du site SharePoint, et non au niveau de la liste ou de la bibliothèque. Oracle recommande d'utiliser un pipeline par site.
Si un site a un sous-site, créez un pipeline distinct en spécifiant l'identifiant combiné du site et du sous-site au format <site_id>/sites/<sub-site_id>.
- Créer un pipeline de téléchargement
Créez un pipeline
DOWNLOADpour charger des données à partir de SharePoint.BEGIN DBMS_CLOUD_PIPELINE.CREATE_PIPELINE( pipeline_name => 'MY_PIPE2', pipeline_type => 'DOWNLOAD', description => 'Downloads data from SharePoint to Autonomous Database' ); END; /Ce type de pipeline est le seul type de pipeline pris en charge pour SharePoint.
- Définir les attributs de pipelineIndiquez les informations d'identification, l'emplacement SharePoint, la priorité et les valeurs d'intervalle du pipeline.
BEGIN DBMS_CLOUD_PIPELINE.SET_ATTRIBUTE( pipeline_name => 'MY_PIPE2', attributes => JSON_OBJECT( 'credential_name' VALUE 'SHAREPOINT_CRED', 'location' VALUE DBMS_CLOUD.INIT_SHAREPOINT_URI( tenant_id => 'Tenant ID', site_id => 'Site ID'), 'priority' VALUE 'HIGH', 'interval' VALUE '5') ); END; /Si vous indiquez également
directory_name, le pipeline télécharge les fichiers dans ce répertoire au lieu de stocker les données de fichier dans la table de statut du pipeline.Pour plus d'informations, voir Attributs DBMS_CLOUD_PIPELINE.
-
Démarrer le pipeline
Une fois les attributs définis, vous pouvez démarrer le pipeline :EXEC DBMS_CLOUD_PIPELINE.START_PIPELINE('MY_PIPE2');Lorsque le pipeline démarre, il valide l'URI et rassemble les éléments du site ou sous-site cible. Le pipeline télécharge les données vers le répertoire indiqué. Si vous n'indiquez pas de répertoire, le pipeline le stocke dans la colonne de données de la table de statut du pipeline.
- Vérifier les résultats du pipeline
Consultez la table des statuts de pipeline pour vérifier que les objets ont bien été traités et pour inspecter le statut, les horodatages et les détails du contenu téléchargé. Si le pipeline écrit des fichiers dans un répertoire, exécutez
DBMS_CLOUD.LIST_FILESpour vérifier les fichiers téléchargés.
Exemple : création d'un index vectoriel à partir de fichiers SharePoint
Vous pouvez créer des index vectoriels directement à partir de SharePoint à l'aide de DBMS_CLOUD_AI.CREATE_VECTOR_INDEX.
LIST_OBJECTS pour remplir la table de statut, extrait le contenu de l'objet avec GET_OBJECT et stocke les incorporations générées dans la table de vecteurs cible.
- Créer des informations d'identification OCI pour le profil AICréez des informations d'identification OCI que le profil AI utilise.
BEGIN DBMS_CLOUD.CREATE_CREDENTIAL( credential_name => 'OCI_CRED', user_ocid => 'USER_OCID', tenancy_ocid => 'TENANCY_OCID', private_key => '<private_key>', fingerprint => '<fingerprint>' ); END; / - Créer le profil AICréez un profil
DBMS_CLOUD_AIpour utiliser les informations d'identification nouvellement créées pour le modèle d'intégration.BEGIN DBMS_CLOUD_AI.CREATE_PROFILE( profile_name => 'GENAI', attributes => '{"provider":"oci","credential_name":"OCI_CRED","oci_compartment_id":"ocid1.compartment.oc1...","model":"meta.llama-3.1-405b-instruct"}' ); END; / - Créer l'index vectoriel
Créez l'index vectoriel où vous pointez l'attribut
locationvers l'URI SharePoint.BEGIN DBMS_CLOUD_AI.CREATE_VECTOR_INDEX( index_name => 'SUPPORT', attributes => '{ "vector_db_provider": "oracle", "location": "SharePoint://tenant_id=<tenant_id>/site_id=<site_id>/", "object_storage_credential_name": "SHAREPOINT_CRED", "profile_name": "GENAI", "vector_table_name": "test_SharePoint_table", "vector_distance_metric": "cosine", "vector_dimension": 1024, "chunk_overlap": 128, "chunk_size": 1024 }' ); END; /De cette façon, Autonomous AI Database transforme les fichiers stockés dans SharePoint en incorporations vectorielles pour les scénarios de recherche sémantique.