Upload
mimis
View
47
Download
0
Embed Size (px)
DESCRIPTION
Base de données: Généralités. IFT6800 – E 2008 Pierre Poulin. 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 - PowerPoint PPT Presentation
Citation preview
Base de données: Généralités
IFT6800 – E 2008
Pierre Poulin
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• …
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
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
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
…
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$
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
…
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
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)
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
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
Généralité sur l’implantation
• Couches:
Traitement de requêtes
Accès aux données
Gestion du disque
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
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 …
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
Suite
• Voir la présentation sur les bases de données