For faster navigation, this Iframe is preloading the Wikiwand page for Base di dati orientata al documento.

Base di dati orientata al documento

Da Wikipedia, l'enciclopedia libera.

Una base di dati orientata al documento è un programma per applicazioni orientate al documento. Questi sistemi potrebbero essere implementati come strato sopra un database relazionale o a oggetti.

Le basi di dati orientate al documento non memorizzano i dati in tabelle con campi uniformi per ogni record come nei database relazionali, ma ogni record è memorizzato come un documento che possiede determinate caratteristiche. Qualsiasi numero di campi con qualsiasi lunghezza può essere aggiunto al documento. I campi possono anche contenere pezzi multipli di dati.

Il concetto fondamentale è quello di Documento. Ogni implementazione differisce nei dettagli della definizione di documento, ma in generale si assume che siano incapsulati e codificati i dati o le informazioni in base ad uno standard. Le codifiche più comuni sono XML, YAML, JSON, e BSON così come formati binari tipo PDF o Microsoft Office.

I documenti all'interno della base di dati sono simili ai record dei database relazionali, ma sono meno rigidi. Non è richiesta l'adesione ad uno schema standard. Un esempio di documento:

 {
    Nome:"Mario", 
    Indirizzo:"Via Veneto 10", 
    Hobby:"Calcio"
 }

Un altro esempio potrebbe essere questo:

 {
     Nome:"Luca", 
     Indirizzo:"Via del Popolo 20", 
     Figli:[
        {Nome:"Annamaria", Eta:3}, 
        {Nome:"Luigi", Eta:2}
   ]
 }

I documenti negli esempi hanno similitudini e differenze. Diversamente da un database relazionale, in cui in ogni record ci sono gli stessi attributi ed i campi inutilizzati rimangono vuoti, non ci sono campi vuoti in nessun documento. Questo sistema consente di aggiungere nuove informazioni e non richiede che vengano indicati i campi vuoti.

I documenti sono indirizzati all'interno del database mediante key univoche. Spesso la chiave è una semplice stringa, in alcuni casi è un URI o una path. Solitamente il database mantiene un indice delle chiavi per consentire un recupero veloce del documento.

Una delle caratteristiche particolari di un database orientato ai documenti è che, oltre alla semplice ricerca del documento per chiave, il database offre anche API (o un semplice linguaggio di query) che permette il recupero in base al contenuto. Questo, ad esempio, consente di recuperare documenti basandosi sul valore di un determinato campo. Il set di API (o il linguaggio di interrogazione) così come le performance variano in maniera significativa a seconda dell'implementazione.

Implementazioni

[modifica | modifica wikitesto]

Tutti i database XML sono database orientati al documento. Alcuni esempi:

  • Lotus Notes (IBM)
  • askSam (askSam Systems)[1]
  • Apstrata, su apstrata.com. URL consultato il 4 giugno 2010 (archiviato dall'url originale il 30 gennaio 2010).
  • Datawasp (Significant Data Systems)
  • SimpleDB (Amazon.com)
  • CRX (Day Software)
  • MUMPS Database[2]
  • UniVerse (Rocket Software)
  • UniData (Rocket Software)

Implementazioni Open source:

  1. ^ DLIST - The University of Arizona Campus Repository, su dlist.sir.arizona.edu. URL consultato il 4 giugno 2010 (archiviato dall'url originale il 1º ottobre 2009).
  2. ^ Extreme Database programming with MUMPS Globals (PDF), su gradvs1.mgateway.com. URL consultato il 4 giugno 2010 (archiviato dall'url originale il 6 luglio 2016).
  3. ^ Licensing - MongoDB
  4. ^ RavenDB - 2nd generation document database, su ravendb.net. URL consultato il 29 aprile 2019 (archiviato dall'url originale il 6 aprile 2019).

Voci correlate

[modifica | modifica wikitesto]
  Portale Informatica: accedi alle voci di Wikipedia che trattano di informatica
{{bottomLinkPreText}} {{bottomLinkText}}
Base di dati orientata al documento
Listen to this article

This browser is not supported by Wikiwand :(
Wikiwand requires a browser with modern capabilities in order to provide you with the best reading experience.
Please download and use one of the following browsers:

This article was just edited, click to reload
This article has been deleted on Wikipedia (Why?)

Back to homepage

Please click Add in the dialog above
Please click Allow in the top-left corner,
then click Install Now in the dialog
Please click Open in the download dialog,
then click Install
Please click the "Downloads" icon in the Safari toolbar, open the first download in the list,
then click Install
{{::$root.activation.text}}

Install Wikiwand

Install on Chrome Install on Firefox
Don't forget to rate us

Tell your friends about Wikiwand!

Gmail Facebook Twitter Link

Enjoying Wikiwand?

Tell your friends and spread the love:
Share on Gmail Share on Facebook Share on Twitter Share on Buffer

Our magic isn't perfect

You can help our automatic cover photo selection by reporting an unsuitable photo.

This photo is visually disturbing This photo is not a good choice

Thank you for helping!


Your input will affect cover photo selection, along with input from other users.

X

Get ready for Wikiwand 2.0 🎉! the new version arrives on September 1st! Don't want to wait?