Comparaison de SGBD libres : langage, triggers, administration

CONSERVATOIRE NATIONAL DES ARTS ET MÉTIERS
CENTRE REGIONAL DE MONTPELLIER
Examen probatoire
du cycle ingénieur C.N.A.M.
Filière : Système de conduite
Présenté par Christophe CARPENA
Comparaison de SGBD libres :
langage, triggers, administration
Soutenu en Mai 2006
JURY
Président : M. Ranchin
Membres : M. Marc Nanard (Professeur principal)
Mme Ma
g
uelonne Teisseire
Comparaison des SGBD Libres.doc 2/49 CNAM 2005-2006
Remerciements
Je tiens à remercier le CNAM ainsi que l’ensemble des professeurs pour les connaissances
fort utiles qu’ils m’ont apportées et je regrette de n’avoir pas pu devenir un spécialiste de tous
ces domaines forts intéressants.
Un remerciement particulier à tous mes amis Jéjé, Béa, Grim et Ludivine, Vincent et Cathy
(Pardon à ceux que je n’ai pas cité) qui m’ont supporté dans tous les sens du terme. Je ne vous
parlerai plus de cours. Du moins, plus aussi souvent…
Le dernier remerciement, mais non le moindre, est pour ma douce étoile du nord Océane, sans
qui je n’en serais pas ou j’en suis aujourd’hui.
Comparaison des SGBD Libres.doc 3/49 CNAM 2005-2006
Table des matières
Introduction _______________________________________________________________4
1 Caractéristiques d'un SGBD ______________________________________________5
2 Les SGBD libres disponibles ______________________________________________7
2.1 Les SGBD les plus aboutis _________________________________________________ 7
2.2 Les SGBD en progression__________________________________________________ 9
2.3 Synthèse et Choix _______________________________________________________ 12
3 Le langage des SGBD : SQL _____________________________________________14
3.1 Normes et dialecte SQL __________________________________________________ 14
3.2 SQL-92, les différents niveaux_____________________________________________ 16
3.3 SQL-99 ________________________________________________________________ 22
4 Les déclencheurs ______________________________________________________27
4.1 Qu’est-ce qu’un déclencheur ______________________________________________ 27
4.2 Langage SQL/PSM ______________________________________________________ 28
4.3 Support de SQL/PSM____________________________________________________ 31
4.4 Interfaces avec les langages de programmation. ______________________________ 31
5 Administration ________________________________________________________34
5.1 Protection des données ___________________________________________________ 34
5.2 Optimisation ___________________________________________________________ 39
5.3 Gestion des sauvegardes / restaurations_____________________________________ 41
5.4 Tableau de synthèse _____________________________________________________ 42
Conclusion _______________________________________________________________43
Bibliographie _____________________________________________________________44
Glossaire _________________________________________________________________46
Comparaison des SGBD Libres.doc 4/49 CNAM 2005-2006
Introduction
« Range ta chambre ! »
Quel enfant n'a pas entendu de ses parents cette phrase synonyme de corvée à venir. En ce qui
concerne le rangement, l’informatique représente un avantage certain : il se fait de manière
automatisée. Que ce soit le logiciel de défragmentation qui range les bouts de fichiers en les
déplaçant sur le disque, ou les bases de données qui rangent les informations afin de pouvoir
aisément les retrouver, ces tâches s’exécutent de façon automatique, sans intervention
humaine à proprement parler.
L'évolution de l'informatique a toujours été rapide et impressionnante. Le domaine des bases
de données ne déroge pas à la règle. Au commencement, les fichiers à plat ont stocké les
informations, sans structure. Puis sont apparus, chronologiquement parlant, les bases de
données hiérarchiques présentant une structure arborescente où chaque enregistrement n'a
qu'un seul possesseur, les bases de données réseaux, lesquelles ont été en mesure de lever de
nombreuses difficultés du modèle précédent, les bases de données relationnelles utilisant des
principes de l’algèbre ensembliste et les bases de données orientées objet dont les
informations sont représentées sous forme d'objets. Chaque évolution a levé nombre de
limitations de la génération précédente et a ajouté toujours plus de fonctionnalités.
L’évolution des technologies des bases de données était nécessaire dans notre société de
l’information. En effet, il n’est pas rare d’avoir, aujourd’hui, des bases de données contenant
des gigaoctets d'informations. Certaines atteignent même plusieurs téraoctets alors que le
texte du roman Les trois Mousquetaires ne représente qu’environ 1,35 mégaoctets. Les bases
de données peuvent donc stocker l’équivalent de plusieurs millions de livres. On pourrait se
demander comment retrouver ces informations. Au vu de la taille et de leur nombre, il
semblerait facile à une information de se perdre, à une erreur de se glisser, à une personne
malintentionnée de la modifier à son avantage. La maintenance, le bon fonctionnement et la
sécurisation d’un tel système sont d’une grande difficulté. Les systèmes de gestion de base de
données doivent donc offrir des facilités pour l'exécution de ces tâches.
Nous verrons au cours de cet exposé comment les systèmes de gestion de base de données
(SGBD) libres répondent à ces problématiques. Dans un premier temps, nous répertorierons
les caractéristiques principales d’un SGBD et quels sont les SGBD libres disponibles
répondant à ces critères. Ensuite nous verrons comment les interroger, voir s’ils parlent tous le
même langage, et donc, voir si l’on peut s’adresser à eux de la même façon. Dans un
deuxième temps, nous analyserons comment, grâce aux déclencheurs (Trigger), nous
tenterons de maintenir l’intégrité d’une base et en faciliter l’administration. Pour terminer,
nous aborderons les éléments à considérer pour administrer une base (par exemple la
sauvegarde des informations ou encore, la gestion et la restriction des accès). Comment
empêcher un pirate d’entrer ?
Comparaison des SGBD Libres.doc 5/49 CNAM 2005-2006
1 Caractéristiques d'un SGBD
La fonction première d'un Système de Gestion de Base de Données (SGBD) est d'être un outil
de stockage d'informations offrant des fonctions simples de manipulation de grands volumes
de données. L’un des avantages de ces SGBD est que l'interrogation de ces informations
s’effectue d’une manière indépendante de l'architecture physique de stockage. Les SGBD
garantissent la cohérence de ces données en cas de mise à jour simultanée par plusieurs
utilisateurs. Les transactions assurent l'intégrité des données en cas d'opérations incorrectes
réalisées par un programme ou un utilisateur. Les données stockées dans un SGBD sont dites
persistantes, leur fiabilité et leur récupération en cas de panne matérielle ou logicielle doit être
toujours possible. De plus, le SGBD doit assurer la confidentialité des données en cas d'accès
malveillant ou accidentel.
Les fonctionnalités essentielles d'un SGBD sont donc les suivantes :
¾ Le système doit assurer la persistance des données.
Lorsqu’une transaction (ensemble de requêtes) est validée, les données doivent être
persistantes, c'est à dire qu'elles doivent être enregistrées de manière permanente.
¾ Le système doit assurer la fiabilité des données.
Une transaction doit être atomique, autrement dit, soit exécutée complètement, soit pas
du tout. Des mécanismes de reprise sur panne doivent être présents. La panne d'une
mémoire ou d'un disque ne doit pas endommager les données.
¾ Le système doit offrir la possibilité à plusieurs utilisateurs de manipuler les données
concurremment.
Il doit au minimum assurer la sérialisation des transactions. La sérialisation des
transactions est l'exécution en parallèle d’un ensemble de transactions, produisant le
même résultat que si elles étaient exécutées en série.
¾ Le système doit offrir la possibilité à l'utilisateur d'interroger la base de façon simple.
Le langage de requête SQL a été crée dans le but d'interroger, de manière relativement
simple, les bases de données. Il peut tout de même être remplacé, pour le néophyte,
par une interface graphique.
1 / 49 100%
Study collections
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !