160 likes | 306 Views
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
E N D
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
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 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
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
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)
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