Jeudi 21 novembre à 18h30
Découvrez les métiers de la data et comment vous y former !

Depuis plus de quatre ans, notre objectif est de permettre au plus grand nombre de se former aux métiers de la data, quelque soit votre profil. Cet évènement vous permettra de découvrir nos programmes de formation conçus pour vous permettre de vous reconvertir vers la data ou de monter en compétences !

Je m'inscris
Les métiers de la data vous intéressent mais vous ne savez pas comment y accéder ? - Le jeudi 21 novembre à 18h30
Les métiers de la data vous intéressent mais vous ne savez pas comment y accéder ? - Le jeudi 21 novembre à 18h30
Les métiers de la data vous intéressent mais vous ne savez pas comment y accéder ? - Le jeudi 21 novembre à 18h30
Je m'inscris

Base de données : Qu’est-ce que c’est ? Définition et fonctionnement

Une base de données est une bibliothèque digitalisée qui stocke des données. Devenue incontournable pour toutes les entreprises, nous allons voir pourquoi.

Mis à jour le
15/5/2024

Les bases de données sont devenues aujourd’hui un outil essentiel. Au début très utilisées par les entreprises de la tech, elles sont maintenant présentes dans toutes les entreprises qui manipulent un minimum de données. Depuis leur création, les bases de données se sont diversifiées pour répondre à des problématiques différentes. Nous allons voir dans cet article l’origine des bases de données et les différents types qui existent aujourd’hui.

Qu’est-ce qu’une base de données ?

Une base de données est une version digitale d’une bibliothèque d’information. Il s’agit d’une collection d’informations stockées électroniquement sur un système informatique, généralement un Data Center. Par exemple, un outil de gestion de la relation clients (CRM) est un modèle de base de données composé de fichiers, d’enregistrements et de champs :

  • Un fichier correspond équivaut au répertoire des clients,
  • Un enregistrement correspond aux données associées à un client,
  • Un champ correspond à une donnée clients : nom, prénom, adresse, produits achetés etc…

Pour être manipulé par une entreprise ou leurs clients, les bases de données doivent être exécutées par des systèmes de gestion de base de données (DBMS). Il faut voir ces DBMS comme des interfaces homme-machine, le système permet à l’utilisateur de pouvoir manipuler une machine complexe avec une interface simple et intuitive. L’ensemble entre les données et le DBMS s’appelle système de base de données.

Il existe aujourd’hui un grand nombre de modèles de bases de données. Cependant les leaders actuels sont les BDD relationnelles (SQL) et non-relationnelles (NoSQL).

Histoire des bases de données

Les bases de données étant un système de stockage, leur histoire remonte à la création des premiers disques durs... en 1956

Le terme base de données (Data Base) a été inventé en 1964 pour désigner une collection d'informations partagées par différents utilisateurs d'un système d'informations militaires.

Voici un petit historique de l’utilisation des bases de données :

  • 1960 : Apparition des premières bases de données hiérarchiques
  • 1968 : Premier système de gestion de bases de données (SGBDR) dans un système d’exploitation
  • 1970 : Thèse de Edgar.F.Codd à l’origine des bases de données relationnelles
  • 1980 : Apparition des bases de données orientées objet
  • 2005 : Déploiement des bases de données non-relationnelles

Les 5 composants d’une base de données

Pour fonctionner, une base de données a besoin de 5 composants principaux :

  1. Le matériel : Constitue le matériel physique (Hardware) qui stocke et exécute les données.
  2. Le logiciel : Représente l’outil qui gère et exécute le matériel (Software). Par exemple, Windows est le software qui exécute ton ordinateur (Hardware).
  3. Les données : L’information qui est stockée sur le matériel.
  4. La procédure : La procédure est la logique d’exécution de la manipulation de la base de données. Il s’agit d’un ensemble de règles d’exécution.
  5. Le langage d’accès à la base de données : Le langage qui permet d’exécuter les requêtes qui ont une action sur les données.

ACID : les quatre propriétés de base des transactions de bases de données 

Propriétés ACID d'une base de données

