¿Cuál es el lenguaje de consulta en DocumentDB (en Azure)?

DocumentDB es una base de datos orientada a documentos de código abierto que usa el lenguaje de consulta mongoDB (MQL) para consultar y manipular datos. MQL proporciona una sintaxis enriquecida y expresiva para trabajar con documentos similares a JSON almacenados en formato JSON binario (BSON). Este lenguaje está diseñado para funcionar de forma natural con estructuras jerárquicas de documentos, que admiten consultas simples y agregaciones complejas. Como lenguaje de consulta ampliamente adoptado en el ecosistema de bases de datos de documentos, MQL permite a los desarrolladores aplicar sus conocimientos existentes de MongoDB mientras trabajan con el motor de almacenamiento escalable y flexible de DocumentDB.

Modelo

En DocumentDB, MQL se basa en el modelo de documento, donde los datos se almacenan como colecciones de documentos en lugar de filas en tablas. Las consultas se expresan mediante una sintaxis declarativa con operadores que comienzan con el signo de dólar ($), como $match, $projecty $group. Este enfoque permite a los desarrolladores filtrar, transformar y agregar datos a través de una canalización de operaciones que se pueden componer y reutilizar.

El lenguaje admite de forma nativa documentos y matrices anidados, lo que permite a los desarrolladores trabajar directamente con estructuras de datos complejas y jerárquicas sin necesidad de combinaciones ni normalización. MQL proporciona un conjunto completo de operadores para la comparación, las operaciones lógicas, la manipulación de matrices y la agregación. El motor de consultas de DocumentDB usa índices para ejecutar consultas de forma eficaz en grandes conjuntos de datos, lo que hace que sea adecuado para cargas de trabajo operativas y analíticas.

Compatibility

La filosofía de compatibilidad de DocumentDB se centra en proporcionar compatibilidad completa con el lenguaje de consulta mongoDB (MQL) a la vez que mantiene la flexibilidad para evolucionar con el ecosistema de bases de datos de documentos. El sistema evalúa la compatibilidad mediante la medición de la compatibilidad entre categorías de operadores clave, incluidas las fases de agregación, los operadores de agregación, los operadores de consulta y proyección y los operadores de actualización. Esta compatibilidad garantiza que puede aplicar sus conocimientos existentes de MongoDB y migrar aplicaciones con una fricción mínima, ya que la mayoría de las construcciones MQL estándar funcionan sin problemas sin modificaciones.

Al compilar aplicaciones con DocumentDB, se beneficia de la compatibilidad transparente que elimina la necesidad de traducción de consultas o adaptación de código. Puede usar los controladores de cliente de MongoDB y los kits de desarrollo de software (SDK) existentes directamente, ya que DocumentDB implementa el protocolo de conexión de MongoDB. Las operaciones CRUD típicas, las canalizaciones de agregación y las estrategias de índice se transfieren directamente desde sistemas basados en MongoDB, lo que le permite centrarse en la lógica de la aplicación en lugar de las adaptaciones específicas de la base de datos. Aunque DocumentDB amplía continuamente su cobertura de operador, la base estable garantiza que las aplicaciones sigan siendo portátiles y fáciles de mantener.