VIII.1.3. Choix du SGBD
Un Système de Gestion de Bases de Données (SGBD)
est un entrepôt qui permet de stocker des données et
d'accéder efficacement à ces données. C'est la pierre
angulaire de toutes applications. Il en existe plusieurs dans le monde
Informatique. Des SGBD commerciaux comme Oracle tout comme des SGBD libres tels
que MySql, PostgreSQL. Le choix du SGBD à utiliser dans un
système informatique est d'une grande importance. Nous avons dans notre
cas porté notre choix sur PostgreSQL pour plusieurs raisons que nous
évoquerons ci-dessous.
C'est un SGBD complet qui respecte les
propriétés d'Atomicité, de consistance, d'isolation et de
durabilité. Il est multi - plates-formes même s'il est mieux
adapté à la plate-forme Linux. Il permet de bien gérer les
contraintes d'intégrité (clefs étrangères et
triggers), les transactions, les vues, les procédures stockées,
sous-requêtes et possède une grande puissance d'indexation.
PostgreSQL supporte trois (3) types d'indices : les
B-trees, les R-trees, le hachage. Il est orienté objets
et permet donc l'utilisation des mécanismes objets tels que
l'héritage, la surcharge de fonctions ... Aussi PostgreSQL permet de
gérer des objets binaires volumineux appelés BLOB (Binary Large
Object), des type de données réseaux (adresse IP ou MAC), des
types de données géométriques (point, line, box, path,
circle, polygon). Enfin signalons que tout comme les SGBD commerciaux,
PostgreSQL n'omet pas le verrouillage lors des accès multiples à
des données et intègre un langage de programmation particulier
pour le développement de fonctions à l'intérieur d'un code
SQL. Il s'agit de PL/pgSQL qui est l'équivalent de PL/SQL d'Oracle.
PostgreSQL n'omet pas les sauvegardes et restaurations. Il propose des outils
tels que pg-dump et pg_dumplo. Il offre également plusieurs interfaces
de programmation, dont C/C++, Perl, PHP, Java, Python, Tcl/Tk .
La richesse des fonctionnalités de PostgreSQL, son
envergure multi plate-formes permet de garantir la cohérence et
l'intégrité des données manipulées ;ceci
grâce aux transactions, aux vues, aux triggers et bien d'autres
fonctionnalités qui sont parfaitement gérées par ce SGBD.
Il a de ce fait presque toutes les qualités propres aux SGBD
propriétaires et va donc au-delà des aspects qui nous sont
indispensables à la réalisation de nos travaux. Les limites de
PostgreSQL peuvent parfois être perçues comme des qualités.
En effet, à partir de la version 7.1 déjà la taille d'une
table est limitée à 64 TO (teraoctets), un champ individuel peut
occuper 1 Go (un Gigaoctets) tandis que la longueur d'une ligne est
illimitée. Les tables dépassant 64 TO peuvent être
divisées et réparties en plusieurs. La maturité de
PostgreSQL peut s'illustrer par le fait que Red-hat l'intègre dans ses
dernières versions. On peut citer par exemple le système
d'exploitation Fedora Core 2 dans lequel ce SGBD fait partie intégrante.
Il faut signaler que ce système d'exploitation libre est
dédié aux entreprises et même aux postes personnels
utilisés à domicile.
Au-delà de toutes ces considérations, un
argument de taille pouvant justifier le choix de PostgreSQL est son statut open
source, ce qui met en relief les possibilités de reduction de coût
et la capacité qu'a l'utilisateur à modifier les sources dans le
but d'apporter des solutions à certains bugs ou d'améliorer le
produit et de le mettre à la disposition de la communauté. Ce
SGBD apparaît aujourd'hui comme l'un des meilleurs SGBD open
source capable de proposer des prestations du niveau attendu par
les utilisateurs des SGBD commerciaux.
En somme le choix de PostgreSQL comme SGBD pour la
réalisation de nos travaux est un choix judicieux et se justifie
pleinement au vu de toutes les qualités énumérées
plus haut. Pour parvenir à des résultats satisfaisants, il nous
appartient également d'opter pour des outils de développement
compatibles avec ce SGBD et ayant des qualités irréprochables
dans la conception d'une application web.
|