JSON : Tout savoir sur le langage qui a détrôné le SQL

-
3
 m de lecture
-

Dans un système informatique, la bonne gestion d’une base de données est cruciale. Historiquement, ces bases de données structurées étaient maintenues par le langage SQL (Structured Query Language). Mais depuis quelques temps, une autre forme de base de données s’est de plus en plus démocratisée : les bases de données NoSQL, comprenez ici des bases de données maintenues par d’autres langages informatiques que le SQL. Et parmi ces langages, l’un d’entre eux a gagné en popularité.

Qu’est-ce que le JSON ?

Comme définit par la documentation web de Mozilla, le JSON, acronyme de « JavaScript Object Notation », est un format de données textuel utilisé pour représenter des données structurées de façon semblable aux objets Javascript. 

Ce format s’est imposé comme un choix privilégié pour la représentation et l’échange de données grâce à une structure simple mais expressive. Ce format se distingue en effet par sa légèreté, sa lisibilité et sa capacité à s’adapter facilement à tous types de données.

Comment structurer nos données en JSON ?

La structure du JSON repose sur un ensemble de paires clé-valeur, où chaque paire est délimitée par des accolades. Les clés, représentées sous forme de chaînes de caractères, identifient les valeurs associées. Ces valeurs peuvent être des objets, des tableaux, des chaînes de caractères, des nombres, des booléens ou des valeurs nulles. Une séquence de paires clé-valeur forme un objet JSON, et plusieurs objets peuvent être regroupés dans un même tableau.

Prenons l’exemple de la structure JSON suivante :

{
 "employé": {
   "nom": "Dupont",
   "prénom": "Jean",
   "âge": 30,
   "département": "Ressources Humaines"
 },
 "projets": [
   "Gestion des employés",
   "Optimisation des processus"
 ]
}

Dans cet exemple, nous avons un objet principal composé de deux paires clé-valeur

  • La clé « employé » pointe vers un objet représentant les détails d’un employé. Les sous-clés comprennent « nom », « prénom », « âge » et « département », chacune associée à une valeur spécifique.
  • La clé « projets » pointe vers un tableau qui représente les projets auxquels l’employé participe. Le tableau contient deux éléments de chaînes de caractères.

Quels sont les types de données en JSON ?

Le JSON prend en charge plusieurs types de données, et permet ainsi de stocker et manipuler diverses formes d’informations. Les principaux types sont les suivants :

  • Objet (Object) : Une collection non ordonnée de paires clé-valeur.
  • Tableau (Array) : Une liste ordonnée de valeurs.
  • Chaîne de caractères (String) : Une séquence de caractères Unicode, encadrée par des guillemets.
  • Nombre (Number) : Une valeur numérique, entière ou à virgule flottante.
  • Booléen (Boolean) : Prend la valeur true (vraie) ou false (fausse)
  • Null : Indique l’absence de valeur.

Quelles sont les applications du format JSON ?

Nous allons distinguer ici trois applications possibles du format JSON, notamment dans le contexte de la Data Science. D’abord, grâce à sa structure légère et à sa lisibilité, le JSON est couramment utilisé pour échanger des données entre différentes applications et services. 

Supposons par exemple que nous souhaitons partager des données issues d’une analyse statistique. Les résultats peuvent être encapsulés dans un objet JSON, puis transmis à d’autres parties prenantes ou applications. Cette approche simplifie alors la compréhension des données et leur intégration dans différents contextes.

{
 "type": "analyse_statistique",
 "donnees": {
   "moyenne": 75.2,
   "ecart_type": 5.8,
   "resultats": [72, 80, 68, 75, 82],
 }
}

Ensuite, et comme mentionné en introduction, le JSON tend à se démocratiser comme langage de choix dans la gestion de base de données. Les bases de données NoSQL, notamment celles basées sur des documents, adoptent souvent le JSON comme format de stockage. De même, le JSON se prête parfaitement au stockage des données temporaires. Par exemple, les données temporaires peuvent être générées par l’utilisateur, notamment dans le cas d’un formulaire soumis sur un site Web. 

L’exemple suivant illustre comment le format JSON peut permettre de stocker des données, ici dans le cas d’une commande en ligne :

{
 "user_id": 1,
 "nom": "Smith",
 "commandes": [
   {"produit": "Livre", "quantite": 2},
   {"produit": "Stylo", "quantite": 5}
 ],
 "adresse": {
   "rue": "1 Terrasse Bellini",
   "ville": "Puteaux",
   "code_postal": "92800"
 }
}

Enfin le JSON trouve également sa place dans la manipulation de données. Que ce soit pour représenter les résultats d’une analyse, les configurations de modèles ou les ensembles de données, le JSON facilite la représentation et l’échange de ces informations

Supposons par exemple que nous ayons un ensemble de données représentant les performances d’étudiants dans différentes matières. Ces données peuvent être structurées en JSON pour une utilisation aisée dans des analyses ou des visualisations :

[ {
   "etudiant": "Alice",
   "matieres": {
     "mathematiques": 90,
     "sciences": 85,
     "histoire": 78
   }
 },
 {
   "etudiant": "Bob",
   "matieres": {
     "mathematiques": 88,
     "sciences": 92,
     "histoire": 80
   }
 } ]

Conclusion

Le JSON s’impose de plus en plus comme un format de choix pour manipuler, stocker, et échanger des données. Ce langage s’applique aujourd’hui non seulement à des bases de données NoSQL, mais aussi dans la programmation de code API et les services Web.

Pour devenir un expert en gestion de bases de données, aussi bien SQL que NoSQL, n’hésitez pas à suivre la formation Data Engineer proposée par DataScientest !

Facebook
Twitter
LinkedIn

DataScientest News

Inscrivez-vous à notre Newsletter pour recevoir nos guides, tutoriels, et les dernières actualités data directement dans votre boîte mail.

Vous souhaitez être alerté des nouveaux contenus en data science et intelligence artificielle ?

Laissez-nous votre e-mail, pour que nous puissions vous envoyer vos nouveaux articles au moment de leur publication !

Newsletter icone
icon newsletter

DataNews

Vous souhaitez recevoir notre
newsletter Data hebdomadaire ?