Transcript
Page 1: Base de données: Généralités

Base de données: Généralités

IFT6800 – E 2008

Pierre Poulin

Page 2: Base de données: Généralités

Pourquoi une base de données?

• Beaucoup de données• Une structure régulière et fixe (e.g. adresse,

information sur une personne, …)• Traitement similaire

• Stockage dans une structuration (base de données) prédéfinie

• Une vue uniforme et abstraite de ces données• Offrir des traitements (consultation, mise-à-jour,

…) efficaces et standards• Garantir la cohérence• …

Page 3: Base de données: Généralités

Définition

Wikipédia:• Le concept de base de données permet

de stocker et d’organiser une grande quantité d’information

• Les SGBD (Système de Gestion de Base de Données) permettent de naviguer dans ces données et d’extraire (ou de mettre à jour) les informations voulues au moyen d'une requête

Page 4: Base de données: Généralités

Exemple

• Données de vente d’un magasin– Date– Numéro d’article– Nom d’article– Montant– Vendeur

• Structure fixe• Beaucoup de données avec la même structure

Page 5: Base de données: Généralités

Exemple: Vente

DateNuméro d’article

Nom d’article

Montant Vendeur

2007/03/05 B1234 Casserole 53.50 Véronique

2007/03/05 A928Nappe tissue

16.30 Marc

2007/03/06 B7645Poêle à

frire32.85 Claude

Page 6: Base de données: Généralités

Traitements possibles

• Statistiques– le volume de vente d’un jour/mois, …– le volume de vente d’un vendeur– les articles populaires (les plus vendus)– ...

• Extraction d’une partie des données– les ventes par Véronique– les ventes > 50$

Page 7: Base de données: Généralités

D’autres informations: Fabricant

Numéro d’article

Fabricant Pays Stock

A192 ABC inc. Canada 250

A928Tissue Expert

Chine 538

B1234 X USA 64

B7645 Véritable Canada 3

Page 8: Base de données: Généralités

D’autres opérations• Combiner les informations de plusieurs tables

– Vente d’articles en provenance de la compagnie ABC inc.– Nombre de casseroles en stock

• Opération de jointure

Date Numéro d’article

Nom d’article

Montant Vendeur

2007/03/05 B1234 Casserole 53.50 Véronique

Numéro d’article Fabricant Pays Stock

B1234 X USA 64

Numéro d’article Fabricant Pays Stock Date Nom d’article Montant Vendeur

B1234 X USA 64 2007/03/07 Casserole 53.50 Véronique

Page 9: Base de données: Généralités

D’autres opérations• Ces opérations peuvent être lancées par l’utilisateur

dans un langage standard (e.g. SQL)• L’utilisateur n’a pas à connaître la façon dont les

données sont stockées – il lui suffit de connaître leur organisation (schéma conceptuel)

Page 10: Base de données: Généralités

Organisation• BD relationnelle

– Les données apparaissent comme stockées dans des tables

– Une table est une relation entre les différents champs qui la composent

2007/03/05 B1234 Casserole 53.50 Véronique

Page 11: Base de données: Généralités

Différents modèles BD

• Hiérarchique– Les données dans une hiérarchie (arbre)

• Réseau– Toutes connexions sont autorisées entre les données

• Relationnelle– E. F. Codd qui fonde le modèle relationnel est « A Relational

Model of Data for Large Shared Data Banks", CACM 13, No. 6, June 1970

• À Objet• XML

Page 12: Base de données: Généralités

Généralité sur l’implantation

• Couches:

Traitement de requêtes

Accès aux données

Gestion du disque

Page 13: Base de données: Généralités

Séquence de traitements

• Requête d’utilisateur– Déterminer les relations, les attributs– Déterminer les fichiers qui les contiennent

• Accéder aux données dans les fichiers– Blocage durant l’écriture– Gestion de la cache (est-ce que la donnée existe

dans la cache?)– Déterminer l’index de la donnée– Index -> adresse

• Accéder à la donnée sur disque– Lire ou écrire une donnée selon l’adresse– Gestion de l’espace

Page 14: Base de données: Généralités

Un peu de détails

• Déterminer le fichier qui stocke une relation– Utiliser un dictionnaire: relation -> fichier

• Déterminer l’adresse où la n-uplet est stockée– Index: clé->adresse– E.g.

Clé

Adresse

– Si on a beaucoup de clés?• Recherche séquentielle très coûteuse• Index dans une structure (e.g. B-tree)

AB AC AD AL …

000 008 010 02F …

Page 15: Base de données: Généralités

B-tree

• Déterminer une donnée avec une clé (e.g. 16)• Déterminer un ensemble de données dans (e.g. clé>18)• Gestion de la structure d’index

– Création– Mise-à-jour

Page 16: Base de données: Généralités

Suite

• Voir la présentation sur les bases de données