12.07.2015 Views

Les bases de données XML libres - FIL

Les bases de données XML libres - FIL

Les bases de données XML libres - FIL

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>XML</strong> et Bases <strong>de</strong> données.<strong>Les</strong> <strong>bases</strong> <strong>de</strong> données<strong>XML</strong> natives.G. Defrain - 19/06/2008


Qu'est ce que le <strong>XML</strong> Natif.


Qu'est ce que le <strong>XML</strong> Natif.Document orienté données ou orienté document.● Orienté données : documents qui utilisent le <strong>XML</strong> commevecteur <strong>de</strong> données. Ils sont conçus pour être exploités par unemachine et le fait que <strong>XML</strong> soit utilisé est généralementaccessoire.● Orienté document : documents conçus pour être utilisés par<strong>de</strong>s humains. Ils sont ordinairement écrits manuellement en <strong>XML</strong>ou sous d’autres formats tels que RTF, PDF ou SGML, puis ilssont convertis en <strong>XML</strong>.G. Defrain - 19/06/2008


Qu'est ce que le <strong>XML</strong> Natif.Pourquoi le <strong>XML</strong> natif ?●Besoin <strong>de</strong> plus <strong>de</strong> fonctionnalités.●Pour stocker <strong>de</strong>s contenus plutôt orientés documents.● Pour stocker <strong>de</strong>s documents dont le format naturel est<strong>XML</strong> (sans avoir besoin d'en connaitre le schéma).G. Defrain - 19/06/2008


Qu'est ce que le <strong>XML</strong> Natif.Caractéristiques <strong>de</strong>s BDD <strong>XML</strong> Natives.●<strong>Les</strong> collections <strong>de</strong> document:- une collection équivaut à une table dans un systèmerelationnel ou à un dossier dans un système <strong>de</strong> fichiers.- possibilité d'imbriquer les collections.G. Defrain - 19/06/2008


Qu'est ce que le <strong>XML</strong> Natif.Caractéristiques <strong>de</strong>s BDD <strong>XML</strong> Natives.●<strong>Les</strong> langages <strong>de</strong> requêtes:- indispensable pour toutes les base <strong>de</strong> données.- langage utilisé : XQuery, XPath, XQL ou langagepropriétaire.G. Defrain - 19/06/2008


Qu'est ce que le <strong>XML</strong> Natif.Caractéristiques <strong>de</strong>s BDD <strong>XML</strong> Natives.●<strong>Les</strong> mises à jour et effacements:- gran<strong>de</strong> diversité <strong>de</strong> stratégie pour les réaliser en fonction<strong>de</strong>s <strong>bases</strong>.- chaque produit possè<strong>de</strong> son langage.- consensus vers XUpdate du <strong>XML</strong>:DB Initiative.G. Defrain - 19/06/2008


Qu'est ce que le <strong>XML</strong> Natif.Caractéristiques <strong>de</strong>s BDD <strong>XML</strong> Natives.●Transaction, verrouillage et accès concurentiel:- la plupart <strong>de</strong>s <strong>bases</strong> <strong>de</strong> données supportent lestransactions (commit + rollback).- problème <strong>de</strong> verrouillage qui se fait généralement audocument.G. Defrain - 19/06/2008


Qu'est ce que le <strong>XML</strong> Natif.Caractéristiques <strong>de</strong>s BDD <strong>XML</strong> Natives.●<strong>Les</strong> API:- très utiles notamment pour les contenus orientés données.- prennent la forme d'interface semblable à JDBC.- API <strong>XML</strong>:DB indépendante <strong>de</strong>s fournisseurs <strong>de</strong>vraient sedévelopper dans les années à venir.G. Defrain - 19/06/2008


Qu'est ce que le <strong>XML</strong> Natif.Caractéristiques <strong>de</strong>s BDD <strong>XML</strong> Natives.●L'aller retour <strong>de</strong> documents (Round-Tripping):- possibilité <strong>de</strong> récupérer le « même » document que l'on astocké dans la base.- récupération <strong>de</strong> l'ordre <strong>de</strong>s éléments, <strong>de</strong>s commentaires,<strong>de</strong>s sections CDATA.G. Defrain - 19/06/2008


Qu'est ce que le <strong>XML</strong> Natif.Caractéristiques <strong>de</strong>s BDD <strong>XML</strong> Natives.●<strong>Les</strong> in<strong>de</strong>x:- in<strong>de</strong>xation <strong>de</strong>s éléments et attributs pour accélérer lesrecherches.in<strong>de</strong>x.- suivant les <strong>bases</strong>, possibilité <strong>de</strong> donner <strong>de</strong>s priorités auxG. Defrain - 19/06/2008