Aujourd’hui, avec le développement d’internet et des objets connectés (IOT ou Internet of things), les entreprises se retrouvent submergées de données. Le flux de données que doivent stocker celles-ci quotidiennement est colossal et croissant. Ainsi les entreprises se retrouvent face à deux situations :

  • Un problème de gestion : Il faut gérer ces données pour faire tourner l’entreprise mais il y en a trop.
  • Une opportunité de création de valeur : Il y a des données stockées dans les serveurs des entreprises depuis des années. Aujourd’hui, nous avons les outils pour les dépoussiérer et leur donner de la valeur. 

Pour répondre à ces deux situations les entreprises se mettent à utiliser des systèmes de gestion de base de données (SGBD). 

C'est ainsi que se sont développés les métiers de Data Analysts qui permettent aux entreprises de reprendre le contrôle sur ces données et de leur donner de la valeur. Le Big Data devient aujourd’hui un outil permettant d’accroître les performances des entreprises.

Si toi aussi tu veux devenir un maître de la Data alors fonce t’inscrire à notre formation et rejoins la grande famille des Databirdies !



Les différents types de bases de données 

Nous avons vu que les bases de données étaient donc un outil incontournable aujourd’hui pour les entreprises. Cependant, il existe une grande variété de types de bases de données qui permettent soit de gérer des applications web, soit des databases d’entreprise pour les clients, soit des modèles de prédiction et d’autres encore !

Les base de données relationnelles (SQL)

Le SQL, ou Structured Query Language, est un langage de programmation qui est aujourd’hui un des outils les plus utilisés par les Data Analysts. Ce langage représente aussi l’outil de communication majeur avec les systèmes de bases de données relationnelles (SGBDR).

Ces bases de données relationnelles se composent de 3 parties :

  • Les Tables : Un tableau de colonnes et de lignes. L’ensemble des tables composent la base de données (BDD).
  • Les Colonnes définissent les différentes catégories qui composent les informations d’une donnée.
  • La clé primaire et la clé étrangère permettent de mettre en relation différentes tables.

Les bases de données relationnelles sont très utiles pour les entreprises qui manipulent des données structurées ou fortement codifiées.

 Les bases de données Orientées Objet

Les bases de données orientées objet regroupent les données sous forme de petit paquets proches en termes de caractéristiques. Ces regroupements prennent la forme d'objets. Les informations ne sont pas regroupées sous formes de tables comme pour les bases de données relationnelles. Cela a pour avantage de pouvoir interroger les données ensemble au sein de l’objet et pas de devoir réaliser des jointures SQL.

Ce type de base de données est très utile pour les Data Analysts qui utilisent des langages de programmation orientés objet (POO) comme outil principal. Effectivement, comme les données sont stockées sous forme d’objet alors leur manipulation rentre parfaitement dans le cadre d’utilisation des POO.

Ces bases de données peuvent aussi prendre en charge des hiérarchies de stockage. Les objets peuvent être regroupés sous forme de classes. Ces classes peuvent elle-même être des sous-classes d’autres classes. On peut ainsi regrouper les données par catégorie croissante.

Par exemple, on peut avoir un objet de type « Clio ». Il s’agit donc d’une voiture avec certaines caractéristiques : sa marque, son prix, sa couleur, son numéro de série, etc. Cette « Clio » peut être stockée dans une classe « Voiture » qui regroupe tous les objets rentrant dans cette catégorie. Enfin, la classe « Voiture » peut être une sous-classe de la classe « Véhicule ».

 {{banniere-article}}

 Les base de données non relationnelles (NoSQL)

NoSQL est une base de données non-structurée. Cela signifie qu'elle n’utilise pas de clé primaire ou étrangère pour mettre en relation plusieurs tables. Ce schéma particulier apporte une flexibilité au NoSQL très intéressante pour les projets plus spécifiques.

La conception des databases NoSQL la rend très utile dans le monde des applications web qui gèrent des données en temps réel. Notamment celles qui traitent des flux de données à grande échelle (Big Data) en cloud.

Il existe aujourd’hui 4 grandes familles de bases de données NoSQL :

  • Clé-Valeur
  • Colonnes
  • Graph-based
  • Documents
Bases de données non relationnelles

L’idée de cette base de données est de stocker les données (valeur) dans un document qui contient toutes les informations . En général, la valeur est un document JSON qui est très utilisé par les Data Analysts mais elle peut aussi être un document XML, YAML, BSON ou même TXT.

