Base de données

Une base de données  est une entité dans laquelle il est possible de stocker des données de façon structurée et avec le moins de redondance possible.[1] Ces données doivent pouvoir être utilisées par des programmes, par des utilisateurs différents.

Une base de données permet de mettre des données à la disposition d'utilisateurs pour une consultation, une saisie ou bien une mise à jour, tout en s'assurant des droits accordés à ces derniers.

Une base de données peut être locale, c'est-à-dire utilisable sur une machine par un utilisateur, ou bien répartie, c'est-à-dire que les informations sont stockées sur des machines distantes et accessibles par réseau.

L'avantage majeur de l'utilisation de bases de données est la possibilité de pouvoir être accédées par plusieurs utilisateurs simultanément.

Exemple

Celle qui permettent la gestion des personnels, étudiants, cours, inscriptions, ... d'une université ou école,

Celle du système de réservation de places d'avion des compagnies d'aviation,

Celles qui permettent la gestion des comptes des clients des sociétés bancaires,

Celle qui permettent la gestion des patients dans un hôpital.

Cycle de vie d'une base de données

On appelle cycle de vie d'une base de données la suite des phases conception, implantation, utilisation.

A- La conception d'une base de données représente la phase d'analyse qui aboutit à déterminer le futur contenu de la base.

B-L 'implantation de la base de données consiste à décrire la base de données dans le langage du SGBD[2] et de construire une première version de la BD[3]. La description de la BD dans le langage du SGBD [2]sera fait au moyen d'un langage symbolique, spécifique du logiciel choisi, que l'on appelle langage de description de données[4] (LDD[5]).

C-L 'utilisation de la base de données se fait au moyen d'un langage, dit langage de manipulation de données[6] (LMD[7]), qui permet d'exprimer aussi bien les requêtes d'interrogation (pour obtenir des informations contenues dans la base) que des requêtes de mise à jour (pour ajouter de nouvelles informations, supprimer des informations périmées, modifier le contenu des informations).

Architecture d'un SGBD

Modèle de données d'une base de données

On appelle modèle de données l'ensemble des concepts qui permettent la description de données d'une base et les règles d'utilisation de ces concepts

Le résultat de la modélisation des données d'une BD est un schéma de la BD[3]. Donc le processus de création d'un schéma de la BD[3] s'appelle la modélisation des données.

Il existe de nombreux modèles de bases de données. Parmi ces modèles nous citons :

Le modèle hiérarchique : les données sont classées hiérarchiquement, selon une arborescence descendante. Ce modèle utilise des pointeurs entre les différents enregistrements. Il s'agit du premier modèle de SGBD[2].

Le modèle réseau : comme le modèle hiérarchique ce modèle utilise des pointeurs vers des enregistrements. Toutefois la structure n'est plus forcément arborescente dans le sens descendant.

Le modèle relationnel (SGBD[2]R, Système de gestion de bases de données relationnelles) : les données sont enregistrées dans des tableaux à deux dimensions (lignes et colonnes).

Le modèle déductif : les données sont représentées sous forme de table, mais leur manipulation se fait par calcul de prédicats.

Le modèle objet (SGBD[2]O, Système de gestion de bases de données objet) : les données sont stockées sous forme d'objets, c'est-à-dire de structures appelées classes présentant des données membres. Les champs sont des instances de ces classes.

Système de gestion de base de données

Est un ensemble de services (applications logicielles) permettant de contrôler les données ainsi que les utilisateurs et de gérer les bases de données, c'est-à-dire :

-permettre l'accès aux [8] données de façon simple

-autoriser un accès aux informations à de multiples utilisateurs

-manipuler les données présentes dans la base de données (insertion, suppression, modification)

Architecture d'un système de gestion de base de données

Architecture d'un SGBD

L'architecture d'un SGBD comprend trois couches :

  1. Niveau externe : prend en charge le problème du dialogue avec les utilisateurs, c'est-à-dire l'analyse des demandes de l'utilisateur, le contrôle des droits d'accès de l'utilisateur, la présentation des résultats

  2. Niveau interne : s'occupe du stockage des données dans les supports physiques et de la gestion des structures de mémorisation (fichiers) et d'accès (gestion des index[9], des clés, ...)

  3. Niveau intermédiaire : assure les fonctions de contrôle global:

  • optimisation globale des requêtes,

  • gestion des conflits d'accès simultanés de la part de plusieurs utilisateurs,

  • contrôle général de la cohérence de l'ensemble,

  • coordination et suivi des processus en cours,

  • La couche intermédiaire de contrôle est appelée niveau logique

Les fonctions d'un système de gestion de base de données

D'un point de vue fonctionnel, les fonctions d'un SGBD[2] sont les suivantes :

- Supporter les concepts définis au niveau du modèle de données.

- Assurer et rendre transparent le partage des données entre différents utilisateurs.

- Assurer la confidentialité des données.

- Assurer le respect des règles de cohérence définies sur les données.

- Fournir différents langages d'accès selon le profil de l'utilisateur.

- Etre résistant aux pannes.

- Posséder une capacité de stockage élevée : Exa-octet (1018) voire de zettaoctet (1021).

- Pouvoir répondre à des requêtes avec un niveau de performances adapté.

- Fournir des facilités pour la gestion des métadonnées.

Conception d'une base de données

La modélisation est l'activité d'élaboration d'une représentation structurée de la réalité[10] . Une BD[3] est une représentation de la partie du monde réel qui intéresse les utilisateurs / les applications.

La modélisation des données est l'élaboration des structures de données pour les données qui seront enregistrées dans une BD[3]. La définition de ces structures est consignée dans le schéma de la BD[3].

Le processus de modélisation et la définition de son résultat sous forme d'un schéma conceptuel est appelé conception de la BD[3].

La démarche proposée pour la conception d'une BD[3][2] comprend deux phases :

- l'analyse conceptuelle,

- la production de la BD[3].

Conception d'une base de données

Avantages de la modélisation conceptuelle

  • Attention portée sur les applications

  • Indépendante des technologies

  • Portabilité

  • Longévité (longue durée de la vie)

  • Orientée utilisateur

  • Compréhensibilité

  • Spécifications formelles, non ambiguës

  • Manipulation des données

  • Facilite les échanges d'informations entre SGBD[2] différents

  • Support du dialogue concepteurs / utilisateurs

  • Permet la collaboration et la validation par les utilisateurs

Création de la base de données

Il existe plusieurs modèles conceptuels de données dont nous pouvons cité :

ExempleExemple de modèles conceptuels

Modèle entités-associations

Modèle entités associations
Diagramme de classe UML

SQL [13]est devenu le langage standard pour décrire et manipuler les Base de Données Relationnelle. SQL est un langage déclaratif qui permet d'interroger une base de données sans se soucier de la représentation interne (physique) des données, de leur localisation, des chemins d'accès ou des algorithmes nécessaires. A ce titre il s'adresse à une large communauté d'utilisateurs potentiels (pas seulement des informaticiens) et constitue un des atouts les plus spectaculaires (et le plus connu) des SGBD[2]R[14][13]

Exemple de création et de la suppression [13]d'une table en SQL[13]

1
CREATE TABLE `Table1`
2
(`NumTable1` INT PRIMARY KEY,
3
`colonne2` TEXT(25),
4
`colonne3` DATE,
5
`colonne4` DOUBLE,
6
`NumTable2` INT REFERENCES Table2
7
);
8
DROP TABLE Nom_de_la_table