Cours générale de bases de données pour débutant


Télécharger Cours générale de bases de données pour débutant

★★★★★★★★★★4 étoiles sur 5 basé sur 7 votes.
Votez ce document:

Télécharger aussi :


Cours générale de bases de données pour débutant

...

La gestion des informations se faisait jadis à partir de fiches manuscrites puis dactylographiées, classées bien souvent selon un index

Exemple :           Cas d’une gestion de personnels par ordre alphabétique sur le nom, avec un index ou coche sur la première lettre du nom, pour améliorer le classement et la recherche.

               Ces fiches regroupaient des informations se reportant à un même sujet.

Exemple :           Selon l’exemple précédent : le nom, le prénom, la date de naissance, l’adresse, les qualifications, l’emploi tenu, l’indice de rémunération …), avec éventuellement une information particulière qui servait à identifier plusieurs personnels ayant le même nom et le même prénom, soit un code ou un numéro matricule.

   Ces principes de regroupement d’informations, d’identifiant, de fiche et de fichier servirent de modèle aux premiers fichiers informatiques : notion qui apparut dans les années cinquante.

               Avec l'informatique, un certain nombre d'opérations ont été automatisées et l'enregistrement des informations est donc passé de la fiche manuelle à un support informatique (bande magnétique, disque dur, disquette etc...). Ces informations ont été organisées dans des fichiers.

La problématique générale est alors la suivante : comment, à partir d'un simple ordinateur, réussir à gérer toutes les informations d'une entreprise ?

Les connaissances en architecture système, en analyse et en programmation ne suffisent pas à elles seules à résoudre le problème du stockage des données et de leur traitement. Mais l'on peut, pour commencer, se servir des structures et des mécanismes propres à la gestion des fichiers pour organiser le stockage des données.

  1. Rappels sur les fichiers
  2. Rappels sur les fonctions du Système d'Exploitation

Tout Système d’Exploitation dispose d'un Système de gestion des fichiers, responsable de l'organisation et de l'accès aux informations.

Fichier : Ensemble organisé de regroupements d'informations de même nature, appelés articles ou enregistrements, susceptibles de faire l'objet de traitements par des programmes, ou produits par ces mêmes programmes.

Parmi les fichiers que gère un système d'exploitation, on peut distinguer : les fichiers de données, les fichiers programmes ou les fichiers textes.

On ne s'intéresse ici qu'aux fichiers de données.

Ces fichiers de données sont destinés à faire l'objet de traitements par des programmes dans le but de création, de modification, de suppression et/ou de consultation des informations qu'ils contiennent.

En conséquence le SE considère un fichier comme une unité logique qu'il doit pouvoir gérer en fonction des espaces physiques disponibles sur les supports périphériques alors que l'utilisateur le considère comme une identité de dimension arbitraire qui forme un tout.

La notion de fichier physique (contenant) s'oppose donc à la notion de fichier logique (contenu) et il faut bien comprendre ces deux notions pour savoir gérer les informations.

  1. La structure logique des fichiers

Structure logique : Ordre de consultation des enregistrements de façon à n'obtenir que des enregistrements d'un même fichier

  1. Structure logique de longueur fixe

Avant même de commencer à stocker des informations, on doit créer une structure pour le fichier :

Nom fichier : STAGIAIRE.DAT

Longueur enregistrement : 75

Date de création : 01/07/1997

Date dernière modification : 04/07/2000

….

NOM     GRADE CODE_GRADE   NUM_STAGE    CLAIR_STAGE

DUPONT             sergent                89           99SB3    CT1 MSI



MARTIN              sergent                89           99SB2    CT1 MSI

UNTEL  sergent-chef     91           99SA3   BSTAT MSI

BERNARD            sergent-chef     91           00LA1    BSTAT MSI T S ML

En-tête (ou header): ensemble de données décrivant un fichier avec le détail de ses caractéristiques (organisation, longueur des enregistrements, date de création, date de dernière modification etc…).

Enregistrement logique (ou Article): unité de base directement accessible par le programme utilisateur ; Ensemble structuré de rubriques se rapportant à un même sujet.

