Comparatif SGBD - Accueil SI SCO

publicité
Projet, Base de Données
Département de Génie Industriel
SI SCO
3ème année « Génie Industriel»
Année Universitaire 2002 / 2003
COMPARATIF SGBD:
MySQL - ORACLE – PostgreSQL
SOMMAIRE
I.
Règles de Comparaison ..................................................................................................2
II. MySQL ...........................................................................................................................3
1.
Respect des grands principes des SGBD ....................................................................3
2.
Performances ..............................................................................................................3
3.
Coût ............................................................................................................................3
III. Oracle..............................................................................................................................4
4.
Respect des grands principes des SGBD ....................................................................4
5.
Performances ..............................................................................................................4
6.
Coût ............................................................................................................................4
IV. PostgreSQL.....................................................................................................................5
7.
Respect des grands principes des SGBD ....................................................................5
8.
Performances ..............................................................................................................5
V.
Conclusion ......................................................................................................................8
SI SCO
Comparatif SGBD
Version 2
16/12/2002
LC, LG
Page 1 sur 8
Une fois le cahier des charges réalisé et les caractéristiques de notre base de données
bien ciblées, il nous reste à définir le logiciel de création de la base de données avant de
passer à l’implémentation du système.
Nos connaissances sur les bases de données nous a tournés très clairement vers un
combat entre trois logiciels très puissants : MySQL, qui est un choix de base de données
relationnelle, Oracle, qui s’apparente davantage à un logiciel de création de base de données
orientées objet et PostgreSQL qui apparaît comme une solution intermédiaire relationnelleobjet.
Le but de ce comparatif est de lister les principales caractéristiques des trois logiciels
afin de choisir le logiciel qui nous servira de support pour la création de la base de données
SISCO.
I. Règles de Comparaison
Nous allons essayer d’argumenter un choix entre MySQL, Oracle et PostgreSQL,
sachant que les critères essentiels attendus pour un SGBD sont :
Respecter les grands principes des SGBD : langage SQL standard, sécurité des
données/confidentialité.
Les performances : le temps de réponse aux requêtes doit être « acceptable ».
Coût du produit et licence associée.
SI SCO
Comparatif SGBD
Version 2
16/12/2002
LC, LG
Page 2 sur 8
II. MySQL
1. Respect des grands principes des SGBD
SQL Standard ! Non
Le langage SQL est incomplet et non standard. Entre autres :
. Pas de requêtes imbriquées.
. Pas de vue.
. Pas de gestion de l’intégrité référentielle (foreign key, …).
. Les déclencheurs, les procédures, les fonctions n’existent pas.
. Absence des opérateurs ensemblistes (union, ...).
Les outils d’utilisation de MySQL sont relativement dispersés et de nombreux logiciels (tous
accessibles librement sur internet) sont nécessaires.
Sécurité des données, confidentialité
D’après la documentation un système de fichier de log existe, mais doit être géré
complètement à la main par l’administrateur (déclenchement et sauvegarde). Un utilitaire «
mysqldump » permet de sauvegarder la base périodiquement, c’est à l’administrateur de le
gérer (création d’un fichier de type texte contenant les ordres sql de création de la base et de
chargement des données). La gestion des utilisateurs se fait de façon traditionnelle via le
langage SQL, incluant la notion de « host » pour gérer les accès clients, locaux et distants.
2. Performances
D’après la littérature, les performances de MySQL sont bonnes, sachant qu’il s’agit
principalement d’application de consultation de données. La pose judicieuse d’index sur les
attributs d’une table est importante. Penser à utiliser régulièrement l’utilitaire « myisamchk »
pour recompacter les données dans les fichiers physiques de la base, surtout suite à une grosse
mise à jour.
On peut également noté que les bases de données MySQL sont assez peu évolutives et
que MySQL s’adresse davantage à des bases de données simples.
Pour l’interfaçage et la création de sites web, PhpMyAdmin permet une gestion de
MySQL via le langage Php. Une formation sera donc nécessaire pour le gérant de la base de
données.
Concernant l’utilisation future du logiciel, un seul utilisateur est possible en mise à
jour (ce qui pourrait engendrer des problèmes d’organisation pour la scolarité), et cette
application est uniquement une application de consultation (essentiellement génération de
pages web dynamiques). De plus la prise en main des logiciels n’est pas évidente.
Enfin il faut remarquer le manque de compatibilité avec le logiciel Apogé.
3. Coût
MySQL est un logiciel libre, il n’y a donc aucun problème de licence utilisateur. A
noter également qu’il est possible de trouver bon no mbre de manuels, didacticiels et autres
aides en ligne via l’internet.
SI SCO
Comparatif SGBD
Version 2
16/12/2002
LC, LG
Page 3 sur 8
III. Oracle
4. Respect des grands principes des SGBD
SQL Standard !
Les standards SQL sont dans l’ensemble assurés. Malgré tout l’apport d’un logiciel tel Oracle
trouve toute son importance dans la création de bases de données orientées objet (également
via UML) et semble quelque peu surdimensionnée par rapport à l’utilisation qu’il en serait
faite.
Sécurité des données, confidentialité
Au niveau de l’administration, ORACLE est complexe et nécessite une formation minimum
d’une semaine pour un futur administrateur (cours DBA). En contre partie cela permet une
gestion pointue de l’organisation physique de la base et des droits d’accès des utilisateurs.
5. Performances
Oracle s’adresse aux bases de données complexes, avec des données sensibles, ne
supportant pas la perte de données suite à un crash machine et restauration de la base,
nombreux utilisateurs en mise à jour simultanée.
Oracle est également très performant concernant la gestion des utilisateurs connectés,
les temps d’accès... en revanche une si grande performance entraîne forcément une importante
complexité de mise en oeuvre et d’installation. Il apparaît ainsi la nécessité d’un gérant à part
entière de la base de données future (avec une formation adéquate). En outre, le temps
nécessaire à l’installation, sa complexité et le manque de formation sous Oracle que nous
avons suivi exigerait l’appel à une société de service extérieure à l’école afin d’en réaliser
l’intégration (d’où un coût important).
L’avantage de Oracle est une compatibilité totale avec Apogée.
6. Coût
C’est là le plus gros défaut d’Oracle. Il s’agit sans nul doute du meilleur SGBD mais le prix
peut s’avérer rédhibitoire, car s’élève à environ 100 000 Euros rien que pour la licence, à cette
somme doit être ajoutés les différents frais d’installation et de formation sur le système.
SI SCO
Comparatif SGBD
Version 2
16/12/2002
LC, LG
Page 4 sur 8
IV. PostgreSQL
7. Respect des grands principes des SGBD
SQL Standard !
PostrgeSQL honore quasiment toutes les constructions SQL ( y compris le s sous-requêtes, les
transactions, les fonctions, les types définis par l’utilisateur, les contraintes, les déclencheurs).
Il se place dans la catégorie des SGBD relationne -objet par des notions de classe et d’héritage
et est utilisable par de nombreux langages tels que Java, C/C++, Perl, Tcl, Python, PHP.
Sécurité des données, confidentialité
Un mécanisme de Write Ahead Log permet de maintenir la base dans un état cohérent.
La sauvegarde automatique de la base est possible périodiquement par un utilitaire intégré.
La gestion des utilisateurs se fait de façon traditionnelle à l’exception près que les mots de
passe utilisateurs se retrouvent en clair dans une table du catalogue système.
La notion de « groupes » est également appliquée.
8. Performances
Les p erformances de PostgreSQL sont analogues à celles de MySQL, les temps de réponse
sont corrects.Un utilitaire permettant d’optimiser les requêtes après un grand nombre de mises
à jour est disponible, ce dernier permet également de compacter les différentes données de la
base.
Comme il a été dit précédemment, l’interface avec la base de données elle -même peut se faire
grâce à plusieurs langages : Java, C/C++, PHP ce qui multiplie les possibilités offertes et
l’adaptabilité du SGBD sur de nombreux supports.
L’installation de PostgreSQL et la création d’une base se fait très rapidement et sans réelle
difficulté grâce aux documentations libres de droit que l’on peut se procurer facilement.
En revanche une faiblesse est à noter
: La gestion de l’espace disque qui
est loin d’être
optimale.
Un même serveur PostgreSQL peut gérer plusieurs bases de données.
Taille Maximum d’une base : Pas de limite
Taille Maximum d’une table : 64 Tera Octets sur tout OS
Taille Maximum d’un attribut : 1 Go
Nombre de colonnes dans une table : 1600
Nombre max d’index dans une table : Pas de limite
SI SCO
Comparatif SGBD
Version 2
16/12/2002
LC, LG
Page 5 sur 8
Graphiques de performances :
Ci après quelques graphiques mettant en avant les performances comparées d’Oracle et de
MySQL :
SI SCO
Comparatif SGBD
Version 2
16/12/2002
LC, LG
Page 6 sur 8
SI SCO
Comparatif SGBD
Version 2
16/12/2002
LC, LG
Page 7 sur 8
V. Conclusion
ORACLE : Bases de données complexes, avec des données sensibles, ne supportant pas la
perte de données suite à un crash machine et restauration de la base, nombreux utilisateurs en
mise à jour simultanée.
De plus il est à prendre en compte le problème du coût des licences et une formation est
indispensable pour les DBA.
MYSQL : Bases de données simples, un seul utilisateur en mise à jour, uniquement
application de consultation (essentiellement génération de pages web dynamiques). Le coût
est zéro et pas besoin de formation spécifique.
PostgreSQL : Solution « Hybride » de par son approche relationnelle et objet. Ce système
apparaît également comme un bon compromis entre les versions de MySQL, libre mais
incomplète, et Oracle, complète, puissante mais très coûteuses.
Supporte une perte de données suite à un crash machine.
SI SCO
Comparatif SGBD
Version 2
16/12/2002
LC, LG
Page 8 sur 8
Téléchargement