Aubin Jérôme
Gagnon Jean-Michel
Rapport de recherche
Performance d’Oracle et de MySQL
en fonction de leur
architecture fonctionnelle
Travail présenté à
Mme Sylvie Monjal
Nouvelles technologies
420-620-SF
10 février 2005
Département d’informatique
Cégep de Ste-Foy
Tables des matières
Introduction .............................................................................................................................. 1
Début de MySQL ...................................................................................................................... 3
Architecture de MySQL .......................................................................................................... 3
Les fichiers ............................................................................................................................. 3
Les processus .......................................................................................................................... 4
La mémoire ............................................................................................................................ 5
Les influences de l’architecture .............................................................................................. 5
L’exécution d’une requête ...................................................................................................... 5
Indexage : Pourquoi utiliser ce principe ................................................................................. 6
Comment MySQL utilise les index ........................................................................................ 6
Verrouillage .............................................................................................................................. 7
Le fonctionnement du verrouillage ........................................................................................ 7
Les inconvénients du verrouillage de MySQL ....................................................................... 8
Début d’Oracle ......................................................................................................................... 9
Architecture d’Oracle ............................................................................................................ 10
Les fichiers ........................................................................................................................... 10
La mémoire .......................................................................................................................... 11
Les processus ........................................................................................................................ 12
Les influences de l’architecture ............................................................................................ 13
Requêtes de consultation ...................................................................................................... 13
Requête de mise à jour ......................................................................................................... 13
Gestion de la mémoire SGA ................................................................................................. 14
Verrouillage .......................................................................................................................... 15
Prototype ................................................................................................................................. 16
Description et but du prototype ............................................................................................ 16
Difficultés rencontrées ......................................................................................................... 16
Evaluation du prototype ....................................................................................................... 17
Résultat de différentes requêtes ........................................................................................ 17
Intégrité physique des données ........................................................................................ 18
Conclusion du prototype .................................................................................................. 19
Comparaison MySQL et Oracle ........................................................................................... 20
Annexe A : Glossaire .............................................................................................................. 23
Annexe B : Algorithme de verrouillage ................................................................................ 25
Algorithme de déverrouillage ............................................................................................... 25
Annexe C : Bibliographie ...................................................................................................... 26
Oracle ................................................................................................................................... 26
MySQL ................................................................................................................................. 26
Annexe D : Médiagraphie ...................................................................................................... 27
Rapport de recherche
Performance d’Oracle et de MySQL en fonction de leur architecture fonctionnelle Page 1
Introduction
Les systèmes de gestion de bases de données sont utilisés partout. Nous les retrouvons dans
les instituts bancaires, les systèmes de réservations de salles, les systèmes hospitaliers, au
gouvernement et dans plusieurs autres institutions. Plusieurs transactions sont faites en même
temps dans plusieurs bases de données partout à travers le monde et une gestion très délicate
des données doit être mise en place pour qu’elles ne soient pas corrompues.
Puisque l'utilisation de systèmes de gestion de bases de données par plusieurs utilisateurs en
même temps est très fréquente et que c’est le principal objectif ceux-ci, nous nous sommes
tournés vers la performance des SGBDs en fonction de leur architecture. C’est à dire quelle
est l’architecture de traitement optimale des données. Bien entendu, nous allons parler du
traitement des données simples, mais aussi de la concurrence de deux utilisateurs sur une
même base de données. Les architectures évaluées seront MySQL et Oracle.
Les points importants de notre recherche seront d’expliquer la structure de traitement des
données de chacun des SGBDs. C’est-à-dire comment MySQL et Oracle gèrent les requêtes,
la mémoire et les fichiers. Cela influence directement la rapidité d'exécution de requête de
consultation et de mise à jour. Nous allons de même vous identifier les méthodes utilisées
pour conserver l’intégrité physique des données.
Nous aimerions, par cette recherche, identifier quel SGBD répond le mieux aux besoins des
programmeurs avancés qui recherchent toujours une performance plus accrue en terme de
technologie. Bien entendu, les SGBD n’arrête pas d'évoluer et la guerre entre MySQL et
Oracle est loin d’être finie. Pour l’instant, ces technologies peuvent être mises à l’épreuve sur
leur architecture et c’est ce que nous avons fait. Est-ce que MySQL, ce SGBD téléchargeable
gratuitement sur l'Internet, l’emportera sur le SGBD d’une grande firme très compétitive ?
Est-ce que le petit David l'emportera sur l'impressionnant Goliath ? C'est ce que nous allons
tenter de découvrir dans cette recherche.
Nous n’évaluerons pas les deux SGBDs sur les coûts d’acquisition, les coûts d’entretien et la
simplicité d’utilisation. La performance en fonction d’une plate forme d’utilisation ne sera pas
non plus évaluée (exemple : PHP pour MySQL). Pour MySQL nous n’évaluerons que la
structure de table MyISAM. Pour Oracle, la liaison entre la structure logique et la structure
Rapport de recherche
Performance d’Oracle et de MySQL en fonction de leur architecture fonctionnelle Page 2
physique est très complexe. Nous n'en avons pas tenu compte puisque ce n'était pas nécessaire
pour notre recherche.
Pour effectuer notre recherche, nous avons établit la problématique. Cette problématique est
la difficulté de choisir un système de gestion de base de données qui répond le plus à nos
besoins en terme de performance. Nos objectifs étaient de trouver les points, pour chacun des
SGBDs, qui influencent leur performance. Nous avons donc comparé MySQL à Oracle sur
leur architecture fonctionnelle. Nous voulions réaliser un prototype permettant de vérifier la
performance de ces deux SGBDs. Nous verrons dans la section du prototype pourquoi il n’a
pas été possible de le réaliser comme nous le voulions. Nous avons, par la suite, analyles
sources d’informations obtenues pour en sortir des conclusions face à la performance. La
partie de recherche sur MySQL se base essentiellement sur les informations fournies sur le
site officiel de MySQL. Celle d’Oracle se base principalement sur une présentation de
maîtrise de Michèle Raphalen.
Nous allons donner des informations techniques sur chacune des deux SGBDs. Nous
parlerons de leur historique, décrirons leur architecture générale et expliquerons comment ils
font pour gérer les requêtes et assurer l’intégrité des données. Ensuite, nous allons faire le
comparatif des deux SGBDs par rapport à leur architecture et aux performances liées à celle-
ci. Nous montrerons les résultats de tests effectués sur un prototype testant différentes
fonctionnalités de MySQL.
Rapport de recherche
Performance d’Oracle et de MySQL en fonction de leur architecture fonctionnelle Page 3
Début de MySQL
MySQL AB, une société fondée en Suède par deux suédois et un
finlandais, David Axmark, Allan Larsson et Michael "Monty"
Widenius, est la société fondatrice de MySQL. Cette société, qui a
été fondée en 1980, est une organisation virtuelle dont les employés
sont répartis à travers le globe.
Au tout début, un groupe d’utilisateurs
voulait se connecter à leurs tables en utilisant
mSQL. Étant un peu déçu de la flexibilité et
de la rapidité de ce programme, ils ont donc
décidé de créer leur propre interface SQL
avec leurs propres algorithmes pour
l’exploitation de leur base de données tout en gardant les mêmes APIs de mSQL. Depuis, le
succès de MySQL n'a cessé de grandir. Aujourd’hui, c’est un système de gestion de base de
données très souvent utilisé par les grandes entreprises. De plus, il est très souvent lié avec le
PHP ce qui permet de générer des pages Web dynamiques.
Architecture de MySQL
Les fichiers
La structure de fichiers de MySQL est constituée d'un fichier pour les données des tables de la
base de données et d'un autre fichier pour les index. Cette structure de fichiers est assez
simpliste. C’est peut-être un avantage pour des tables de petite taille, mais sûrement un
désavantage pour celles de grande taille.
1 / 29 100%
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 !