Exemple :           L'article STAGIAIRE comporte les rubriques NUM_STAGE, CLAIR_STAGE…

Chaque enregistrement se voit attribuer un numéro d'ordre (numéro ou clé).

Rubrique (attribut ou champ ou donnée (datum)) : le nom attribué à chaque zone contenant une valeur en clair ou codifiée.

Exemple :           La rubrique GRADE contenant la valeur "sergent" et la rubrique CODE_GRADE contenant la valeur 89.

Caractère : le plus petit élément de donnée dans une rubrique. On peut dire que c'est le plus petit groupement de bits (BInary digiT) contigus et significatifs.

Clé : est constituée d'une (ou de plusieurs) donnée(s) qui permet(tent) le rangement et la localisation de l’article dans le fichier de manière optimisée. La clé appartient généralement à l’article. Primaire, elle identifie l'article ; secondaire elle peut tolérer des valeurs multiples (doublons) et permet un accès plus rapide à tous les enregistrements pour lesquels la clé secondaire aurait la valeur recherchée.

La clé primaire est toujours renseignée. Elle a un contenu unique pour chaque enregistrement logique, elle appartient à l’article en tant que rubrique, son contenu est ou non numérique. La clé primaire est utilisée par le SGF pour la construction des tables d’index.

1.1.        Structure logique séquentielle classique

On accède à un enregistrement après avoir lu tous ceux qui le précèdent.

IDENT

NOM     COEF

1             DUPONT             30

2             MARTIN              23

3             UNTEL  28

4             BERNARD            12

Les enregistrements sont rangés dans l'ordre logique de lecture. Pour respecter cet ordre, on est souvent amené à trier les enregistrements, en les déplaçant. Ce type de tri est long et fastidieux ; le risque d'erreur important. Le tri ne peut se faire que sur un seul critère.

1.2.        Structure logique séquentielle chaînée

Dans ce type de structure, les enregistrements peuvent être dans n'importe quel ordre.

Pour conserver un ordre logique des enregistrements, on ajoute une rubrique spéciale à la structure pour indiquer la position de l'enregistrement logique suivant ; cette rubrique contient l'adresse de cette enregistrement : c'est un « pointeur ».

IDENT   NOM     COEF     Suivant

1

UNTEL  28           @4

2 = début            DUPONT             30           @3

3             MARTIN              23           @1

4             BERNARD            12           Fin

Cette fois-ci, pour effectuer des tris, il suffit simplement de reconstruire le "chaînage" entre les différents articles à partir des "pointeurs", ce qui est plus rapide et plus sûr.

Cette structure a aussi l'avantage de proposer la notion de suppression logique des articles (l'enregistrement est présent dans le fichier, mais aucun pointeur ne permet d'y accéder).

1.3.        Structure logique indexée



Pour accéder encore plus vite aux enregistrements, on ajoute au fichier de données un fichier index, trié en fonction de la rubrique la plus intéressante (la clé primaire par exemple).

Ce fichier index ne comporte plus que le numéro d'enregistrement, la rubrique servant d'index et l'adresse de l'enregistrement logique suivant (selon le critère d’indexation).

IDENT   NOM     COEF                     N°           NOM     Adresse

1             UNTEL  28                           1             BERNARD            @4

2             DUPONT             30                           2             DUPONT             @2

3             MARTIN              23                           3             MARTIN              @3

4

BERNARD            12                           4             UNTEL  @1

Fichier de données        Fichier d'index (sur le nom)

Le fichier de données ne contient que des données, le fichier d'index peut être généré à n'importe quel instant, les accès se font par l’intermédiaire du fichier index, plus petit et plus maniable.

