Anar al contingut

Base de senyes documental

De L'Enciclopèdia, la wikipedia en valencià

Una base de senyes documental està constituïda per un conjunt de programes que almagasenen, recuperen i gestionen senyes de documents o senyes d'algun modo estructurats. Este tipo de bases de senyes constituïxen una de les principals subcategoría dins de les denominades bases de senyes NOSQL. A diferència de les bases de senyes relacionals, estes bases de senyes estan dissenyades al voltant d'una noció abstracta de "Document".

Els documents

El concepte central d'una base de senyes orientada a documents és el concepte mateix de Document. Mentres cada implementació de base de senyes orientada a documents diferix en els detalls, en general totes elles compartixen el principi de que els documents encapsulan i codifiquen senyes o informació seguint algun format estàndar. Entre les codificació usades en l'actualitat es troben XML, YAML i JSON, aixina com formats binaris com BSON.

Els documents dins d'una base de senyes orientada a documents són similar, d'algun modo, a registres, tuplas o files en una base de senyes relacional pero menys rígits. No se'ls requerix ajustar-se a un esquema estàndar ni tindre tots les mateixes seccions, atributs, claus o coses per l'estil. Per eixemple un document pot ser:

 {
    Nom:Miguel Ignacio Barboteo Piñero
    Direcció:Màlaga
    Professió:"Bancari"
 }

Mentres que un atre:

 {
     Nom:Miguel Ignacio Barboteo Piñero
     Direcció:Màlaga
     Fills:[
        {Nom:"Iñaki"},
        {Nom:"Nando"},
        {Nom:"Maria"},
    Esposa:[
        {Nom:"Maria Begoña"},

Estos documents contenen alguna informació similar i una atra diferent. Al contrari que una base de senyes relacional en la que tots els registres deuen tindre els mateixos atributs -que poden quedar buits- , en un document no queden 'camps' buits. D'esta manera és possible afegir nova informació sense necessitat d'establir qué informació queda exclosa.

Claus

S'direccionar els documents per mig d'una clau única que identifica el document. Generalment esta clau es compon d'una simple cadena. En alguns casos pot tractar-se d'un URI o un camí, que servix per a rescatar el document de la base de senyes. Generalment la base de senyes manté un índex de dites claus, per lo que la recuperació és ràpida.

Recuperació

Atra de les característiques que definixen una base de senyes orientada a documents és que, més allà de la senzilla correspondència clau-document (o clau-valor) usada per a recuperar un document, la base de senyes oferix un API o un llenguage d'interrogat per a recuperar documents segons el seu contingut. Per eixemple, per a preguntar per tots els documents que tenen un valor donat en un camp. El conjunt de característiques del API o del llenguage d'interrogat, aixina com lo que s'obté, varia significativament entre distintes implementacions.

Organisació

Les distintes implementacions de bases de senyes documentals que podem organisen els documents de molt distintes formes, entre les que es troben:

  • Coleccions
  • Etiquetes
  • Metadatos amagats
  • Jerarquia de directoris

Implementacions

Nom Editor Llicència Llenguage Notes API RESTful
BaseX BaseX Team BSD Java, XQuery Soporta XML, JSON i formats binaris; arquitectura client-servidor; busques de text complet concurrents. Sí
ArangoDB triAGENS Apache 2 C, C++ & Javascript Almagasén de documents i presentació gràfica. Sí[1]
Clusterpoint Clusterpoint Ltd. Lliure/Comercial[2] C++ Base de senyes documental sense esquema, busca de text complet, ordenació per rellevància i funcionament en Cluster. Sí
Couchbase Server Couchbase, Inc. Apache Erlang i C Base de senyes NOSQL distribuïda documental. Sí[3]
CouchDB Apache Software Foundation Apache Erlang JSON sobre REST/HTTP en propietats ACID per mig de multiversion concurrency control llimitades. Usa map i reduïx per a les vistes i interrogats.[4] Sí[5]
eXist eXist, [2] GPL XQuery, Java XML sobre REST/HTTP, WebDAV, busca de text complet en Lucene, validació, versionado, clustering, triggers, reescritura de URLs, coleccions, ACLs, XQuery Update Sí[6]
FleetDB FleetDB MIT Clojure Una base de senyes basada en [3] sense esquema, optimisada per a desenroll Agile. (desconegut)
Jackrabbit Apache Software Foundation Apache Java (desconegut)
Lotus Notes IBM Proprietaria LotusScript, Java, Lotus Formula (desconegut)
MarkLogic MarkLogic Corporation Lliure o comercial REST, Java, XQuery, XSLT, C++ Base de senyes documental distribuïda en multiversion concurrency control, busca de text complet i transaccions ACID. Sí
MongoDB MongoDB, Inc GNU AGPL v3.0[7] C++ Base de senyes documental optimisada per a contingut molt transitori Opcional[8]
MUMPS[9] Proprietaria i GNU Affero GPL[10] MUMPS Molt usada en aplicacions mèdiques. (desconegut)
OrientDB Orient Technologies Apache Java JSON sobre HTTP Sí
Redis BSD License ANSI C Almagasén clau-valor en soport de llistes i conjunts (desconegut)
Rocket U2 Rocket Software Proprietaria UniData, UniVerse Sí (Beta)
RavenDB Hibernating Rhinos GNU AGPL v3.0[11][12] o Commercial C# JSON sobre HTTP Sí
Knosys Micronet, S.A. Propietària C++, Java, C# Base de senyes documental en control de fluix de treball Si

Bases de senyes XML

La majoria de les bases de senyes XML estan orientades a documents.


Referències

  1. ↑ «ArangoDB REST API». Archivat des de l'original, el 4 de juliol de 2014. Consultat el 4 de març de 2013.
  2. ↑ Clusterpoint DBMS Licensing Options
  3. ↑ «Copia archivada». Archivat des de l'original, el 20 d'agost de 2012. Consultat el 21 d'agost de 2012.
  4. ↑ CouchDB Overview
  5. ↑ «CouchDB Document API». Archivat des de l'original, el 1 de març de 2013. Consultat el 4 de març de 2013.
  6. ↑ [1]
  7. ↑ Llicència MongoDB
  8. ↑ «Interfaços MongoDB REST». Archivat des de l'original, el 29 de giner de 2013. Consultat el 4 de març de 2013.
  9. ↑ «Extreme Database programming with MUMPS Globals». Archivat des de l'original, el 6 de juliol de 2016. Consultat el 4 de març de 2013.
  10. ↑ GTM MUMPS FOSS on SourceForge
  11. ↑ «NOSQL Document Database - Embedding RavenDB into an ASP.NET MVC 3 Application», docs.microsoft.com, 2011. Consultat el 2021-01-04.
  12. ↑ RavenDB OSS license