tipo para guardar ejemplos dato attribute archivos archivo sql nosql couchdb cassandra document-based

sql - para - title html



¿Cuáles son los mejores usos de las tiendas de documentos? (2)

Las tiendas de familia de columnas como Bigtable y Cassandra tienen capacidades de consulta muy limitadas. La aplicación es responsable de mantener los índices para consultar un modelo de datos más complejo.

Las bases de datos de documentos le permiten consultar el contenido, no solo la clave. También administrará los índices por usted, reduciendo la complejidad de su aplicación.

El diseño impulsado por el dominio evangeliza el uso de agregados y objetos de valor. Como señala Ayende , los agregados (complejos) son candidatos muy naturales para ser almacenados como un solo documento, en lugar de normalizarlos sobre tablas múltiples o familias de columnas. Esto reducirá la complejidad de su capa de persistencia. También hay menos posibilidades de que los datos relacionados se dispersen en varios nodos, ya que todos los datos están contenidos en un solo documento.

Si su aplicación necesita almacenar objetos polimórficos, las bases de datos de documentos también son un buen candidato. Por supuesto, esto también podría almacenarse en Cassandra, pero no tendrá tantas capacidades de consulta. Al menos no fuera de la caja.

Piense en una base de datos de documentos como un lujoso automóvil deportivo. No necesita un conductor profesional (lea: aplicación compleja) para llevarlo de A a B, tiene características como aire acondicionado y asientos cómodos y trasladará la pista de alta escalabilidad en un tiempo aceptable. Sin embargo, si desea establecer un registro de vuelta en la pista de alta escalabilidad, necesitará un conductor profesional y un automóvil altamente optimizado (por ejemplo, Cassandra), que carece de características como el aire acondicionado.

He estado escuchando mucho sobre almacenes de datos orientados a documentos como CouchDB. Entiendo los usos de BigTable como tiendas como Cassandra. Después de leer esta pregunta , me preguntaba cuáles serían las condiciones para utilizar un almacén de documentos.


Otra característica de CouchDB es que puede crear esas agregaciones, no como documentos almacenados manualmente, sino como vistas (que se derivan de los datos almacenados y se actualizan automáticamente).

Esto es como las ventanas eléctricas, los asientos con calefacción o el estéreo para patear.