1. Stockage des documents XML
Pour revendiquer la compatibilité XML, un SGBD doit permettre de stocker le contenu de documents XML. Deux grandes techniques peuvent être mises en oeuvre : la gestion d’un type de données ” natif XML ” et le stockage fragmenté d’un document après ventilation de son contenu (mapping) au sein de différentes tables relationnelles de la base. Ces deux techniques peuvent par ailleurs être combinées ce qui accroît très sensiblement la souplesse du SGBD.
Les résultats | ||||
Produit | Commentaires | Note (sur cinq) | ||
Software AG Tamino XML Database | Stockage natif XML, sous forme d’arbre dont les n?”uds sont des balises XML. Stockage de données multimédias. Liaison possible avec des données de bases relationnelles. | 5 | ||
IBM DB2 Universal Database | Existence du type de données natif XML. 3 formats de stockage : Clob, fichier externe, chaîne de caractères. Mapping simplifié grâce à l’usage de la DTD associée au document et à un outil graphique. Usage des Blob possible. | 4 | ||
Oracle Oracle9i XML Developer Kit | Existence du type de données natif XML. 2 formats de stockage : Clob et fichier externe. Le mapping est facilité par l’orientation objet de Oracle9i. Usage des Blob possible. | 3 | ||
Microsoft SQL Server | Ne dispose pas du type de données natif XML. Deux solutions : le mapping manuel des structures des documents à stocker ou l’utilisation de Blob pour un stockage aveugle des données. | 1 | ||
2. Résultats de requêtes en XML
Récupérer le résultat d’une requête sous forme de document XML est utile, par exemple, pour afficher le contenu d’une base de données à l’aide d’une feuille de style XSL. Pour les SGBD nativement XML, la fonction est triviale. Il n’en va pas de même pour les SGBDR, même lorsqu’ils disposent d’un type de données XML. Une même table peut en effet combiner données XML et types traditionnels. Certains SGBD offrent une extension du langage de requête qui demande au moteur de fournir un document XML comme résultat du traitement de la requête. Les balises XML contenues dans ce document correspondent généralement au schéma de la base de données.
Les résultats | ||||
Produit | Commentaires | Note (sur cinq) | ||
Software AG Tamino XML Database | Système nativement XML. Utilisation du langage de requête XQL qui intègre XPath. | 5 | ||
Oracle Oracle9i XML Developer Kit | Résultat d’une requête sous forme de document XML bien formé (au format XMLType). Manipulation des données XML au sein des requêtes. Agrégation des résultats intermédiaires sous forme de documents XML bien formés. Génération automatique de la DTD (interne ou externe) associée au document XML. | 5 | ||
IBM DB2 Universal Database | Fonctions globalement équivalentes à l’offre d’Oracle. Leur mise en ?”uvre réclame un effort supplémentaire au développeur (habillage des documents, par exemple). Possibilité d’agrégation de données de sources diverses (DB2, Oracle9i, IMS). | 4 | ||
Microsoft SQL Server | Directive spécifique FOR XML permettant de construire des documents XML bien formé. Des balises spécifiques sont utilisées pour séparer chaque enregistrement. | 2 | ||
3. Manipulation des données XML
Quelle que soit la technique de stockage mise en ?”uvre (type natif XML ou mapping des contenus), un SGBD compatible XML doit fournir des possibilités de manipulation et de mise à jour des données au format XML. Il convient de pouvoir effectuer des recherches portant sur des sous-structures de documents, de procéder à des mises à jour fragmentaires, de comparer des documents ou des morceaux de documents… Le tout depuis un programme client ou au sein même du SGBD. La performance des SGBD compatibles XML mérite également d’être étudiée de près. En particulier, il faut pouvoir créer des index portant sur des éléments XML spécifiques destinés à accroître la performance des recherches de documents XML, voire de données au sein d’un même document.
Les résultats | ||||
Produit | Commentaires | Note (sur cinq) | ||
Software AG Tamino XML Database | Le langage de requête XQL et la mise en ?”uvre de XPath (sans restriction) permettent les recherches complexes, les mises à jour parcellaires, les comparaisons de structures… Une version bêta de XMLQuery (dénommé QuiP) est disponible gratuitement | 5 | ||
Oracle Oracle9i XML Developer Kit | Très nombreuses possibilités de recherche sélective sur des données au format XML : extraction de valeurs textuelles ou numériques, recherche de balises. Possibilité d’utiliser les fonctions de manipulation de textes : Contains()… Création d’index sur le contenu ou la structure des documents. Pas de mise à jour fragmentaire des documents ni de comparaison de structures (sans programmation dans ce dernier cas). | 4 | ||
IBM DB2 Universal Database | Idem. | 4 | ||
Microsoft SQL Server | N’ayant pas de type de données natives XML, SQL Server ne propose aucune fonction de manipulation de documents XML. | NA | ||
4. Intégration avec les fonctions des bases de données standards
Les SGBD proposent des fonctions internes qui permettent d’automatiser certains traitements, de garantir l’intégrité fonctionnelle des données ou de simplifier grandement la tâche des développeurs d’applications. Parmi ces fonctions, on trouve habituellement les procédures stockées, les déclencheurs, les clauses déclaratives d’intégrité fonctionnelle… Ces fonctions doivent être également accessibles pour les traitements de données XML.
Les résultats | ||||
Produit | Commentaires | Note (sur cinq) | ||
Oracle Oracle9i XML Developer Kit | Mise en ?”uvre des clauses d’intégrité référentielle déclarative, des procédures stockées et des triggers. Les limites dans la manipulation des données dans le moteur sont les mêmes que depuis un programme client. | 5 | ||
IBM DB2 Universal Database | Même commentaire que celui d’Oracle | 5 | ||
Software AG Tamino XML Database | Mise en ?”uvre de procédures stockées et de triggers. Il est même possible de déclencher l’appel automatique de n’importe quel code exécutable. Ces fonctions sont naturellement limitées aux types de données mis en ?”uvre par le logiciel : XML et multimédia. | 3 | ||
Microsoft SQL Server | Ne dispose pas du type de données XML. | NA | ||
5. Intégration avec les outils de développement d’applications
Les éditeurs de SGBD compatibles XML disposent souvent d’outils de développement d’applications. L’intégration de capacités de stockage et de manipulation des documents XML au sein de ces outils mérite d’être regardée de près avant de choisir un SGBD et éventuellement les outils associés. En particulier la réalisation d’import/export de données XML avec des applications écrites en C, C++, Java…
Les résultats | ||||
Produit | Commentaires | Note (sur cinq) | ||
Software AG Tamino XML Database | Intégration (grâce aux standards respectés, XML, ODBC, J2EE, etc.) avec de nombreux serveurs d’applications et outils de développement. Boléro, le L4G maison, est plutôt recommandé pour les nouveaux développements sans intégration avec un existant. | 3 | ||
Oracle Oracle9i XML Developer Kit | Bonne intégration des possibilités XML d’Oracle9i au sein de la suite JDeveloper. Éditeur syntaxique de documents XML capable de prendre en compte une DTD ou un schéma XML. Import/export simple depuis une application Java ou C++. | 3 | ||
IBM DB2 Universal Database | Bonne prise en compte des extensions XML de DB2 au sein de WebSphere. Toutes les fonctions XML de DB2 sont accessibles par JavaBeans. | 2 | ||
Microsoft SQL Server | La suite Visual Studio offre plusieurs fonctions pratiques pour les développeurs d’applications manipulant des flux XML. VisualStudio.net (actuellement en bêtatest) intègre même de très puissantes fonctions de manipulation des structures de données. Enfin, la compatibilité de Visual Studio avec OLE-DB facilite l’intégration avec les offres SGBD concurrentes. | 2 | ||
🔴 Pour ne manquer aucune actualité de 01net, suivez-nous sur Google Actualités et WhatsApp.