# Bases de données orientées documents : JSON et moteurs d'indexation

Sciences de l'information · Master 1

> NoSQL orienté documents : JSON, schéma souple, comparaison au relationnel et moteurs d'indexation.

## Introduction

Les bases orientées documents stockent des enregistrements sous forme de documents autonomes, le plus souvent en JSON, dont la structure peut varier d'un document à l'autre. Elles conviennent bien à des données hétérogènes comme des notices de métadonnées, des journaux ou des résultats d'extraction de textes.

Elles ne remplacent pas le relationnel : elles répondent à d'autres besoins, notamment la souplesse du schéma et la montée en charge. Elles se combinent souvent à des moteurs d'indexation pour la recherche plein texte dans des collections numérisées.

## Objectifs d'apprentissage

- Décrire le modèle de document et le format JSON
- Comparer base orientée documents et base relationnelle
- Identifier des cas d'usage documentaires adaptés

## Concepts clés

- **Document** : Unité de stockage autonome en JSON, avec champs imbriqués et listes.
- **Schéma souple** : Les documents d'une même collection peuvent avoir des champs différents.
- **Dénormalisation** : On regroupe dans un document des données liées, au prix d'une redondance.
- **Moteur d'indexation** : Un système spécialisé dans la recherche plein texte, souvent associé à un stockage de documents.

## Conclusion

Relationnel et documents répondent à des besoins différents. Un professionnel de l'information choisit selon la nature des données, l'exigence d'intégrité et le besoin de recherche, et sait combiner les deux dans une même architecture.

## Cartes

### Qu'est-ce qu'une base orientée documents ?

Une base NoSQL qui stocke des documents structurés, généralement en JSON, regroupés en collections.

### Que signifie NoSQL ?

Une famille de bases non exclusivement relationnelles, souvent « not only SQL ».

### Qu'est-ce qu'un schéma souple ?

Une structure qui peut varier d'un document à l'autre sans modifier la base entière.

### Quel est l'avantage pour des notices hétérogènes ?

On peut stocker des champs propres à un type de ressource sans colonnes vides.

### Quel est un inconvénient par rapport au relationnel ?

Les jointures et les contraintes d'intégrité sont moins naturelles, et la redondance accrue complique les mises à jour.

### Qu'est-ce que la dénormalisation ?

Le fait d'inclure dans un document des données liées pour accélérer la lecture, au prix de doublons.

### Que sont les propriétés ACID ?

Atomicité, cohérence, isolation et durabilité, garanties classiques des transactions relationnelles.

### Qu'est-ce qu'un index inversé ?

Une structure associant chaque terme aux documents qui le contiennent, base de la recherche plein texte.

### Quand choisir le relationnel plutôt qu'un document ?

Quand les données sont très structurées, interconnectées et nécessitent une forte intégrité, comme un système de prêt.

### Citez un cas documentaire pour une base de documents.

Stocker des notices de métadonnées issues de plusieurs schémas, ou des résultats d'extraction de textes numérisés.

## Glossaire

- **NoSQL** : Famille de bases de données non strictement relationnelles.
- **Collection** : Ensemble de documents dans une base de documents.
- **JSON** : Format textuel de documents avec champs et listes.
- **Dénormalisation** : Regroupement de données liées dans une même structure.
- **Index inversé** : Structure terme vers documents pour la recherche plein texte.
- **ACID** : Propriétés garantissant la fiabilité des transactions.

https://ruvy.ch/decks/-P5CqLIlKOCFJJ1gERgl
