Una base de datos orientada a documentos es un tipo de base de datos NoSQL en la que los datos se almacenan en archivos de documentos binarios. Este tipo de base de datos asocia cada documento con una clave única que toma la forma de una cadena, ruta o URI. Las claves se utilizan para localizar y extraer documentos individuales de la base de datos. Una base de datos orientada a documentos también puede denominarse almacén de documentos.
"Debido a que el panorama de las bases de datos es complejo y confuso de navegar, es importante comprender completamente los diferentes tipos de DBMS, junto con cuándo y por qué usarlos". - Craig S. Mullins
Las opciones de indexación específicas, así como las llamadas a la interfaz del programa de aplicación (API) o el lenguaje de consulta, variarán según los documentos que se almacenen en la base de datos. La forma en que se organizan los documentos también variará según el contenido del documento. Normalmente, los documentos se organizan por etiquetas, metadatos o colección. Una ventaja importante de utilizar un almacén de documentos es que si en el futuro es necesario cambiar el modelo de datos, solo se tendrán que actualizar los documentos afectados.
Las bases de datos orientadas a documentos populares incluyen MongoDB, DynamoDB y CosmosDB.
MongoDB es uno de los ejemplos más populares de una base de datos orientada a documentos. Incluye características como compatibilidad total con índices, replicación y fragmentación. Una función central de MongoDB es su escalabilidad horizontal, lo que la convierte en una base de datos útil para empresas que ejecutan aplicaciones de big data.
DynamoDB es un servicio de base de datos NoSQL totalmente administrado proporcionado por Amazon Web Services. Un usuario puede interactuar con el servicio mediante la consola de administración de AWS o una API de DynamoDB. El servicio también proporciona a los usuarios un alto nivel de rendimiento de E / S. Cada consulta de DynamoDB se ejecuta mediante un identificador de clave principal, que puede ubicar cada elemento.
Cosmos DB es una estructura de base de datos operativa en la nube de Microsoft que es adecuada para cargas de trabajo de gran lectura que necesitan escalar geográficamente. Esta base de datos se puede utilizar cuando una aplicación requiere varios modelos de datos. Cosmos DB admite varios tipos de bases de datos, como almacenes de documentos, almacenes de valores clave, gráficos y bases de datos de series de tiempo.