La pandemia del COVID-19 ha incrementado sustancialmente el ritmo de la digitalización y, para muchas organizaciones, las demandas de datos nunca han sido mayores. A medida que las empresas aceleran sus viajes de transformación digital, la necesidad de escalar rápida y eficientemente su infraestructura de bases de datos para satisfacer las crecientes demandas de procesamiento ha impulsado la adopción de soluciones DBaaS. Este blog resumirá la comparación de tres de las principales soluciones DBaaS, NoSQL.

Altoros es un proveedor mundial de servicios informáticos que lleva dos décadas comparando bases de datos. En su último Evaluación comparativa del rendimiento de NoSQL informeAltoros ha proporcionado un análisis comparativo de tres ofertas de DBaaS NoSQL: Couchbase Cloud, MongoDB Atlas y Amazon DynamoDB. Su objetivo era medir el rendimiento relativo en términos de latencia y rendimiento que cada base de datos puede lograr, examinando el rendimiento en tres configuraciones de clúster diferentes -6, 9 y 18 nodos-, así como bajo cuatro cargas de trabajo diferentes.

Altoros Report on NoSQL Benchmark Tests 2020

Para que las pruebas fueran lo más completas posible, las cargas de trabajo variaron sustancialmente. La primera se basaba en actualizaciones, con un 50% de lecturas y un 50% de actualizaciones de los datos. La segunda era una exploración de corto alcance, que implicaba un 95% de exploraciones y un 5% de actualizaciones, mientras que la tercera carga de trabajo representaba una consulta de paginación con una única opción de filtrado a la que se aplicaban un desplazamiento y un límite. Por último, la cuarta carga de trabajo fue una consulta JOIN a la que se aplicó agrupación y ordenación.

¿Cómo se comparan los tres proveedores de DBaaS?

Caras a cara en cargas de trabajo de consulta NoSQL

Aunque cada una de las tres ofertas DBaaS tenía sus puntos fuertes y débiles, en todas las pruebas de carga de trabajo Couchbase Cloud resultó ser la más sólida de las tres. Para el primero, carga de trabajo de actualizaciónCouchbase Cloud demostró tiempos de latencia bajos en clústeres de todos los tamaños. Aunque obtuvo resultados similares a los de Amazon DynamoDB cuando se midió en un clúster de 6 nodos, Couchbase Cloud destacó en clústeres de 9 y 18 nodos con tiempos de latencia inferiores a un milisegundo.

Cuando se mide en un carga de trabajo de exploración de corto alcanceCouchbase Cloud volvió a destacar. Mientras que MongoDB Atlas obtuvo buenos resultados aquí, creciendo eficientemente a medida que se añadían más shards, Couchbase Cloud demostró los mejores resultados con un aumento gradual de las operaciones por segundo, así como la latencia más baja y estable.

Los resultados de la tercera carga de trabajo fueron más equilibrados entre MongoDB Atlas y Couchbase Cloud. Ambos ofrecieron resultados similares en un clúster de 6 nodos y en uno de 9, donde el rendimiento fue bajo porque el tamaño del conjunto de datos y los índices se duplicó. A pesar de los resultados similares, Couchbase Cloud fue capaz de superar a MongoDB Atlas en todos los tamaños de clúster en esta carga de trabajo.

Mientras tanto, Amazon DynamoDB no pudo competir del todo: su proceso de indexación funciona de tal manera que requiere complejas exploraciones de tablas completas, lo que llevó demasiado tiempo para esta carga de trabajo, devolviendo errores de tiempo de espera.

En la última categoría de cargas de trabajo, los resultados volvieron a favorecer a Couchbase Cloud. Couchbase Cloud registró un mayor rendimiento, con 750 ops/seg en clústeres de 6 nodos, frente a las 100 ops/seg de MongoDB Atlas. Como en el caso de carga de trabajo de paginaciónAmazon DynamoDB no podía competir debido a la naturaleza de su proceso de indexación.

Aquí se muestra una de las cargas de trabajo comparadas en el informe, para los tres tamaños de clúster, midiendo el rendimiento y la latencia:

Altoros NoSQL Benchmarking Report for Couchbase DynamoDB MongoDB

Figura 4.1.3 Resultados de rendimiento con la carga de trabajo A en clusters de 6, 9 y 18 nodos

Amazon DynamoDB obtuvo resultados inestables porque produjo un gran número de operaciones fallidas. En cada tipo de clúster, Amazon DynamoDB tuvo 40% de operaciones de actualización fallidas y casi 1% de operaciones de lectura fallidas".

Ya tenemos los resultados: el mejor almacén de documentos

En general, el benchmark de rendimiento de Altoros encontró que Couchbase Cloud es el DBaaS de almacenamiento de documentos con mejor rendimiento disponible. MongoDB Atlas obtuvo resultados decentes, pero se quedó corto en las operaciones JOIN para colecciones fragmentadas:

NoSQL benchmark for JOIN operations

Amazon DynamoDB también obtuvo buenos resultados en determinadas cargas de trabajo, pero lanza excepciones cuando las operaciones de lectura/escritura superan las capacidades predeterminadas, lo que provocaba un gran volumen de operaciones fallidas en determinadas cargas de trabajo. Comparativamente, el motor de consultas de Couchbase Cloud soporta operaciones de agregación, filtrado y JOIN sin necesidad de modelar datos para cada consulta específica, asegurando un buen nivel de escalabilidad en todas estas operaciones. 

Así que Couchbase se lleva la victoria.

Autor

Publicado por Rick Jacobs

Rick Jacobs es el Director Técnico de Marketing de Producto en Couchbase. Su variada formación incluye experiencia en muchas de las principales organizaciones del mundo, como Computer Sciences Corporation, IBM, Cloudera, etc. Cuenta con más de 15 años de experiencia en tecnología en general, acumulada en puestos de desarrollo, consultoría, ciencia de datos, ingeniería de ventas y marketing técnico. Posee varios títulos académicos, incluido un máster en Ciencias Computacionales por la Universidad George Mason.

Dejar una respuesta