Documentary base
Introduction
A document database is made up of a set of programs that store, retrieve and manage document data or structured data in some way. This type of databases constitute one of the main subcategories within the so-called NoSQL databases. Unlike relational databases, these databases are designed around an abstract notion of "Document".
The documents
Contenido
El concepto central de una base de datos orientada a documentos es el concepto mismo de Documento. Mientras cada implementación de base de datos orientada a documentos difiere en los detalles, en general todas ellas comparten el principio de que los documentos encapsulan y codifican datos o información siguiendo algún formato estándar. Entre las codificaciones usadas en la actualidad se encuentran XML, YAML y JSON, así como formatos binarios como BSON.
Los documentos dentro de una base de datos orientada a documentos son similar, de algún modo, a registros, tuplas o filas en una base de datos relacional pero menos rígidos. No se les requiere ajustarse a un esquema estándar ni tener todos las mismas secciones, atributos, claves o cosas por el estilo. Por ejemplo un documento puede ser:.
Mientras que otro:.
Estos documentos contienen alguna información similar y otra diferente. Al contrario que una base de datos relacional en la que todos los registros deben tener los mismos atributos -que pueden quedar vacíos- , en un documento no quedan 'campos' vacíos. De este modo es posible añadir nueva información sin necesidad de establecer qué información queda excluida.
Keys
Documents are addressed using a unique key that identifies the document. Generally this key is made up of a simple string. In some cases it may be a URI or a path, which is used to retrieve the document from the database. Generally the database maintains an index of these keys, so recovery is fast.
Recovery
Another defining characteristic of a document-oriented database is that, beyond the simple key-document (or key-value) correspondence used to retrieve a document, the database offers an API or a query language to retrieve documents based on their content. For example, to ask for all documents that have a given value in a field. The feature set of the API or query language, as well as what you get, varies significantly between different implementations.
Organization
The different implementations of document databases that we can organize the documents in very different ways, among which are:
Implementations
XML databases
Most XML databases are document-oriented.
References
- [1] ↑ «ArangoDB REST API». Archivado desde el original el 4 de julio de 2014. Consultado el 4 de marzo de 2013.: https://web.archive.org/web/20140704195001/https://www.arangodb.org/manuals/current/ImplementorManual.html
- [2] ↑ Clusterpoint DBMS Licensing Options.: https://web.archive.org/web/20120502205649/http://www.clusterpoint.com/licensing/
- [3] ↑ «Copia archivada». Archivado desde el original el 20 de agosto de 2012. Consultado el 21 de agosto de 2012.: https://web.archive.org/web/20120820182153/http://www.couchbase.com/docs/
- [4] ↑ CouchDB Overview Archivado el 20 de octubre de 2011 en Wayback Machine.: https://couchdb.apache.org/docs/overview.html
- [5] ↑ «CouchDB Document API». Archivado desde el original el 1 de marzo de 2013. Consultado el 4 de marzo de 2013.: https://web.archive.org/web/20130301093229/http://wiki.apache.org/couchdb/HTTP_Document_API
- [6] ↑ [1].: http://exist-db.org
- [7] ↑ Licencia MongoDB.: http://www.mongodb.org/display/DOCS/Licensing