← Retourner à la liste des articles
Image blog
Auteur

Par Maxime Jumelle

CTO & Co-Founder

Publié le 2 nov. 2020

Catégorie Machine Learning

Débrief Workshop : Comprendre les bases de données NoSQL

Les bases de données NoSQL sont très présentes dans les infrastructures Big Data, mais il n'est pas toujours évident d'avoir une idée claire sur ce que cela représente.

Au cours de ce Workshop, nous avons détaillé les différentes familles de bases de données NoSQL qui existent, lesquelles étaient les plus populaires, et surtout pourquoi s'orienter vers une base NoSQL en particulier.

01 - Les bases de données relationnelles

Avant de se diriger vers les bases de données NoSQL, revoyons le principe des bases de données relationnelles, apparues dans les années 1970. Ces bases ont plusieurs objectifs.

  • Requêter efficacement sur les données.
  • Garantir le stockage des données conformément à une schéma.
  • Assurer la haute-disponibilité des données.

Elles sont également appelées bases de données SQL car l’API standard sur ces dernières est le Structured Query Language (SQL). Mais l'usage de ces bases a évolué, notamment parce que plusieurs limitations existent.

  • Le modèle relationnel rend difficile l’évolution des données dans la base et/ou l’utilisation de différents schémas.
  • La quantité de données devient de plus en plus importante (> 100 Go).
  • Le type des données a évolué au cours du temps (graphes, longs textes, séries temporelles).

Pour résoudre cela, de nouvelles bases de données ont été pensés. C’est la naissance des bases de données non relationnelles (NoSQL).

02 - Les bases NoSQL orientées colonnes

Les bases orientées colonnes peuvent être vues comme une extension des tables relationnelles. On y retrouve le principe des tables et des colonnes.

La principale différence est que les colonnes ne sont pas fixes pour chaque ligne.

  • Cela va libérer de l’espace de stockage.
  • Les jointures entre les tables ne sont plus une nécessité.
  • L’historisation des données peut être effectuée sur une la ligne.

Cette flexibilité au niveau des colonnes permet également d’historiser beaucoup plus facilement.

❓ Quand utiliser une base NoSQL orientée colonnes ?

Elles sont adaptées lorsque les données sont très volumineuses et que de nombreux événements surviennent.

  • Analyse de données collectées par webscraping.
  • Comportement des utilisateurs.
  • Gestion de catalogues (produits, achats, ventes).

03 - Les bases NoSQL orientées documents

Dans les bases orientées documents, on considère des collections de documents, où chaque document contient une liste de champs clé/valeur.

Le format utilisé dans les documents est principalement le JSON ou le XML.

❓ Quand utiliser une base NoSQL orientée documents ?

Il faut les utiliser lorsqu’il n’y pas de relations entre les documents et les collections.

  • Gestion de catalogues diversifié (produits, achats, ventes).
  • Base d’utilisateurs et de clients.
  • Web Analytics.

04 - Les bases NoSQL orientées clé/valeur

Les bases orientées clé/valeur sont utilisées pour le stockage temporaire de données. Chaque donnée est référencée par une clé : c’est à partir de cette dernière que l’on y accède.

Contrairement aux autres bases NoSQL, celles-ci sont plus faciles à utiliser mais leurs usages sont limitées.

  • Chaque valeur peut être de n’importe quel type (chaîne de caractères, nombre, JSON…).
  • Seules les 4 opérations CRUD sont possibles.

L’utilisation des bases NoSQL orientées clé/valeur est très facile, car les clés fournissent une indexation naturelle.

❓ Quand utiliser une base NoSQL orientée clé/valeur ?

La principale utilisation des bases NoSQL orientées clé/valeur concerne la mise en cache d’informations.

  • Panier d’utilisateur (E-Commerce).
  • Collecte d’événements (tracking utilisateur).
  • Partage d’information pour des applications load-balanced.

Ces bases sont en général plutôt destinées aux développeurs qui mettent en place des solutions de haute disponibilité.

Pour en savoir plus sur les bases de données NoSQL, nous t'invitons à visionner le replay du workshop.

Voir le Webinar

Articles similaires

Blog

20 sept. 2022

Machine Learning

Hugging Face est une startup française qui s'est fait connaître grâce à l'infrastructure NLP qu'ils ont développée. Aujourd'hui, elle est sur le point de révolutionner le domaine du Machine Learning et traitement automatique du langage naturel. Dans cet article, nous allons présenter Hugging Face et détailler les taches de base que cette librairie permet de réaliser. Nous allons également énumérer ses avantages et ses alternatifs.

Nada Belaidi

Équipe Blent

Data Scientist

Lire l'article

Blog

12 juil. 2022

Machine Learning

spaCy est une bibliothèque open-source pour le traitement avancé du langage naturel. Elle est conçue spécifiquement pour une utilisation en production et permet de construire des applications qui traitent et comprennent de grands volumes de texte.

Nada Belaidi

Équipe Blent

Data Scientist

Lire l'article

Blog

4 juil. 2022

Machine Learning

Un auto-encodeur est une structure de réseaux neuronaux profonds qui s'entraîne pour réduire la quantité de données nécessaires pour représenter une donnée d'entrée. Ils sont couramment utilisés en apprentissage automatique pour effectuer des tâches de compression de données, d'apprentissage de représentations et de détection de motifs.

Nada Belaidi

Équipe Blent

Data Scientist

Lire l'article