Précédent   Forum des professionnels en informatique > Bases de données > Décisions SGBD
Décisions SGBD Forum de décisions sur le choix en bases de données. Le Comparatif
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 08/04/2005, 15h00   #1
Invité régulier
 
Inscription : avril 2005
Messages : 33
Détails du profil
Informations forums :
Inscription : avril 2005
Messages : 33
Points : 7
Points : 7
Par défaut Modélisation d'un arbre dans une base de données

Bonjour,

Je suis à la recherhce d'une solution pour modéliser un arbre dans une base de données relationnelle.

J'ai vu l'article de SqlPro concernant la modélisation intervallaire et je le trouve très intéressant.

Cette modélisation est extrêment intéressante parce qu'elle propose d'effectuer la consultation des données en une seule requête.

Par contre l'ajout et la suppression de données nécessite deux requêtes d'update.

L'arbre que j'ai à modéliser est assez important et profond.

Avez vous d'autres modélisations à me proposer ?
J'ai le choix entre Oracle et Ms SQL Serveur, que me conseillez vous ?

Merci

Charles
compu est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/04/2005, 18h29   #2
Rédacteur/Modérateur

 
Avatar de SQLpro
 
Homme Frédéric BROUARD
Expert SGBDR & SQL
Inscription : mai 2002
Messages : 10 959
Détails du profil
Informations personnelles :
Nom : Homme Frédéric BROUARD
Localisation : France

Informations professionnelles :
Activité : Expert SGBDR & SQL
Secteur : Conseil

Informations forums :
Inscription : mai 2002
Messages : 10 959
Points : 17 793
Points : 17 793
La modélisation intervallaire est ce qu'il y a de plus performant. J'ai écrit cet article à la suite d'une refonte d'un SGBDR dont une des tables était un arbre modélisé en auto référence avec 7 niveaux max et plusieurs millions de ligne. Les temps de requête étaient en moyenne de 1 à 2 heures. Ils sont passés à quelques secondes...

En revanche la norme SQL:1999 fournit un nouvel outil pour gérer des requêtes récursives WITH RECURSIVE. Cependant les performances sont aussi mauvaises que dans le cas de l'auto référence.

MS SQL Server version 2005 intégre ce nouvel outil normatif, ce qui n'est pas le cas d'Oracle. En effet, Oracle implémente depuis plusieurs années un mécanisme bien à lui pour de telles requêtes avec CONNECT BY et PRIOR. Cepandant ce syntaxe à été rejeté par le comité de normalisation SQL parce qu'il présentait des défauts majeurs. Mais les mécanismes sont les mêmes.

Pour une explication sur la récursivité sous SQL:1999 et SQL server, attends quelques jours, je suis sur le point de publier un article aux US sur le sujet dans http://www.sqlservercentral.com/. Dans 2 mois il sera disponible en version française sur SQLpro.

A +
__________________
Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
Site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
Blog SQL, SQL Server, modélisation données : http://blog.developpez.com/sqlpro
http://www.sqlspot.com : modélisation, conseils, audit, optimisation, formation
* * * * * Enseignant CNAM PACA - ISEN Toulon - CESI Aix en Provence * * * * *
SQLpro est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 09h59.


 
 
 
 
Partenaires

Hébergement Web