Depuis que l’homme a commencé à systématiser la connaissance, il a eu besoin de classer et de définir la réalité qui l’entoure. Pour ce faire, il a introduit des méthodes quantitatives pour décrire tout ce qui l'entourait.
Une base de données est un outil informatique qui a pour but de rendre facile et efficace non seulement le stockage des descriptions de réalités d'intérêt, mais surtout la récupération de données de manière corrélée afin d'en extraire des informations.
Prenons un exemple simple. Les produits en vente dans un supermarché peuvent être décrits par marque, nom commercial, description et prix. Un client régulier peut disposer d'une « carte de fidélité » à laquelle sont associées certaines données personnelles, la composition de la cellule familiale et le diplôme. Chaque ticket de supermarché relie le client aux produits achetés à une certaine date et heure. Ce sont les données.
Mais quelles informations pouvons-nous extraire ? Par exemple, quel est le jour de la semaine où la plus grande quantité de bière est vendue, ou le type d'aliments achetés par les familles dont au moins un membre possède un diplôme universitaire.
Plus nous stockons de détails pour une réalité donnée, plus grande est la possibilité d’interroger le système pour en extraire des informations précieuses. En anglais, le verbe utilisé pour exprimer le concept de remise en question du système est question qui a en fait une racine latine, le verbe quaéro (demander à obtenir quelque chose). Le secret pour créer une base de données pouvant potentiellement être utilisée pour un large éventail de requêtes est de représenter les données descriptives d’une réalité sous une forme atomique et non agrégée.
Dans l'exemple précédent, la description du produit n'est pas une bonne méthode si l'on insère des détails comme par exemple. le poids d'un produit ou le nombre de colis emballés ensemble. Les données qui ne sont pas explicitement cataloguées rendent leur traitement très complexe car elles nécessitent une interprétation du contenu.
Pour rendre le catalogage des données intuitif, on utilise la construction de tableaux dans lesquels une entité d'intérêt est représentée par des lignes (par exemple un produit en vente, un patient, etc.) et ses caractéristiques par des colonnes (par exemple, marque, nom du produit, prix). , etc.). Un tableau peut également représenter des relations entre différentes entités. Par exemple, si je dois représenter le lien de propriété d'un véhicule, je n'aurai besoin que d'un tableau dans lequel chaque ligne indique le code fiscal du propriétaire et la plaque d'immatriculation du véhicule, c'est-à-dire les deux caractéristiques qui me permettent d'identifier de manière unique le propriétaire et le véhicule. .
Celui décrit jusqu'à présent est le modèle de données relationnelles proposé par Edgar Codd (IBM1) qui représente encore aujourd'hui le standard de représentation des données, également grâce à la simplicité du langage développé pour interroger le système (SQL, parfois appelé acronyme de Structured Query Language, bien qu'en réalité ce soit le nom donné au standard du langage pour le différencier du nom commercial utilisé par IBM, SEQUEL).
La disponibilité d'une grande quantité d'informations détaillées stockées dans une base de données relationnelle permet d'extraire des informations utiles pour le suivi, la gestion et la planification stratégique d'une organisation. Par exemple, l'agrégation des recettes individuelles d'un établissement commercial, ou des évaluations de bénéfices d'un étudiant, permettent d'étudier respectivement l'évolution globale des ventes (par plages horaires de la journée, par type de clientèle, etc.) ou des parcours étudiants (résultats aux examens universitaires par semestre, par filière, etc.). Ces opérations sont réalisées dans Entreposage De Données, archives où les données sont stockées sous forme agrégée. Les outils d'analyse de données utilisés dans un entrepôt de données sont appelés Business Intelligence et comprennent plusieurs techniques statistiques et statistiques machine learning. Le terme a été utilisé dans le passé Data Mining indiquant que les données sont une mine dont on peut extraire de la valeur.
Le modèle relationnel permet de stocker efficacement les données et de pouvoir effectuer différents types de corrélations, mais avec une lenteur intrinsèque de traitement due à la séparation des informations en tables distinctes qui nécessite plusieurs opérations de lecture du système de stockage pour produire le résultat. Les modèles NoSQL se sont répandus ces 20 dernières années2 (Pas seulement SQL) spécialisé dans le stockage d'agrégats. Un exemple tiré du secteur du commerce électronique peut clarifier le concept. Lorsque nous recherchons un produit et comparons différentes alternatives, nous avons la possibilité de sélectionner les caractéristiques souhaitées. Il s’agit d’une fonctionnalité typique des modèles relationnels qui stockent les caractéristiques des produits de manière structurée. Par exemple, pour un téléviseur on peut sélectionner la taille de l'écran, la résolution, la présence ou l'absence de certains ports de connexion, etc. Lorsque nous procéderons à l'achat, nous pourrons utiliser un code de réduction ou une offre du jour. Tous ces détails sont stockés dans un seul élément d'une base de données NoSQL qui représente l'équivalent du reçu ou de la facture. En effet, il serait fastidieux de mémoriser l’historique des différentes versions des produits vendus, des campagnes promotionnelles et des codes de réduction à travers le modèle relationnel.
Dans une organisation moderne, on trouve donc différentes bases de données, chacune spécialisée dans un but précis : des bases de données relationnelles pour stocker tous les détails d'une réalité spécifique, et des bases de données NoSQL pour représenter des agrégats faciles à récupérer sans avoir besoin de corréler à chaque fois les informations. On parle donc souvent de mémorisation persistante polyglotte3.
La nécessité de stocker des données puis de les traiter s'est considérablement accrue aujourd'hui grâce au développement de différents types de capteurs que l'on désigne souvent sous le terme générique Internet des Objets (IoT). Dans notre vie quotidienne, nous utilisons probablement un appareil portable pour surveiller certains paramètres de notre activité. De nombreux véhicules (voitures, scooters, vélos...) permettent la mémorisation de l'itinéraire emprunté et de l'usure de certains composants. Dans nos maisons, il y a des compteurs de services publics smart car ils communiquent, à intervalles de temps constants, des informations sur la consommation d'électricité, de gaz ou d'eau. Ces données sont pertinentes à la fois pour identifier instantanément des situations anormales ou dangereuses, mais elles sont surtout utiles lorsqu’elles sont agrégées pour identifier des tendances et des habitudes.
Cette abondance de données, structurées et non structurées, gérées avec différents modèles et technologies (souvent appelées lac de données), a donné naissance ces dernières années à la figure professionnelle de Data Scientist, c'est-à-dire le spécialiste de la chaîne des données depuis leur production, jusqu'à leur filtrage, nettoyage et agrégation pour arriver aux techniques d'interrogation qui permettent d'extraire l'information.
Nous vivons dans ce qu'on appelle la société de l'information4, où le stockage, la représentation et la corrélation entre les données constituent la véritable richesse. Ce n'est pas un hasard si en 2006 le dicton devenu célèbre « Les données sont le nouveau pétrole »5, et plus récemment que « L’intelligence artificielle est la nouvelle électricité »6.
1https://www.ibm.com/history/edgar-codd
2https://sheinin.github.io/nosql-database.org/
3https://martinfowler.com/articles/nosqlKeyPoints.html
4https://www.manuelcastells.info/en/
5https://www.sheffield.ac.uk/cs/people/academic-visitors/clive-humby
6https://www.gsb.stanford.edu/insights/andrew-ng-why-ai-new-electricity