Prenons l’exemple d’une base de données de produits pour un magasin.

La base de données contient une série de dossiers. Une clé représente l’identification du dossier. La clé peut être le numéro de série du produit. L’intérieur du dossier est une série de données qui contiennent toutes les infos d’un produit : Prix, Nom, Couleur, Types, etc …

Lorsqu’on veut récupérer les informations sur un produit, il suffit donc d’interroger sa clé.

Les bases de données Clé-Valeur

Cette base de données permet de stocker la donnée sous forme d’un couple clé/valeurs.

  • La clé représente une information numérique ou écrite sur la donnée.
  • La valeur est la donnée en elle-même. 

Pour faire plus simple, on labellise la donnée (la valeur) avec une clé.

Cette base de données s’allie bien à une base de données distribuées car elle permet de stocker chaque couple dans des serveurs différents et pas forcément ensemble. Ensuite lorsque l’utilisateur réalise une requête sur la base de données une fonction du SGBD s’occupe de retrouver les bons couples pour répondre à la requête.

 Les bases de données Graph-based

La base de données Graph-based est modélisée à partir de graphes. Ces graphiques représentent des données complexes ainsi que les relations qui les composent de manière claire. Ils stockent ces données sous la forme d'un ensemble de données volumineux et cohérent.

Les graphiques sont constitués :

  • De nœuds (nodes) : représentent des entités de données
  • D'arêtes (edges) : représentent les relations entre les objets.

Les deux composants sont représentés visuellement sous forme de points et de lignes. Les arêtes ont chacune un point de départ et un point d'arrivée. Ils ont donc une direction qui montre la relation des données.

Cependant, chaque nœud a toujours un certain nombre de relations avec d'autres nœuds, qu'ils soient entrants, sortants ou non dirigés.

Les bases de données Colonne

Ce type de base de données ressemble aux bases de données relationnelles mais à la différence qu’il se construit de manière dynamique.

Premièrement, contrairement au BDD relationnelles, dans chaque table le nombre de colonnes n’est pas fixé pour toutes les lignes. Les colonnes sont dynamiques, chaque ligne peut avoir un nombre différent de colonnes sans pour autant qu’apparaisse la valeur NULL (ce qui arrive en SQL avec des colonnes fixes).

Ensuite, toutes les colonnes d’une table (en NoSQL on parle de famille de colonnes) sont stockées dans le même fichier, avec un nombre fixe de lignes. Cela permet de ne pas télécharger l’intégralité de la table à chaque fois que l’on veut appeler une ligne de cette table, on appelle les quelques colonnes qui concernent une ligne.

En NoSQL on a juste besoin de faire une requête sur une ligne et celle-ci sera directement extraite dans le cloud.

Cette base de données apporte certaines améliorations au système relationnel mais elle a aussi ses inconvénients. Par exemple, il est impossible de faire des jointures comme en SQL.

Les deux bases de données ci-dessus sont leaders du marché des bases de données. Néanmoins, dès qu'une entreprise lance son exploitation de base de données, elle doit choisir entre ces deux technologies. C’est pourquoi si tu te poses la même question nous avons mis au point un comparatif pour éclairer ce choix : SQL ou NoSQL.



Les base de données distribuées

Une base de données distribuées est une base de données qui ne se limite pas à un seul serveur. La base de données est stockée dans plusieurs serveurs, parfois même plusieurs Data Centers ! Ces différents serveurs sont interconnectés et permettent de récupérer les informations voulues sur chaque site.

Quand l’utilisateur réalise une requête, il n'a aucune information sur la localisation des données. Le logiciel va chercher chaque donnée nécessaire dans chaque serveur pour répondre à cette requête.

Le plus gros utilisateur de ce genre de base de données est le NoSQL. N’étant pas une BDD structurée, le NoSQL permet d’éclater les données et les stocker dans des serveurs différents.

Ce genre de base de données est très apprécié des GAFAM. En effet, ceux-ci ont à leur disposition une grande quantité de serveurs au travers de leur diverses opérations. C’est donc une aubaine pour eux de pouvoir optimiser leur stockage de BDD à l’aide de la distribution.

Autres types de base de données

