 |
|
|
| |
|
GUIDE PRATIQUE |
 |
|
 |
|
Comprendre les bases de données |
|
Questions-clés, définitions, liens utiles, acteurs, chiffres et citations : l'essentiel de ce qu'il faut savoir sur les bases de données en un coup d'oeil.
(31/08/2005)
|
|
 |
 |
|
|
Quel est le rôle d'une base de données ?
Une base de données a pour but de stocker les informations de production correspondant à une application. Sa présence est par conséquent nécessaire au bon fonctionnement de cette dernière, qui ne pourrait exécuter ses processus de travail sans disposer d'un tel réceptacle pour archiver les données à traiter. Un progiciel comptable par exemple doit être équipé d'une base pour agréger l'ensemble des informations financières saisies en entrée, afin ensuite d'exécuter les mécanismes de gestion : de la génération d'états à la mise en oeuvre de fonctions de gestion particulières (vente, facturation, etc.). Même logique pour un logiciel de gestion de la relation clients (CRM) au sein d'un centre d'appels : il génère les réponses aux questions des utilisateurs concernant tel ou tel dossier client ou gamme de produit en interrogeant la base de données sous-jacente.
Comment fonctionne-t-elle ?
La base range les données au sein d'un système de classement particulier. Un mode de structuration conçu pour faciliter les traitements lancés depuis l'application cliente. Concrètement, les informations sont réparties au sein de dossiers appelés tables, chacun d'eux renvoyant à un domaine de données (produits et attributs produits, tarifs, canaux de vente, etc.). La logique de classement en question se place ainsi à la croisée des chemins techniques et métier. Au final, elle garantit la pertinence des réponses apportées par le système, mais également sa rapidité de réaction à une demande, une structure de données simple et claire étant gage de performance.
Pour gérer la structure et le contenu de la base, et lancer les requêtes,
les applications clientes exploitent des langages d'invocation différents en fonction du type de serveur de données. Le plus célèbre d'entre eux : SQL (pour Structured Query Language). Selon le système d'exploitation utilisé, elles s'appuieront en outre sur des interfaces de dialogue particulières pour l'exécuter : ODBC (Open Database Connectivity) si elles tournent sous Windows, JDBC (Java Database Connectivity) si elles sont basées sur un serveur d'applications Java.
Il existe plusieurs types de bases de données ?
On distingue deux grands modèles de bases de données :
- Le modèle relationnel à travers lequel les relations sont représentées dans un univers à deux dimensions - qui permettra d'associer un prix à un ensemble d'attributs produit par exemple. Une démarche qui renvoie à la théorie des ensembles (soit l'algèbre relationnelle) inventée par IBM. Les opérations relationnelles permettent de créer une nouvelle relation (table) à partir d'opérations élémentaires sur d'autres tables (par l'union, l'intersection, ou encore la différence entre type de données contenu dans ces tables), ceci pour faciliter le travail de l'application cliente (fonction de calcul du prix d'un produit en fonction de ses attributs, etc.).
- Le modèle multidimensionnel exploite de son côté des schémas en étoile ou en flocon pour exécuter de façon performante des requêtes plus complexes. A la différence de la base relationnelle, les bases multidimensionnelles sont capables de croiser plusieurs tables (revenu, zones géographique, etc.), ici appelées dimensions. Au sein d'un schéma en étoile, gravitent autour d'une table centrale plusieurs tables satellites comprenant des informations descriptives sur les dimensions à prendre en compte. Ainsi, il sera possible grâce à cette méthode de calculer le revenu généré par une équipe de vente sur une certaine période au sein d'une zone géographique particulière pour un profil de clients donné.
Quelles sont les mesures à prendre pour assurer la performance des accès...
Afin d'assurer la performance des accès, la base de données doit être installée sur une machine différente de celle sur laquelle est basée l'application cliente. Une grappe de serveurs en miroir dotée de fonctions d'équilibrage de charge peut être également
envisagée pour la supporter, notamment en cas de gros volumes de données, de traitements importants, ou encore d'un grand nombre de connections simultanées.
...et la protection des données ?
A l'heure du développement des accès informatiques réseau, la mise en place d'une base de données nécessite plus que jamais certaines mesures de sécurité. Rien n'empêche en effet un salarié de modifier le contenu d'une base non protégée. Les éditeurs proposent une solution pour masquer les contenus au tout venant. Elle consiste à chiffrer les données. Cette opération se traduit néanmoins par une chute du niveau de performance des applications - ce que les fournisseurs avouent d'ailleurs sans peine. Une conséquence qui est d'autant plus notable lors de l'exécution de requêtes impliquant un très grand nombre de lignes. Rançon d'un bon niveau de sécurité, cette baisse de performance pourrait néanmoins être limitée par la mise en oeuvre d'un redimensionnement approprié de la puissance du serveur ainsi que la définition d'une méthodologie de chiffrement optimisée.
|
Editeurs propriétaires
|
|
DB2 (IBM)
Oracle 10g (Oracle)
SQL Server (Microsoft)
Sybase ASE (Sybase)
|
Ipedo XML Database (Ipedo)
Tamino XML Server (Software AG)
TextML Server (Ixiasoft)
Xyleme Server (Xyleme)
|
|
Technologies Open Source
|
|
Apache Xindice (XML)
eXist (XML)
Interbase
|
MaxDB
mySQL
PostgreSQL
|
| |
:: Les indicateurs-clés ::
|
| |
|
14,9
|
milliards
de dollars,
soit la taille du marché des systèmes
de gestion de bases de données relationnelles
dans le monde en 2004.
Le marché progresse de 11,6% en valeur
par rapport à 2003.
Source IDC |
|
7,8
|
milliards de dollars,
soit le chiffre d'affaires issu de la vente de systèmes de gestion de base de données (SGBD) dans le monde en 2004.
Source Gartner |
|
|
|
|
|
|
|
 |
|
 |
|