Las bases de datos de documentos son una clase de bases de datos no relacionales (bases de datos NoSQL). Las bases de datos de documentos almacenan datos relacionados en un formato de documento. Se utilizan para diseñar, consultar y almacenar los datos en un formato de documento (documento JSON, XML, YAML o formatos binarios como BSON y PDF). El software se utiliza para almacenar, recuperar y gestionar información orientada a documentos, también conocida como datos semiestructurados. El software de bases de datos de documentos, también conocido como software de bases de datos orientadas a documentos, es una subclase de almacenes de clave-valor, que es un concepto de base de datos NoSQL. En un almacén de clave-valor o base de datos de clave-valor, los datos se gestionan (almacenan, reciben) utilizando matrices asociativas. Este tipo de estructura de datos se llama "diccionario". Los diccionarios son una colección de objetos, y los objetos son el repositorio central de almacenamiento de datos que almacenan diferentes campos que contienen los datos. Algunos de los ejemplos clave incluyen MongoDB, Amazon DynamoDB, Google Cloud Firestore, Couchbase Server, Apache CouchDB, entre otros. Muchas de estas bases de datos, como MongoDB y Couchbase Server, son de código abierto.
Para llamar a los datos cuando se requiera, se utiliza una clave, que actúa como el identificador único para el registro dentro de toda la base de datos. Al hablar de bases de datos de documentos, es importante identificar qué es exactamente un "documento". Un documento almacena o codifica todos los datos en un formato estándar. Estos formatos incluyen JSON, XML, YAML y otros.
Las bases de datos de documentos difieren en gran medida de las bases de datos SQL relacionales tradicionales. La principal causa de diferencia entre los dos tipos de bases de datos es que las bases de datos relacionales almacenan modelos de datos como una relación: tablas, filas, y un objeto podría ser parte de numerosas tablas. Sin embargo, las bases de datos de documentos almacenan toda la información relacionada de un objeto dentro de una sola instancia de la base de datos, y cada objeto puede almacenarse de manera única. Las bases de datos de documentos no tienen restricciones como las bases de datos relacionales.
Operación CRUD
Las operaciones principales para las bases de datos de documentos se abrevian como CRUD: crear, recuperar, actualizar y eliminar. Estas son las cuatro operaciones básicas que todas las bases de datos de documentos soportan.
¿Qué es una clave?
Como se mencionó anteriormente, una clave actúa como un identificador único que es representativo del documento. Se utiliza para recuperar los datos de la base de datos de documentos. Por lo general, hay un índice de claves disponible, lo que facilita al usuario referirse y recuperar los datos representados por esa clave en particular. En caso de que un usuario necesite agregar o eliminar un documento dentro de la base de datos de documentos, se puede utilizar una clave para lo mismo.
Recuperación de datos
Aunque un método de clave a documento es suficiente para la recuperación de datos, la base de datos de documentos ofrece una API que los usuarios pueden usar para consultar datos basados en el contenido. El conjunto de lenguaje de consulta o APIs de consulta varía significativamente entre diferentes implementaciones de modelos de datos. En esto, las bases de datos de documentos utilizan los metadatos del contenido para clasificar el contenido y diferenciarlo entre sí.
Organización de datos
Hay varias formas de organizar documentos dentro del software de bases de datos de documentos. Un documento puede existir como una o múltiples colecciones.
Jerarquía: Los documentos se agrupan en una estructura en forma de árbol y tienen una ruta típica.
Colecciones: Grupo de documentos dentro del software.
Etiquetas de datos: Documentos o datos adicionales ubicados fuera del contenido.
¿Por qué usar bases de datos de documentos?
Dado que los datos se almacenan en un formato que está muy cerca del código de desarrollo de aplicaciones utilizado por los desarrolladores, se requiere mucha menos traducción para que los datos sean utilizados por una aplicación. Este tipo de bases de datos brinda a los desarrolladores la libertad y la flexibilidad para rehacer varios documentos en el formato adecuado para esa aplicación. A su vez, si sus necesidades de aplicación cambian con el tiempo, la base de datos de documentos también puede modelarse en el mismo formato de datos requerido por la aplicación.
¿Cuándo puede un usuario optar por bases de datos de documentos?
El software de bases de datos de documentos se utiliza para almacenar grandes volúmenes de datos en un formato de clave-valor, lo que facilita al usuario acceder a los datos. Considerando la cantidad significativa de datos a procesar, algunos de los usos clave del software incluyen gestión de contenido, perfiles de usuario para una empresa, catálogos y varios otros documentos.