Nous avons vu les plus répandues mais il existe encore d’autres types de base de données.

  • Base de données réseau : Elles créent des liens multiples entre les différentes catégories de la base de données. La hiérarchie n’est pas unique (pas une seule connexion).
  • Base de données hiérarchique : La structure d’enregistrement des données est une arborescence. Il s’agit d’une des plus anciennes méthodes de stockage des BDD.
  • Base de données orientée texte : Les données sont stockées sur des fichiers .txt ou ini.
  • Base de données autonomes : Il s’agit d’une base de données où la plupart des opérations réalisées sur la BDD sont automatisées.  Ce qui permet de pouvoir se concentrer sur les tâches les plus complexes.

Le monde de la data science t'intéresse ? Découvre le programme de nos formations ou contacte-nous :)

Les DBMS : Database Management System

Les avantages d’une base de données hébergée sur le cloud

Certaines bases de données sont hébergées au sein même de l’entreprise, dans des serveurs. On parle dans ce cas de base de données locale. D’autres sont hébergées dans un endroit complètement différent, chez un hébergeur cloud

Les hébergeurs fournissent à des clients des espaces réservés sur leur serveur, évitant à une entreprise de posséder et d’entretenir le leur. 

Héberger une base de données sur le cloud fournit une multitude d’avantages

  • Une grande accessibilité : il est très facile pour les employés d’accéder à la base de données. Il suffit juste de créer de nouveaux identifiants, pas besoin de faire de manipulation en interne.
  • Robustesse : en cas de panne, pas de problème de perte de tes données. L’hébergeur met en place un système de backup qui protège tes données.
  • Pas de coût d’entretien : comme le matériel n’est pas le tien, pas besoin de payer les entretiens et les maintenances.
  • Performance : un hébergeur possède des serveurs beaucoup plus puissants que les entreprises lambda. Pouvoir stocker tes données sur ces serveurs te permettra de profiter de ces performances sans en payer le prix.

Le cloud est le choix que font beaucoup d'entreprises aujourd’hui. C’est pour ça que des entreprises comme Amazon (AWS) et Google (Google Drive) voient leur activité augmenter de façon exponentielle ces dernières années.

Les meilleures bases de données Open source

Les bases de données Open-source sont des bases de données libres de droit. Chaque membre de la communauté peut modifier la structure du logiciel afin de l’améliorer. Le logiciel est à la disposition des utilisateurs et aucune partie de sa création n'est cachée du public. Cette caractéristique fait de ces bases de données des outils qui évoluent en permanence et s’adaptent à toutes les nouvelles utilisations.

Les deux leaders du marché des bases de données open-source sont les suivants :

  • MySQL : il s’agit d’un système de gestion de base de données relationnelles SQL. Il est un des plus utilisés dans le monde.
  • PostgreSQL: il s’agit aussi d’un système de gestion de base de données relationnelles SQL. Il est le concurrent direct de MySQL et est apprécié pour sa robustesse et son respect de la norme SQL.

Pour en savoir plus, nous avons comparé les avantages et inconvénients de PostgreSQL vs MySQL.

  Les meilleurs bases de données commerciales

Les bases de données commerciales sont des produits mis au point par des entreprises privées. Le contenu du code est protégé et les utilisateurs ne peuvent pas en modifier le contenu.  

Les avantages principaux de ces bases de données sont leur fiabilité et leur compatibilité avec les autres outils de ces entreprises. Pour une entreprise comme Oracle qui développe une grande série d’outils pour les entreprises, choisir sa base de données peut être utile en bien des mesures.

  • Oracle NoSQL : ce système permet de gérer les modèles de base de données clé-valeurs, colonnes et documents
  • Oracle SQL : base de données Oracle pour un système de base de données relationnelle SQL.
  • Microsoft SQL Server : un système de gestion de base de données (SGBD) qui permet de stocker des données promettant leur qualité, leur pérennité et leur confidentialité.
  • MongoDB: il s’agit d’une database NoSQL open source orientée document. MongoDB utilise des documents de type JSON pour stocker toutes les données. Elle se distingue des bases de données relationnelles par sa flexibilité et ses performances.
Faites un premier pas dans la data avec nos cours gratuits
Démarrer
Difficulté :