O que é um banco de dados de documentos?

O banco de dados de documentos definido

Um banco de dados de documentos é um tipo de banco de dados não relacional projetado para armazenar e consultar dados como documentos do tipo JSON. Os bancos de dados de documentos facilitam para que os desenvolvedores armazenem e consultem dados usando o mesmo formato de modelo de documento que usam no código do aplicativo. A natureza flexível, semiestruturada e hierárquica dos documentos e dos bancos de dados de documentos permite que eles evoluam conforme as necessidades dos aplicativos. O modelo de documentos funciona bem com casos de uso como catálogos, perfis de usuários e sistemas de gerenciamento de conteúdo, onde cada documento é único e evolui com o passar do tempo. Os bancos de dados de documentos possibilitam uma indexação flexível, consultas ad hoc eficientes e análises de dados em grupos de documentos.

No exemplo a seguir, um documento semelhante ao JSON descreve um livro.

[
    {
        "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
        }
    }
]

Casos de uso

Gerenciamento de conteúdo

Um banco de dados de documentos é uma ótima opção para aplicativos de gerenciamento de conteúdo, como blogs e plataformas de vídeo. Com um banco de dados de documentos, cada entidade que o aplicativo rastrear pode ser armazenado como um documento único. Um desenvolvedor consegue atualizar um aplicativo de maneira mais intuitiva no banco de dados de documentos, à medida que as exigências evoluem. Além disso, se o modelo de dados precisar mudar, somente os documentos afetados precisarão ser atualizados. Nenhuma atualização de esquema é exigida e nenhum tempo de inatividade de banco de dados é necessário para fazer as alterações. 

Catálogos

Bancos de dados de documentos são eficientes e eficazes para o armazenamento de informações de catálogo. Por exemplo, em um aplicativo de comércio eletrônico, diferentes produtos costumam ter números de atributos diferentes. Gerenciar milhares de atributos em bancos de dados relacionais é ineficiente e afeta a performance de leitura. Ao usar um banco de dados de documentos, os atributos de cada produto podem ser descritos em um único documento para gerenciamento fácil e maior velocidade de leitura. Alterar os atributos de um produto não afetará os outros.

Bancos de dados de documentos na AWS

Amazon DocumentDB (com compatibilidade com o MongoDB)

O Amazon DocumentDB (com compatibilidade com o MongoDB) é um serviço de banco de dados de documentos rápido, escalável, altamente disponível e totalmente gerenciado que oferece suporte a cargas de trabalho do MongoDB. Os desenvolvedores podem usar o mesmo código de aplicativo, drivers e ferramentas do MongoDB para executar, gerenciar e dimensionar cargas de trabalho no Amazon DocumentDB e aproveitar o desempenho, a escalabilidade e a disponibilidade aprimorados sem precisarem se preocupar em gerenciar a infraestrutura subjacente.

Comece a usar o Amazon DocumentDB hoje mesmo.