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

Définition d'une base de données de documents

Une base de données de documents est un type de base de données non relationnelle conçu pour stocker et interroger des données sous forme de documents de type JSON. Les bases de données de documents permettent aux développeurs de stocker et d'interroger une base de données en utilisant le même format de modèle de document que celui qu'ils utilisent dans leur code d'application. La nature souple, semi-structurée et hiérarchique des documents et des bases de données de documents leur permet d'évoluer avec les besoins des applications. Le modèle de document fonctionne bien avec les cas d’utilisation, comme des catalogues, des profils d'utilisateurs et des systèmes de gestion de contenu où chaque document est unique et évolue au fil du temps. Les bases de données de documents permettent une indexation flexible, des requêtes ad hoc efficaces et des analyses sur des recueils de documents.

Dans l'exemple suivant, un document de type JSON décrit un livre.

[
    {
        "year" : 2013,
        "title" : "Turn It Down, Or Else!",
        "info" : {
            "directors" : [ "Alice Smith", "Bob Jones"],
            "release_date" : "2013-01-18T00:00:00Z",
            "rating" : 6.2,
            "genres" : ["Comedy", "Drama"],
            "image_url" : "http://ia.media-imdb.com/images/N/O9ERWAU7FS797AJ7LU8HN09AMUP908RLlo5JF90EWR7LJKQ7@@._V1_SX400_.jpg",
            "plot" : "A rock band plays their music at high volumes, annoying the neighbors.",
            "actors" : ["David Matthewman", "Jonathan G. Neff"]
        }
    },
    {
        "year": 2015,
        "title": "The Big New Movie",
        "info": {
            "plot": "Nothing happens at all.",
            "rating": 0
        }
    }
]

Cas d'utilisation

Gestion de contenu

Une base de données de documents est un bon choix pour les applications de gestion de contenu comme les blogs et les plateformes vidéo. Avec une base de données de documents, chaque entité que suit l'application peut être stockée comme un document unique. La base de données de documents est plus intuitive pour qu'un développeur puisse mettre à jour une application à mesure que les exigences évoluent. De plus, si le modèle de données doit être modifié, seuls les documents concernés doivent être mis à jour. Aucun schéma de mise à jour ou interruption de la base de données n'est nécessaire pour effectuer les modifications. 

Catalogues

Les bases de données de documents sont un bon moyen de stocker des informations sur les catalogues. Par exemple, dans une application d'e-commerce, des produits différents ont souvent des attributs différents. Gérer des milliers d'attributs dans des bases de données relationnelles n'est pas efficace, et cela nuit aux performances de lecture. En utilisant une base de données de documents, les attributs de chaque produit peuvent être décrits dans un seul document pour une gestion aisée et une vitesse de lecture supérieure. Si vous modifiez les attributs d'un produit, ceux d'un autre produit ne seront pas modifiés.

Bases de données de documents courantes

Amazon DocumentDB (avec compatibilité MongoDB)

Amazon DocumentDB (avec compatibilité MongoDB) est un service de base de données de documents rapide, évolutif, hautement disponible et entièrement géré qui prend en charge les charges de travail MongoDB. Les développeurs peuvent utiliser le même code d'application, les mêmes pilotes et les mêmes outils MongoDB pour exécuter, gérer et faire évoluer les charges de travail sur Amazon DocumentDB et bénéficier de performances, d'une évolutivité et d'une disponibilité accrues sans avoir à se soucier de gérer l'infrastructure sous-jacente.

Démarrez avec Amazon DocumentDB dès aujourd’hui.

MongoDB

MongoDB est une base de données non relationnelle open source qui prend en charge les systèmes de stockage orientés document de style JSON. Cette base de données prend en charge un modèle de données flexible qui vous permet de stocker des données de n'importe quelle structure, et vous propose un vaste éventail de fonctionnalités, y compris la prise en charge complète de l'index, le partage et la réplication. AWS vous permet de configurer l'infrastructure pour prendre en charge le déploiement de MongoDB de manière flexible, scalable et rentable dans le cloud AWS. 

Utilisez le guide AWS MongoDB Quick Start (également disponible au format PDF) pour déployer un cluster MongoDB dans le cloud AWS. Pour consulter une présentation de MongoDB et de son implémentation dans AWS, reportez-vous au livre blanc MongoDB sur AWS : directives et bonnes pratiques. Consultez également AWS security recommendations for MongoDB.

Couchbase

Conçue pour optimiser les applications mobiles, IoT et web attrayantes, la plateforme Couchbase Data de niveau entreprise inclut Couchbase Server et Couchbase Mobile. Couchbase Server est une base de données non relationnelle résidant dans le cloud, conçue avec une architecture distribuée à des fins de performance, de scalabilité et de disponibilité. Elle permet aux développeurs de créer des applications en mettant à profit la puissance de SQL et la souplesse de JSON. Couchbase Mobile inclut une base de données entièrement intégrée, une sécurité interne et une synchronisation automatique en temps réel avec le serveur hautement scalable Couchbase.

Utilisez le guide AWS Couchbase Quick Start (également disponible au format PDF) pour déployer un cluster Couchbase dans le cloud AWS.