Dans la très grande majorité des cas, le terme de base de données est utilisé pour base de données fortement structurée(s).
Une base de données est la pièce centrale des dispositifs informatiques qui servent à la collecte, le stockage, le travail et l'utilisation d'informations. Le dispositif comporte un système de gestion de base de données (abr. SGBD): un logiciel moteur qui manipule la base de données et dirige l'accès à son contenu. De tels dispositifs - souvent appelés base de données - comportent également des logiciels applicatifs, et un ensemble de règles relatives à l'accès et l'utilisation des informations2.
La manipulation de données est une des utilisations les plus courantes des ordinateurs. Les bases de données sont fréquentes dans les secteurs de la finance, des assurances, des écoles, de l'administration publique et les médias.
Sommaire
Description
Une base de données est un conteneur servant à stocker des données2: des renseignements bruts tels que des chiffres, des dates ou des mots, qui peuvent être retraités par des moyens informatiques en vue de produire une information; par exemple, des chiffres et des noms assemblés et triés pour former un annuaire téléphonique. Les retraitements sont typiquement une combinaison d'opérations de recherches, de choix, de tri, de regroupement, et de concaténation3.Une base de données est la pièce centrale d'un dispositif informatique dit système de base de données ou base de données tout court, qui régit la collecte, le stockage, le retraitement et l'utilisation de données. Un dispositif qui comporte également un logiciel moteur (le SGBD), des logiciels applicatifs, et un ensemble de règles relatives à l'accès et l'utilisation des informations2.
Le système de gestion de base de données (abr. SGBD) est une suite de programmes qui manipule la structure de la base de données et dirige l'accès aux données qui y sont stockées. Une base de données est composée d'une collection de fichiers; le seul moyen d'accéder aux données est par le SGBD, qui sert alors d'intermédiaire entre la base de données et ses usagers. Celui-ci reçoit des demandes de manipulation du contenu et effectue les opérations nécessaires sur les fichiers. Il cache la complexité des opérations et offre une vue synthétique sur le contenu. Le SGBD permet en outre à plusieurs usagers de manipuler simultanément le contenu, et peut offrir différentes vues sur un même ensemble de données2.
Le recours aux bases de données est une alternative au procédé classique de stockage de données, par lequel une application place des données dans des fichiers manipulés par l'application. L'utilisation d'une base de données en lieu et place de fichiers facilite le partage des informations, permet le contrôle automatique de la cohérence et de la redondance des informations, la limitation de l'accès aux informations et la production plus aisée des informations synthétiques à partir des renseignements bruts. La base de données aura, de plus, un effet fédérateur: dans une collectivité qui utilise une base de données, une personne unique - l'administrateur de bases de données - est chargée d'organiser le contenu de la base de données d'une manière qui soit bénéfique à l'ensemble de la collectivité, ce qui évite les conflits dus à des intérêts divergents entre les membres de la collectivité4.
Une base de données nécessite généralement plus d'espace disque, le large éventail de fonctions offertes par les SGBD rend les manipulations plus complexes, et les pannes ont un impact plus large et sont plus difficiles à rattraper 4.
Terminologie
- modèle de données
- modèle de données logique et physique
- entité
- attribut
- enregistrement
- association
- cardinalité
- modèle de données relationnel
- base de données relationnelle
- modèle de données entité-association
- modèle de données objet
- modèle de données hiérarchique
- modèle de données réseau
- nul
- clé primaire
- clé étrangère
- intégrité référentielle
Typologie
L'usage qui est fait des données diffère d'une base de données à l'autre. Les bases de données peuvent être classifiées en fonction du nombre d'usagers, du type de contenu, notamment s'il est faiblement ou fortement structuré, ainsi que selon l'usage qui est fait de la base de données, notamment l'utilisation opérationnelle ou à des fin d´analyse:Les bases de données peuvent être classifiées en fonction du nombre d'usagers - un seul, un petit groupe, voire une entreprise. Une base de données de bureau est installée sur un ordinateur personnel au service d'un seul usager. Tandis qu'une base de données d´entreprise et installée sur un ordinateur puissant au service de centaines d'utilisateurs. Une base de données centralisée est installée dans un emplacement unique, tandis qu'une base de données distribuée est répartie entre plusieurs emplacements2.
La manière la plus populaire de classer les bases de données est selon l'usage qui en est fait, et l'aspect temporel du contenu:
- Les bases de données dites opérationnelles ou OLTP (de l'anglais online transaction processing) sont destinées à assister des usagers à tenir l'état d'activités quotidiennes2. Elles permettent en particulier de stocker sur le champ les informations relatives à chaque opération effectuée dans le cadre de l'activité: achats, ventes, réservations, payements. Dans de telles applications l'accent est mis sur la vitesse de réponse et la capacité de traiter plusieurs opérations simultanément3.
- Les bases de données d'analyse dites aussi OLAP (de l'anglais online analytical processing), sont composées d'informations historiques telles que des mesures sur lesquelles sont effectuées des opérations massives en vue d'obtenir des statistiques et des prévisions. Les bases de données sont souvent des entrepôts de données2 (anglais datawarehouse): des bases de données utilisées pour collecter des énormes quantités de données historiques de manière quotidienne depuis une base de données opérationnelle. Le contenu de la base de données est utilisé pour effectuer des analyses d'évolution temporelle et des statistiques telles que celles utilisées en management. Dans de telles applications l'accent est mis sur la capacité d'effectuer des traitements très complexes et le logiciel moteur (le SGBD) est essentiellement un moteur d'analyse3.
Histoire
Les disques durs, mémoire de masse de grande capacité, ont été inventés en 1956. L'invention du disque dur a permis d'utiliser les ordinateurs pour collecter, classer et stocker de grandes quantités d'informations.Le terme database (base de données) est apparu en 1964 pour désigner une collection d'informations partagées par différents utilisateurs d'un système d'informations militaire7.
Les premières bases de données hiérarchiques sont apparues au début des années 1960. Les informations étaient découpées en deux niveaux de hiérarchie : un niveau contenait les informations qui sont identiques sur plusieurs enregistrements de la base de données. Le découpage a ensuite été étendu pour prendre la forme d'un diagramme en arbre7.
En 1965, Charles Bachman conçoit l'architecture Ansi/Sparc encore utilisée de nos jours. En 1969, il créa le modèle de données réseau au sein du consortium CODASYL pour des applications informatiques pour lesquelles le modèle hiérarchique ne convient pas7. Charles Bachman a reçu le prix Turing en 1973 pour ses « contributions exceptionnelles à la technologie des bases de données. ».
En 1968 Dick Pick crée Pick, un système d'exploitation contenant un système de gestion de base de données « multivaluée » (SGBDR MV).
En 1970, Edgar F. Codd note dans sa thèse mathématique sur l'algèbre relationnelle qu'un ensemble d'entités est comparable à une famille définissant une relation en mathématique et que les jointures sont des produits cartésiens. Cette thèse est à l'origine des bases de données relationnelles7. Edgar F. Codd a reçu le prix Turing en 1981.
Le modèle entité-association a été inventé par Peter Chen en 1975 ; il est destiné à clarifier l'organisation des données dans les bases de données relationnelles8,9.
Dans le modèle relationnel, la relation désigne l'ensemble des informations d'une table, tandis que l'association, du modèle entité-association, désigne le lien logique qui existe entre deux tables contenant des informations connexes.
Les premières bases de données étaient calquées sur la présentation des cartes perforées : répartis en lignes et colonnes de largeur fixe. Une telle répartition permet difficilement de stocker des objets de programmation ; en particulier, elles ne permettent pas l'héritage entre les entités, caractéristique de la programmation orientée objet.
Apparues dans les années 1990, les bases de données objet-relationnel utilisent un modèle de données relationnel tout en permettant le stockage des objets. Dans ces bases de données les associations d'héritage des objets s'ajoutent aux associations entre les entités du modèle relationnel10.
Construction
Les étapes clés du cycle de vie d'une base de données sont la conception et la mise en service11.Avant la conception, les utilisateurs et les producteurs des informations sont interviewés en vue de prendre connaissance des caractéristiques des informations, des relations entre les informations, ainsi que les caractéristiques du système informatique qui accueillera la base de données11. L'objectif de cette étape est de recueillir les caractéristiques des informations dans la pratique, et les besoins des usagers, et de les formuler d'une manière simple, compréhensible autant par les usagers que les administrateurs de base de données11.
Puis sera créé un schéma d'ensemble du réseau d'informations et de relations, sous forme de diagramme comportant des entités, des attributs et des relations. ce plan est ensuite transformé en instructions formulées dans le langage de commande du SGBD et les instruction sont exécutées en vue de créer la structure de la base de données et la rendre opérationnelle11.
La définition de l'organisation interne d'une base de données - son modèle de données physique - est l'étape finale de sa construction. Cette opération consiste tout d'abord à définir des enregistrements correspondant au modèle de données logique12. Les enregistrements sont stockés dans des fichiers, et chaque fichier contient typiquement un lot d'enregistrements similaires13. Lors de cette étape diverses techniques sont utilisées en vue d'obtenir un modèle qui aboutit à une vitesse adéquate de manipulation de données, tout en garantissant l'intégrité des données12.
La qualité du modèle de données physique a un impact majeur sur la vitesse des opérations sur la base de données12. Une simple amélioration peut rendre les opérations sur les données 50 fois plus rapides13, différence d'autant plus sensible qu'il y a une grande quantité de données13. Au début des années 2000 il existe des bases de données contenant plusieurs téraoctets (1012) de données et des ingénieurs indépendants dont l'activité consiste uniquement à aider des clients à accélérer leurs bases de données13.
Une fois opérationnelle, des opérations de surveillance permettent de déceler des problèmes susceptibles de nécessiter des modifications du schéma. Des modifications peuvent également être apportées en cas de changement des besoins des utilisateurs11.
Organisation interne
L'organisation interne d'une base de données - son modèle de données physique - comporte des enregistrements correspondant au modèle de données logique12, des pointeurs et des balises utilisées par le SGBD pour retrouver et manipuler les données13. Les enregistrements sont stockés dans des fichiers, et chaque fichier contient typiquement un lot d'enregistrements similaires13. L'organisation interne utilise diverses techniques visant à obtenir une vitesse adéquate de manipulation de données, tout en garantissant l'intégrité des données12.L'organisation logique des données est indépendante de leur organisation physique. Ce qui signifie que la position des données dans les fichiers peut être entièrement modifiée sans que leur organisation sous forme d'enregistrements dans des tables ne soit touchée. Le SGBD organise les fichiers d'une manière qui accélère les opérations et qui diffère selon le matériel et le système d'exploitation pour lequel le système de gestion de base de données est conçu. Les enregistrements sont typiquement regroupés en grappes (anglais cluster), dont la taille est alignée sur une taille optimale pour le matériel (disque durs)12.
- index
- vue matérialisée
- partitionnement
- RAID (Redundant array of inexpensive disks)
- table de hachage (anglais hashing)
- arbre B
- bitmap
- ISAM (pour Indexed sequential access method)
Un journal contient la liste des dernières opérations effectuées sur la base de données. Ce journal est utilisé par le moteur de base de données pour annuler les opérations, par exemple en cas de crash informatique, ou si les opérations comportent une erreur. voir aussi Transaction informatique.
Le système de gestion de bases de données
Article détaillé : Système de gestion de base de données.
Un système de gestion de base de données est un ensemble de logiciels
qui manipulent le contenu des bases de données. Il sert à effectuer les
opérations ordinaires telles que rechercher, ajouter ou supprimer des
enregistrements (Create, Read, Update, Delete abrégé CRUD), manipuler les index, créer ou copier des bases de données.Les mécanismes du système de gestion de base de données visent à assurer la cohérence, la confidentialité et la pérennité du contenu des bases de données. Le logiciel refusera qu'un usager modifie ou supprime une information s'il n'y a pas été préalablement autorisé ; il refusera qu'un usager ajoute une information si celle-ci existe dans la base de données et fait l'objet d'une règle d'unicité; il refusera également de stocker une information qui n'est pas conforme aux règles de cohérence telles que les règles d'intégrité référentielle dans les bases de données relationnelles.
Le système de gestion de base de données adapte automatiquement les index lors de chaque changement effectué sur une base de données et chaque opération est inscrite dans un journal contenu dans la base de données, ce qui permet d'annuler ou de terminer l'opération même en cas de crash informatique et ainsi garantir la cohérence du contenu de la base de données.
En 2009, IBM DB2, Oracle Database, MySQL, PostgreSQL et Microsoft SQL Server sont les principaux systèmes de gestion de base de données sur le marché.
Mise à disposition
Cette section ne cite pas suffisamment ses sources. Pour l'améliorer, ajouter en note des références vérifiables ou les modèles {{refnec}} ou {{refsou}} sur les passages nécessitant une source.
Les bases de données sont de plus en plus souvent mises à disposition de leurs utilisateurs sur des serveurs, via l'internet. Les accès y sont plus ou moins sécurisés.Certains producteurs de données (collectivités surtout) mettent certaines de leurs bases de données à disposition de tous et chacun, de manière libre. Les données dont ils sont légalement propriétaires ou dépositaires avec autorisation de diffusion (des photos par exemple) peuvent être dans ce cas accessibles en licence libre (ex cc-by-sa), ou parfois l'ensemble de la base elle-même peut être accessible en licence libre (ODBL par exemple). Ces licences permettent de conserver la propriété intellectuelle sur les contenus, tout en autorisant le ré-usage et la transformation, en citant la source. De nombreuses autres licences différentes, plus ou moins contraignantes existent.
Utilisations
La manipulation de données est une des utilisations les plus courantes des ordinateurs15. Les secteurs de la finance, des assurances, des écoles, de l'administration publique et les médias, secteurs majeurs de la société de l'information, qui offrent des services fondés sur des informations, utilisent des bases de données3. Parmi les domaines d'utilisation pratiques il y a les inventaires (stocks, magasins, bibliothèques), les outils de réservation (vols en avion, cinéma, ...), l'octroi de permis (de conduire, de chasse, de propriétaire de chien, ...), les ressources humaines, les salaires, la production industrielle (les machines de production sont souvent informatiques), ainsi que la comptabilité et la facturation3.Quelques exemples
Les applications informatiques de collecte de renseignements administratifs tels que dossiers médicaux, fiscaux, ou des permis de port d'arme font usage des bases de données.Dans une application informatique de billetterie informatisée, les billets de voyage ou de concert sont enregistrés dans une base de données.
Dans un logiciel de comptabilité ou de trésorerie, les écritures ainsi que le plan comptable sont enregistrés dans une base de données; le bilan est un rapport obtenu par synthèse automatique du contenu de la base de données. De même dans une application informatique de gestion de la production assistée par ordinateur (abr. GPAO), l'état des stocks, les disponibilités du personnel et les délais sont enregistrés dans une base de données, et servent de base pour un rapport de planification.
Dans un logiciel d'aide au diagnostic médical, un ensemble de pathologies et de diagnostics est enregistré dans une base de données. Un moteur de recherche extrait les diagnostics qui correspondent le mieux aux pathologies choisies par l'utilisateur.
Le Système d'information Schengen est une application de base de données utilisée par les services de police et des douanes de l'Espace Schengen, en Europe pour collecter et s'échanger des renseignements judiciaires (mandat d'arrêts, empreintes digitales, interdictions de séjour, ...)
ITIS est une application informatique qui contient un catalogue de taxinomie des espèces vivantes (végétaux, animaux, champignons, microorganismes, ...).
La CIA, agence de renseignements aux États-Unis possède une des plus grandes banques de données au monde.
Le catalogue de la librairie en ligne amazon.com est une des plus grandes bases de données au monde avec plus de 250 millions d'ouvrages catalogués. La société Amazon.com est également propriétaire de la banque de données filmographique IMDb.
Dans les systèmes d'information géographique les informations de cartographie sont enregistrées dans une base de données. Des informations de cartographie du ciel sont disponibles dans les catalogues d'étoiles.
Dans les logiciels de forums ou de messagerie électronique, les messages sont souvent enregistrés dans une base de données.
Les logiciels antivirus utilisent souvent une base de données dans laquelle sont enregistrées les empreintes laissées par les virus informatique.
La base de registre est une base de données qui contient les paramètres de configuration des systèmes d'exploitation Windows. Le Object Data Manager est une base de données similaire des systèmes d'exploitation AIX.
Dans un logiciel de gestion électronique de documents, des documents électroniques sont enregistrés dans une base de données. Dans un système de gestion de contenu ce sont des morceaux de page web qui sont enregistrés dans une base de données et dans un logiciel de e-commerce se sont les annonces, ainsi que les annonceurs.
Dans une plate-forme d'apprentissage en ligne, les exercices, les examens, les cursus, ainsi que l'annuaire des enseignants et des apprenants sont enregistrés dans une base de données.
Un progiciel de gestion intégrée tel que SAP ERP (de la société SAP AG) comporte un ensemble de logiciels qui utilisent tous la même base de données. Les différents logiciels de ce type de produit concernent des activités ordinaires des entreprises telles que la facturation, la comptabilité, les salaires, le suivi des commandes et des stocks.
Types d'utilisations
- Un moteur de recherche est un logiciel qui permet de retrouver des ressources (fichiers, documents, pages web) associées à des mots quelconques. La liste des mots et des ressources associées sont stockés dans une base de données.
- Une banque de données est une application informatique qui sert à collecter et permettre la publication d'un ensemble d'informations librement consultables et relatives à un domaine de connaissances. Par exemple des renseignements de bibliographie, de linguistique de justice, de chimie, d'architecture, de cinématographie, de biologie, d'astronomie, de géographie, de médecine ou de jeu. Les renseignements sont souvent stockés dans des bases de données et la banque de données équipée d'un moteur de recherche.
- Un système d'informations
est une application informatique qui sert à collecter, classer,
regrouper et modifier un ensemble d'informations relatives à une
activité. Les systèmes d'informations sont d'usage courant dans les entreprises et les institutions telles que les douanes, les hôpitaux, la marine, les transports ou l'armée.
- Un "enterprise resource planning" (ERP) est système d'informations qui sert à la collecte et la maintenance des informations concernant l'activité d'une entreprise (ventes, achats, salaires...)
- Un système d'information géographique est un système d'informations qui permet de collecter, manipuler des renseignements de cartographie (coordonnées de routes, de forêts, de plans d'eau). Ces informations sont utilisées par le système d'informations géographique pour créer des cartes géographiques.
- Un entrepôt de données est une base de données qui est utilisée pour collecter et stocker définitivement des informations historiques qui seront utilisées pour des statistiques et des analyses. Les informations sont souvent collectées à intervalle régulier depuis un système d'informations.
- L'informatique de gestion est un domaine d'activité et de connaissances orientées vers la manipulation de masse de grandes quantités d'informations (gestion de données), un secteur qui utilise des bases de données. Les L4G sont des environnements de développement des applications de base de données souvent utilisés en informatique de gestion. Ils sont composés d'un système de gestion de base de données et d'un langage de programmation.
Aucun commentaire:
Enregistrer un commentaire