Aurabase Logo
aurabasedocs
docsServicesNoSQL Document Store

NoSQL & Document Store

Moteur de base de données orienté documents compatible MongoDB. Stockez des structures de données JSON flexibles, indexez vos collections et exécutez des pipelines d'agrégation complexes.

9 min de lecture·Niveau intermédiaire·Révisé le 19 août 2026
#
Vue d’ensemble

Le Document Store Aurabase

En complément du moteur relationnel PostgreSQL, Aurabase permet d'activer un moteur NoSQL Document Store isolé par projet. Il offre la flexibilité des documents semi-structurés avec la robustesse de l'infrastructure Aurabase (sauvegardes, contrôle d'accès, observabilité).

Cas d’usage recommandés
Privilégiez le moteur NoSQL pour les événements de tracking/analytics, les catalogues de produits aux attributs hétérogènes, la télémétrie temps réel et les sessions utilisateurs.
#
Exemples

Opérations sur les collections

nosql-insert.tsTYPESCRIPT
const { data, error } = await aura.nosql
.collection('events')
.insertOne({
type: 'user_signup',
userId: 'usr_9482',
metadata: { country: 'FR', plan: 'pro' },
timestamp: new Date(),
})
#
Fonctionnalités

Moteur optimisé pour la production

Schéma flexible

Documents JSON/BSON dynamiques. Idéal pour logs, catalogues e-commerce, télémétrie IoT et profils non normalisés.

Opérateurs de requête

$eq, $ne, $in, $nin, $gt, $gte, $regex, $exists et requêtes sur objets et tableaux imbriqués.

Pipelines d’agrégation

Transformations en plusieurs étapes avec $match, $project, $group, $sort, $unwind et calculs de métriques en streaming.

Indexation performante

Index simples, composés, texte pour la recherche plein texte et index TTL avec purge automatique des documents expirés.

Explain & Profiling

Plan d’exécution détaillé pour chaque requête (COLLSCAN vs IXSCAN, temps d’exécution, index utilisés).

API REST & SDK unifié

Accès direct via les endpoints REST /v1/nosql/{project_id}/* ou le SDK @aurabase/aurabase-js.

#
Performance

Optimisation des requêtes (Explain)

Chaque requête peut être analysée pour inspecter les étapes d'exécution, identifier si un index a été sollicité (IXSCAN) ou si un scan complet a eu lieu (COLLSCAN) :

explain-plan.json
JSON
{
"queryPlanner": {
"winningPlan": {
"stage": "IXSCAN",
"indexName": "metadata.country_1_timestamp_-1",
"keysExamined": 42,
"docsExamined": 42
},
"executionTimeMillis": 1.2
}
}
#
Architecture

PostgreSQL vs NoSQL : Quel moteur choisir ?

CritèrePostgreSQL (Relationnel)Document Store (NoSQL)
StructureSchéma strict, migrations versionnéesSchéma dynamique sans contraintes rigides
Relations & JointuresJointures SQL complexes, clés étrangèresDocuments imbriqués / dénormalisés
Contrôle d’accèsRow-Level Security (RLS) déclaratif SQLPermissions par collection & rôle token
Recherche Vectoriellepgvector natif avec index HNSWFiltrage par attributs et index texte
Idéal pourCore banking, SaaS B2B, gestion de droitsLogs, catalogues dynamiques, IoT, events
Dernière mise à jour · 19 août 2026