Exemple <strong>de</strong> BDD <strong>XML</strong> Natives.


Exemple <strong>de</strong> BDD <strong>XML</strong> Natives.eXist.●●Langage <strong>de</strong> requête : supporte XQuery et Xpath.API : possibilité d'utiliser l'API <strong>XML</strong> DB.● In<strong>de</strong>xation : in<strong>de</strong>x tout les éléments mais peut être configuréassez finement.G. Defrain - 19/06/2008


Exemple <strong>de</strong> BDD <strong>XML</strong> Natives.eXist.●Permet les accès multi-utilisateurs mais pas les transactions.● S'intègre facilement à un environnement JAVA mais peutfonctionner avec beaucoup <strong>de</strong> langage.●●●Gestion du langage <strong>de</strong> mise à jour XUpdate.Possibilité d'utiliser XPointer et Xinclu<strong>de</strong>.Très bien documenté.G. Defrain - 19/06/2008


Exemple <strong>de</strong> BDD <strong>XML</strong> Natives.XIndice.● Langage <strong>de</strong> requête : Xpath mais permet <strong>de</strong> faire <strong>de</strong>s requêtesmulti-documents.●API : possibilité d'utiliser l'API <strong>XML</strong> DB.● In<strong>de</strong>xation : in<strong>de</strong>x tout les éléments et permet <strong>de</strong> faire <strong>de</strong> lacompression <strong>de</strong> données.●●Gestion du langage <strong>de</strong> mise à jour XUpdate.Possibilité d'utiliser XLink.G. Defrain - 19/06/2008


Langage utilisé par les BDD <strong>XML</strong>.


Langage utilisé par les BDD <strong>XML</strong>.XUpdate.●Langage <strong>de</strong> mise-à-jour déclarative.● Le programme <strong>de</strong> mise-à-jour est un document <strong>XML</strong>.● Un programme <strong>de</strong> mise-à-jour est un élément <strong>de</strong> typemodifications qui contient une séquence d’ordres <strong>de</strong>mise-à-jour.G. Defrain - 19/06/2008


Langage utilisé par les BDD <strong>XML</strong>.XUpdate● Document d'origine :Andreas LauxLeipzigG. Defrain - 19/06/2008


Langage utilisé par les BDD <strong>XML</strong>XUpdatefullnameGermanyG. Defrain - 19/06/2008


Langage utilisé par les BDD <strong>XML</strong>XUpdate● Document résultat :Andreas LauxLeipzigGermanyG. Defrain - 19/06/2008


Langage utilisé par les BDD <strong>XML</strong>XUpdateLars MartinG. Defrain - 19/06/2008


Langage utilisé par les BDD <strong>XML</strong>XUpdate● Document résultat :Andreas LauxLeipzigGermanyLars MartinLeipzigG. Defrain - 19/06/2008


Langage utilisé par les BDD <strong>XML</strong>XLink - XPointer.●●Permettent la définition <strong>de</strong> lien dans les fichiers <strong>XML</strong>.N'importe quel élément <strong>XML</strong> peut <strong>de</strong>venir un lien.● <strong>Les</strong> liens peuvent relier plus <strong>de</strong> <strong>de</strong>ux ressources, être bidirectionnels,multi-directionnels et externes aux documents liés.G. Defrain - 19/06/2008


Langage utilisé par les BDD <strong>XML</strong>XPointer.●Permet <strong>de</strong> définir <strong>de</strong>s liens internes à l'application.● Pas besoin <strong>de</strong> créer d'ancre l'id d'un élément suffit .● Permet <strong>de</strong> lier vers <strong>de</strong>s éléments résutats d'une requêteXPath.G. Defrain - 19/06/2008


Langage utilisé par les BDD <strong>XML</strong>XLink.●Permet <strong>de</strong> définir <strong>de</strong>s liens externes à l'application.● Une série d'attributs <strong>de</strong> type xlink: permet <strong>de</strong> définir lecomportement.G. Defrain - 19/06/2008


Langage utilisé par les BDD <strong>XML</strong>XLink.Le calendrier <strong>de</strong> la formation est disponible.G. Defrain - 19/06/2008


Langage utilisé par les BDD <strong>XML</strong>XInclu<strong>de</strong>.●Permet d'inclure un fichier <strong>XML</strong> dans un autre.● Il est possible d'inclure uniquement une partie du document<strong>XML</strong> en utilisant XPointer.G. Defrain - 19/06/2008

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!