Cos’è un database di documenti?
Definizione di database di documenti
Un database di documenti è un database di tipo non relazionale progettato per memorizzare e cercare dati come documenti di tipo JSON. I database di documenti semplificano agli sviluppatori la ricerca e la memorizzazione di dati in un database, usando lo stesso formato di modello di documento che usano nel codice dell'applicazione. La natura gerarchica, semi-strutturata e flessibile dei documenti e dei database dei documenti, gli permette di evolversi in base alle esigenze delle applicazioni. Il modello di documento funziona correttamente con casi d'uso come cataloghi, profili utente e sistemi di gestione del contenuto in cui ogni documento è unico e si evolve nel tempo. I database di documenti consentono un'indicizzazione flessibile, potente e ricerche ad hoc e analytics su raccolte di documenti.
Nell'esempio che segue, un documento di tipo JSON descrive un libro.
[
{
"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
}
}
]
Casi d'uso
Gestione dei contenuti
Un database di documenti rappresenta una scelta vincente per le applicazioni di gestione dei contenuti come blog o piattaforme video. Nei database di documenti, ogni entità di cui l’applicazione tiene traccia può essere archiviata come singolo documento. Nei database di documenti, gli sviluppatori possono aggiornare le applicazioni al variare delle richieste in maniera più intuitiva. Inoltre, se i modelli di dati devono essere cambiati, è necessario aggiornare solo i documenti interessati. L’aggiornamento degli schemi e l’inattività temporanea del database non sono necessari per apportare i cambiamenti.
Cataloghi
I database di documenti sono soluzioni efficaci per archiviare e catalogare le informazioni. Ad esempio, in un’applicazione di e-commerce, a prodotti differenti corrispondono quantità differenti di attributi. La gestione di migliaia di attribuiti attraverso un database relazionale non è efficace e la lettura risulta meno agevole. Nei database di documenti, gli attributi di ogni prodotto possono essere descritti in un unico documento favorendo la gestione e la velocità di lettura. Cambiare gli attributi di un prodotto non avrà conseguenze sugli altri.
Database di documenti in AWS
Amazon DocumentDB (compatibile con MongoDB)
Amazon DocumentDB (compatibile con MongoDB) è un servizio di database di documenti veloce, scalabile, ad alta disponibilità e pienamente gestito che supporta i flussi di lavoro MondoDB. Gli sviluppatori possono usare lo stesso codici, gli stessi driver e strumenti di MongoDB per eseguire, gestire e scalare flussi di lavoro su Amazon DocumentDB e ottenere una maggior performance, scalabilità e disponibilità senza doversi preoccupare della gestione della struttura sottostante.