On peut, en outre, créer plusieurs fichiers index pour un même fichier de données (tri sur le nom, sur la date, sur un ensemble d'articles…).

  1. Structure logique de longueur variable

Pour éviter le gaspillage d'espace on peut utiliser un fichier à structure variable :

  • Les champs sont séparés par un séparateur spécifique : \00 par exemple 00(16) ;
  • Les enregistrements sont séparés par un autre séparateur : \n par exemple 13(16).

Le gain de place n'est pas négligeable mais la gestion devient plus complexe.

  1. La structure physique des fichiers

Si l'on se penche maintenant sur la structure physique des fichiers (contenant), on se rend compte que des principes similaires à ceux énoncés précédemment sont mis en application, mais les mécanismes sont intimement liés aux possibilités de gestion des entrées-sorties du SE présent.

Structure physique : Ordre physique des enregistrements.

Bloc : est constitué de un à plusieurs enregistrements logiques traités comme un tout au niveau des entrées-sorties.

L'intérêt de ce principe réside, en tenant compte de la taille des buffers, dans la diminution du nombre d'entrées-sorties physiques.

De plus, les principes mis en place pour la gestion des mémoires secondaires autorisent le fractionnement d'un fichier physique en plusieurs endroits.

  1. Enregistrement logique, enregistrement physique

Enregistrement physique (ou bloc) : ensemble des caractères transférés par le système d'exploitation au cours d'une entrée-sortie.

Enregistrement logique : unité de base directement accessible par le programme utilisateur.

Les tailles de ces différents enregistrements ne sont pas obligatoirement compatibles : le SE doit permettre de faire la correspondance entre physique et logique.

Facteur de groupage (ou facteur de blocage) : Nombre d’enregistrements logiques contenus dans un enregistrement physique.

Schéma récapitulatif

                Enregistrement physique 1       

Enregistrement logique 1            Enregistrement logique 2            Enregistrement logique 3

Article ou enregistrement logique

N° Matricule      Nom      Prénom               Adresse               N° téléphone

Clé primaire       Rubrique :



MICHEL

M           I              C             H             E             L                                                                                                                                          

  1. Structure physique des fichiers

2.1.        Structure physique séquentielle

Ceci est le cas des bandes magnétiques : les enregistrements sont écrits les uns à la suite des autres.

Il est donc logique que la structure logique correspondante soit aussi séquentielle, ce qui rend les accès et les opérations de recherche très longs.

Ce type de structure est utilisé pour la sauvegarde et l'archivage des informations.

2.2.        Structure physique adressée (ou adressable)

La tête de lecture peut se positionner directement à n'importe quel endroit du fichier.

Les fichiers peuvent être fragmentés (découpés en plusieurs parties logiquement chaînées mais physiquement situées à des endroit différents du support).

Cette structure est compatible avec toutes les structures logiques citées.

  1. Les organisations et les accès
  2. Les organisations

Organisation : Méthode permettant d'attribuer (écrire) un emplacement physique sur le support à tout enregistrement logique

On peut donc distinguer 4 grands types d'organisations :

1.1.        Organisation séquentielle (heap)

Telle une série de fiches dans un bac, sans repères particuliers, une organisation séquentielle est basée sur un fichier séquentiel dont les enregistrements sont répartis sur plusieurs pages de données.

L’impression de désordre que laisse ce type d’organisation explique le nom qui lui est donné (heap veut dire tas).

Les accès sont relativement longs mais si les enregistrements sont triés selon un attribut couramment sollicité (organisation heap triée), cet inconvénient est moins sensible.

Cette organisation a pour avantage de considérer indifféremment chaque attribut de l'enregistrement ; on peut donc accéder aux informations en utilisant comme point d'entrée chaque attribut ou combinaison d'attributs de l'enregistrement, avec des performances équivalentes.

1.2.        Organisation à accès direct

Dans ce type d’organisation, la valeur de la clé d’un enregistrement suffit à retrouver l’emplacement physique de celui-ci.

La zone de données (data file) est découpée en pages.

1.2.1.     Adresse physique d’un enregistrement

Plusieurs cas de figure peuvent se présenter :

  1. a) l'adresse de l'enregistrement est l'adresse physique réelle du début de l'enregistrement (le 1er octet) ;
  2. b) l’adresse de l’enregistrement correspond à l’adresse physique du début de la page de données dans laquelle se trouve l’enregistrement recherché ;
  3. c) l’adresse de l’enregistrement est composée de l’adresse physique du début de la page de données et du déplacement qu’il faut effectuer dans la page pour trouver le début de l’enregistrement (offset).



6073