Saltar al contenido

Comparación entre las Principales Bases de Datos NoSQL más Populares

Comparación entre las Principales Bases de Datos NoSQL más Populares diapositiva

Tabla de contenidos

Una introducción a DynamoDB de las populares bases de datos NoSQL de Amazon


Comparativa entre las bases de datos NoSQL: MongoDB, Apache Cassandra, Redis, Memcached y DynamoDB.

Son muchos proyectos y funcionalidades que requieren el uso de bases de datos NoSQL, además de la utilización de bases de datos relacionales. Pero siempre nos viene la duda y nos preguntamos: ¿Qué base de datos NoSQL o cual es la mejor que deberíamos utilizar? Está claro que también dependerá de algunos factores como según el tipo de trabajo que fuéramos a implementar. Pero te brindaremos una exhaustiva comparación entre MongoDB, DynamoDB, Cassandra, Redis y Memcached.

Esto le servirá como una guía o referencia a la hora de decidir en tomar una decisión. Iremos viendo una por una, con una descripción general muy concreta de cada una con sus ventajas y desventajas de estas bases de datos NoSQL. Recomendaremos en cada una las condiciones que son mejores de utilizar por estas bases de datos.

MongoDB bases de datos NoSQL más popular
MongoDB bases de datos NoSQL más popular

Comenzaremos con MongoDB la cual es sin dudas la más popular entre todas las bases de datos NoSQL que veremos. Esta es una base de datos de uso generalizada basada en documentos. La gestión en base de datos de documentos, encontramos que MongoDB almacena sus datos en documentos similares a JSON.

La empresa a cargo de su desarrollo es 10gen Inc la cual actualmente se llama MongoDB Inc. Su desarrollo comenzó a partir del 2007 pero no fue hasta 2009 que pasó a desarrollo de código abierto AGPL. Su código está basado y escrito principalmente en C++, pero también usaron Python, JavaScript y Go mejorando y logrando darle mayor implementación.

Ventajas del uso con MongoDB

MongoDB ofrece unas increíbles ventajas en cuanto a su flexibilidad, particionamiento, procesamiento, disponibilidad, escalabilidad, facilidad de aplicación, consultas, asistencia de soporte y una gran comunidad

  • Flexibilidad: Ventajas de MongoDB al no tener esquemas, es que le permite el almacenamiento de cualquier tipo de datos en documentos independientes. Esto logra aportarle una gran flexibilidad de implementación y usos.
  • Particionamiento: MongoDB permite el particionamiento o seccionamiento de datos. Esta característica le permite almacenar grandes cantidades conjuntos de datos, también distribuyendolos a diferentes servidores.
  • Procesamiento: Esto le permite a MongoDB una indexación de documentos muy dinámica y veloz. Logrando una velocidad de acceso más rápido a los datos; es una fuerte ventaja que tiene MongoDB a su favor.
  • Disponibilidad: Gracias a su función llamada «GridFS»(Grid File System) podremos utilizar como un sistema de archivos. Esto le ofrece características muy amplias a la hora de manipular los datos.
  • Escalabilidad: con el uso de MongoDB nos permite el escalado horizontal. Esto es de esencial ayuda a la hora de trabajar con grandes agrupaciones y conjuntos de datos.
  • Facilidad de aplicación: MongoDB posee una configuración muy intuitiva y fácil. Encontrará su cliente basado en JavaScript fácil de consultas.
  • Capacidades de consulta: MongoDB es un sistema de administración de bases de datos rico en características. Proporciona compatibilidad con consultas, que incluye consultas ad hoc.
  • Soporte: MongoDB consta con una excelente documentación. Muy profesional el soporte técnico, además cuenta con una comunidad muy activa.

Desventajas del uso con MongoDB

Pero también MongoDB posee algunas desventajas como la falta de compatibilidad en las transacciones, gran consumo de memoria, algo de complejidad, limitaciones en la anidación de documentos y tamaño de los mismos.

  • Escasa compatibilidad en las transacciones: Esto lo vemos en aplicación que requiere transacciones, en actualizaciones de varios documentos o colecciones.
  • Alto consumidor de memoria: MongoDB por su pobre soporte muy limitado para los Joins, lo cual conlleva a una redundancia en sus datos. Este DBMS (Sistema de administración de bases de datos) almacena los nombres de clave para cada par de valores. Con la combinación de estos factores mencionados provocan un aumento en el uso de la memoria.
  • Complejidad: Para lograr tener un óptimo rendimiento con MongoDB es necesario cierta experiencia acumulada para lograr un eficiente desempeño del mismo.
  • Duplicación de datos: otra deficiencia de MongoDB al no ser un RDBMS (Relational Database Management System). No posee las relaciones muy bien definidas en ellas, con lo cual que conlleva a la duplicación de datos.
  • Limitaciones de tamaño del documento: no puede tener documentos en MongoDB de más de 16 MB.
  • Limitaciones anidación: sólo puede anidar documentos de hasta 100 niveles.

En que podemos utilizar MongoDB eficientemente

Actualmente muchas empresas han empezado a utilizar MongoDB gracias a su gran demanda y facilidad de escalabilidad y almacenamiento en caché. MongoDB ayuda en análisis en tiempo real. Es muy demandado por las empresas para la creación y desarrollo de aplicaciones móviles, administración de contenido, aplicaciones de IoT (Internet de las cosas) y aplicaciones de análisis en tiempo real.

Empresas que utilizan MongoDB:

  • Google
  • Forbes
  • Ups
  • Trend Micro
  • Facebook
  • Cisco
  • Verizon
  • Adobe
  • Toyota

Apache Cassandra una de las mejores bases de datos NoSQL

Introducción a Cassandra una de las mejores bases de datos NoSQL
Cassandra una de las mejores bases de datos NoSQL

La siguiente de nuestra lista es Apache Cassandra, o más conocida como Cassandra comúnmente. Esta es una increíble y popular base de datos NoSQL de código abierto muy fuerte. Esta base de datos bien administrada puede controlar un gran volumen de datos muy eficiente. Eficientemente esta base de datos escalable, ofrece una alta disponibilidad en la cual no tiene un «Punto único de error» en sus siglas (SPoF).

Esta base de datos NoSQL fue desarrollada por Avinash Lakshman y Prashant Malik dos desarrolladores en Facebook habían creado Cassandra. Fue desarrollado usando el lenguaje de programación Java. En el año 2008 Cassandra pasó a ser liberado como código abierto por Facebook. No obstante Apache Software Foundation es la encargada supervisa el desarrollo y el apoyo de Cassandra. Esta base de datos de código abierto está disponible en apache license 2.0.

Ventajas del uso con Cassandra

  • Descentralizado: gracias a que Cassandra no tiene un SPoF que mencionado anteriormente. Esto conlleva a que cada nodo de Cassandra puede atender por igual cualquier solicitud posible. Es muy efectiva y eficaz en cuanto se trata en la replicación y recuperación datos de otros nodos, inclusive si se ha producido las pérdidas de datos en el nodo.
  • Flexibilidad de almacenamiento de datos: con Cassandra se pueden almacenar datos estructurados, semiestructurados o no estructurados en una base de datos.
  • Flexibilidad en la distribución de datos: Se puede configurar Cassandra para utilizar varios centros de datos. Esto facilita la distribución de datos.
  • Directrices ACID: Cassandra cumple con las directrices de ACID («Atomicity», «Consistency», «Isolation» y «Durability»). Ayudando considerablemente a la hora de ejecutar transacciones de base de datos.
  • Maniobrabilidad datos masivos: Con Apache Cassandra tenemos la facilidad de poder manejar volúmenes muy grandes de datos, proporcionando una ventaja muy fuerte.
  • Rendimiento: Cassandra puede manejar independientemente tanto las solicitudes de escritura como lectura en grandes cantidades; sin verse afectada en su velocidad una de otra.
  • Escalabilidad: Agregando más hardware, aumentaremos la cantidad de datos y solicitudes. Esta escalabilidad horizontal no requiere que apague la base de datos y no necesita ningún ajuste importante. La escalabilidad lineal de Cassandra garantiza una respuesta rápida.
  • Facilidad de uso: Cassandra proporciona CQL (Cassandra Query Language), siendo una alternativa a SQL. Utilizando esta interfaz muy sencilla de usar para acceder a Cassandra.
  • Compatibilidad: Cassandra tiene compatibilidad con Hadoop, MapReduce, Apache Pig y Apache Hive.
  • Consistencia: Casandra proporciona consistencia firme tanto para los «Reads», «Updates», «Inserts» y «Deletes». Ajustando los niveles de consistencias.

Desventajas del uso con Cassandra

  • Carencia de RDBMS: Apache Cassandra no es un RDBMS o sea Sistema de gestión de base de datos relacionales. Está totalmente desprovista de integración referencial y sin permitir los «JOINS». Cassandra no admite subconsultas, «GROUP BY» y «ORDER BY».
  • Duplicación de datos: Está bases de datos NoSQL Cassandra modelan los datos en función de las consultas esperadas. Siendo lo opuesto en el caso de las RDBMS. Como consecuencia de esto puede dar lugar a la duplicación de datos en Cassandra.
  • Fuertes requisitos de ACID: Es compatible con ACID, pero si se tienen fuertes requisitos ACID, Cassandra no lo soporta.
  • Ejecución «READ» lentas: Cassandra gestiona una excelente velocidad en ejecuciones «WRITE«, sin embargo, en las ejecuciones «READ» pueden llegar a ser algo lentas. Demasiadas solicitudes «READ» pueden provocar latencia.
  • No permite agregados: Cassandra no se adaptará si necesita demandas de operaciones agregadas.
  • Consulta limitadas: Cassandra en cualidades de consultas están limitadas debido a la recuperación de datos.
  • Soporte: Si bien su comunidad de Apache Cassandra es excelente, sin embargo, la asistencia de soporte no es muy eficiente.

En que podemos utilizar Cassandra eficientemente

Cassandra es muy efectiva si necesita almacenar y administrar datos masivos en varias fuentes de servidores. Si no puedes permitirte perder los datos, sin duda Cassandra será tu mejor opción en las base de datos NoSQL. Las organizaciones que funcionan y necesiten que sus bases de datos estén asequibles; inclusive con la caída de algún servidor.

Empresas que utilizan Cassandra:

  • Cern
  • BlackBerry
  • Ebay
  • Bloomberg Engineering
  • Netflix
  • IBM 
  • The New York times
  • Spotify

Introducción a Redis una excelente bases de datos NoSQL

Redis la bases de datos NoSQL excelente
Redis una bases de datos NoSQL excelente

Redis es una bases de datos NoSQL de código abierto, que actualmente goza de una considerable popularidad. Es un almacén de estructura de datos en memoria. Pues este admite varias estructuras de tipos de datos. Puede usarlo para almacenar cadenas, hashes, listas, conjuntos, conjuntos ordenados, mapas de bits, índices geoespaciales, etc. Esta base de datos distribuida se puede utilizar como una base de datos clave-valor en memoria.

Redis comenzó a escribirse usando el lenguaje de programación Tcl por Salvator Sanfilippo; luego pasando el proyecto a C por las ventajas que les brindaría este lenguaje de programación. Redis fue lanzado por Salvator como un proyecto de código abierto en el año 2009. Pero gracias a Redis Labs ha estado patrocinando y apoyando este proyecto desde el año 2015. Redis está disponible bajo una licencia de 3 cláusulas BSD.

Ventajas del uso con Redis

  • Almacenamiento en caché: Si su requisito principal es un acceso rápido, el almacenamiento en caché que posee Redis se ajustará a lo que buscas. Está bases de datos NoSQL ofrece una mayor eficiencia en rapidéz para almacenamiento en caché.
  • Estructuras de datos avanzadas: Redis es compatible con una gran variedad de estructuras de datos como cadenas, hashes, conjuntos, listas, etc. Redis utiliza su propio mecanismo hash llamado «Redis Hashing».
  • Facilidad de uso: La gestion de configuracion de Redis es muy intuitiva y sencilla; haciéndola fácil de trabajar.
  • Flexibilidad: Con Redis podremos almacenar pares de claves y valores de hasta 512 MB de peso.
  • Escalabilidad: puede escalar una base de datos de Redis fácilmente sin tiempo de inactividad ni degradación del rendimiento ni de sus datos.
  • Soporte: Encontraras apoyo de su gran comunidad. Pero con Redis Labs ofrece soporte premium para los planes pagados.

Desventajas del uso con Redis

  • La implementación en la nube a gran escala de Redis puede ser difícil.
  • No ofrece ninguna solución de conjuntos en clústeres madura.
  • No puede implementar «Role-Based-Account-Control» (RBAC) con Redis.
  • Carece de algún tipo cifrado incorporado para mayor seguridad.
  • Redis tiene algunas limitaciones con respecto al modelo «Master-Slave». No tiene una conmutación por error suave si un «Master» no tiene al menos un «Slave». También hay una limitación con respecto al particionamiento. Redis asigna ranuras hash a «Masters», e implementa el particionamiento basado en eso. Si un «Master» que contiene un conjunto de ranuras hash baja, se perderán los datos escritos en esa ranura.

En que podemos utilizar Redis eficientemente

Si necesita implementar algún mecanismo sólido de caché de sesiones en la aplicación; con Redis lograremos una óptima aplicación. Puede usarlo para implementar caché de página completa (FPC) y colas. Redis se adapta a las aplicaciones que se ocupan de incrementos y decrementos. Pero además, puede crear aplicaciones de redes sociales con él.

Empresas que utilizan Redis:

  • Twitter
  • Weibo
  • Fortune 500
  • Pinterest
  • Malwarebytes 
  • Snapchat
  • Simility
  • Github
  • Freshwork

Introducción a Memcached una reconocida bases de datos NoSQL

Introducción a Memcached una reconocida bases de datos NoSQL
Memcached una reconocida bases de datos NoSQL

Memcached es un sistema de almacenamiento en caché de memoria de uso general, la cual es una de las base de datos NoSQL más conocidas. La misma es totalmente es gratuita y de código abierto. Esta base de datos distribuida se pueden usar para aportarles mejor rendimiento los sitios web en cuanto a rapidez. Memcached logra estos beneficios de en rendimiento mediante el almacenamiento en caché de datos e implementación de la RAM. Permitiendo reducir el número de operaciones externas de «READ» de bases de datos.

Memcached fue desarrollado en el año 2003 por Brad Fitzpatrick de Danga Interactive, el cual había sido desarrollado para la web LiveJournal. Fue escrito con Perl, pero otro desarrollador del proyecto de LiveJournal, Anatoly Vorobey lo reescribió en C. Memcached está disponible mediante una licencia BSD. Una fuerte comunidad de desarrolladores trabaja con Memcached.

Ventajas del uso con Memcached

  • Almacenamiento en caché: Memcached brinda una solución de almacenamiento en caché muy eficiente, esto lo hace manteniendo los datos en ram.
  • Rendimiento: Como una respuesta al almacenamiento en caché, Memcached ofrece unas características de velocidad muy eficientes. En consecuencia a su alta rapidez de respuesta lo convierte en una excelente alternativa de almacenamiento en caché adecuada para sitios web con un alto nivel de tráfico.
  • Escalabilidad: Memcached admite multiproceso. Esto hace que sea una buena opción para desarrollar aplicaciones escalables.
  • Madurez: Memcached ha demostrado ser una solución muy estable, con una madurez evolucionando en su desarrollo desde sus inicios en el 2003 hasta ahora.
  • Soporte: Cuenta con una comunidad de desarrolladores enardecida proporcionando un excelente soporte para Memcached.

Desventajas del uso con Memcached

  • Mercado: Tiene como rival Redis, el cual es versátil como lo mencionábamos. Pero Memcached y Redis están muy igualados en cuanto al almacenamiento en caché. Sin embargo, Memcached es esencialmente para una solución de almacenamiento en caché, mientras que Redis ofrece mucho más. Si necesita algo más que una solución de almacenamiento en caché, es predecible que elija Redis.
  • Soluciones sencillas: para una administración en memoria interna de Memcached requiere menos consumo de memoria para metadatos; adecuado para casos simples. Sin embargo, también presenta limitaciones para casos de uso complejos. Al tratar con tamaños de datos dinámicos, los procesos de administración de memoria interna de Memcached no funcionan tan bien.
  • Limitaciones en grandes conjuntos de datos: Memcached en conjuntos de datos grandes suelen contener datos serializados. Si por alguna necesidad necesitarás más espacio para almacenarlos; esto plantearía un desafío con Memcached. Perdería datos en el caso de un reinicio y la reconstrucción de la memoria caché consume muchos recursos.
  • Limitaciones de Seguridad: Memcached limita el tamaño de la contraseña a 1 MB.
  • Memcached no admite la replicación.

En que podemos utilizar Memcached eficientemente

Ideal para apoyar el desarrollo de un sitio web de alto tráfico, el uso de Memcached puede ayudarle para acelerar el desarrollo. Puede utilizar Memcached para almacenar en caché datos comparativamente pequeños y estáticos. Memcached admite multiproceso, ideal para crear aplicaciones escalables.

Empresas que utilizan Memcached:

  • Youtube
  • Pinterest
  • Instagram
  • Twitter
  • Shopify

Una introducción a DynamoDB de las populares bases de datos NoSQL de Amazon

DynamoDB de las populares bases de datos NoSQL de Amazon
DynamoDB entre las populares bases de datos NoSQL de Amazon

DynamoDB a diferencia de las bases de datos NoSQL gratuitas y de código abierto que hablamos en este articulo, Amazon DynamoDB es totalmente lo opuesto por medio de licencia de Amazon. Este es el encargado de administrar completamente y lo ofrece como complemento de AWS. Este DBMS de NoSQL admite estructuras de datos clave-valor y documentos entre otros. Hay que tener en cuenta cuenta que no puede implementar Amazon DynamoDB local o en la nube híbrida. Solo se puede utilizar bajo su propia plataforma en la nube de AWS.

Se debe a que no utiliza las API de DynamoDB directamente, sino que incrusta un SDK de AWS en la aplicación. Fue lanzado en el 2012, pero los desarrolladores de Amazon habían publicado un libro blanco en el 2007; sentando las bases de lo que después sería conocido como el libro blanco de Dynamo. Pero la creación y desarrollo de DynamoDB por parte de Amazon fue y es solamente para uso interno dentro de sus servicios como complemento. De ahí viene su gran diferencia debido a que es una bases de datos como servicio en sus siglas DBaaS para clientes externos.

Ventajas del uso con DynamoDB

  • Ventajas avanzadas en la nube de AWS: DynamoDB es nativo de la nube y solo puede ser implementado en la nube del propio AWS. Utiliza capacidades maduras en la nube de AWS. Gracias a esto aporta muchas ventajas en las áreas de rendimiento, escalabilidad, disponibilidad, fiabilidad, durabilidad, seguridad, etc.
  • Facilidad de uso: Puede configurar, utilizar DynamoDB fácilmente y administrarlo fácilmente. AWS ofrece una interfaz por medio un SDK fácil de usar.
  • Documentación y soporte técnico: puede utilizar la documentación completa ofrecida por DynamoDB. Además que Amazon ofrece soporte premium.
  • Ahorros: los planes de precios de DynamoDB pueden reducir considerablemente sus costes.
  • Compatibilidad: otra ventaja de DynamoDB es que admite secuencias, con las cuales se pueden crear sistemas que reaccionen a los cambios en los datos.
  • Integración: DynamoDB se integra muy bien con AWS Lambdas y las gateways de API.
  • Administrable: no hay que preocuparse por las copias de seguridad, la replicación y el aprovisionamiento de los mismos.

Desventajas del uso con DynamoDB

  • Es posible que el modelo de costos sea difícil de entender a veces. Esto puede dificultar la predicción de costes.
  • DynamoDB no ofrece capacidades de consulta lo suficientemente potentes.
  • No puede implementar DynamoDB en ningún lugar fuera de la plataforma en la nube de AWS.
  • DynamoDB no ofrece claves «JOINS» y externas, ya que no es un RDBMS.
  • No puede utilizar scripts del lado del servidor con DynamoDB.
  • DynamoDB utiliza un modelo de «rendimiento» para el aprovisionamiento y los precios, que tiene una limitación. Si no conoce los volúmenes esperados de «READ»/»WRITE», es posible que no haya estimado bien el rendimiento. Es posible que vea que los procesos por lotes fallan debido a esto. Puede solucionar este problema utilizando el modelo de precios bajo demanda.

En que podemos utilizar DynamoDB eficientemente

Ya sea que estés utilizando algún servicio de plataforma de computación en la nube dentro de AWS; sería obvio utilizar su base de datos NoSQL, DynamoDB. Donde vemos mayor demanda de esto es con los desarrolladores de videojuegos los cuales utilizan significativamente DynamoDB. Muchas organizaciones que trabajan en el espacio «Internet de las cosas» (IoT) utilizan DynamoDB.

Empresas que utilizan DynamoDB:

  • Amazon
  • Samsung
  • Snapchat
  • Netflix
  • New York Times 

Una comparación de su popularidad en términos de búsquedas: MongoDB, Apache Cassandra, Redis, Memcached y DynamoDB

Rendimiento entre MongoDB, Cassandra, Redis, Memcached y DynamoDB

  1. MongoDB ofrece muy buen rendimiento si necesita una simultaneidad de lectura muy alta.
  2. Apache Cassandra respalda un gran rendimiento cuando necesita un alto recurso de «WRITE».
  3. Capacidades con rendimiento para manejar claves y objetos enormes, Redis funciona bien.
  4. Memcached funciona de maravilla para almacenar en caché datos pequeños y estáticos.
  5. DynamoDB excelente opción para el rendimiento si no le importa un DBMS NoSQL con licencia exclusivamente en la nube de AWS.

Escalabilidad entre MongoDB, Apache Cassandra, Redis, Memcached y DynamoDB

  1. Entre los DBMS NoSQL de código abierto multiusos, MongoDB y Cassandra ofrecen alta escalabilidad independientemente.
  2. Redis también se escala bien. Pues escala sin problemas en la degradación del rendimiento, ni en el tiempo de inactividad.
  3. Cuando tengamos requisitos que impliquen el almacenamiento en caché de conjuntos de datos pequeños, Memcached escala perfecto. Sus capacidades multithreading le aportan muchas fuerzas aquí.
  4. Entre las bases de datos con licencia, DynamoDB utiliza las capacidades en la nube de AWS. Ofrece alta escalabilidad.

Usabilidad entre MongoDB, Apache Cassandra, Redis, Memcached y DynamoDB

MongoDB, Cassandra, Redis, Memcached en Comparación de DynamoDB con respecto a la facilidad de uso es la siguiente:

  1. A medidas puede ir aprendiendo, instalando y usando fácilmente Cassandra, MongoDB y Redis.
  2. Dado que Amazon ofrece DynamoDB como un DBaaS totalmente administrado (Base de datos como servicio), es fácil de usar entre los DBMS NoSQL con licencia.

Características únicas entre MongoDB, Apache Cassandra, Redis, Memcached y DynamoDB

¿Cuales son estas características únicas que ofrecen estas populares DBMS de NoSQL? Esta comparación se interpreta de la siguiente manera:

  1. Cassandra ofrece descentralización donde cada nodo puede atender cualquier solicitud. Si se produce un error en un nodo, puede recuperar todos los datos de los demás nodos.
  2. Cassandra ofrece su lenguaje de consulta único llamado «Lenguaje de consulta Cassandra» (CQL).
  3. La capacidad de utilizar MongoDB como sistema de archivos, denominado «GridFS» (Sistema de archivos de cuadrícula), ofrece ventajas únicas. Esto hace que el equilibrio de carga, la replicación, etc. sea muy fácil, y obtiene una alta disponibilidad.
  4. Memcached ofrece capacidades únicas de administración de memoria que la convierten en una excelente solución de almacenamiento en caché para datos pequeños y estáticos.
  5. Redis admite muchas estructuras de datos como cadenas, hashes, listas, conjuntos, etc.
  6. Redis le permite almacenar grandes pares clave-valor.
  7. Amazon ofrece AWS SDK para DynamoDB. Lo integra en la aplicación y accede a DynamoDB a través de este SDK.

Cuándo usar MongoDB, Apache Cassandra, Redis, Memcached y DynamoDB

Es de vital importanci que siempre tenga en cuenta los siguientes factores para tomar decisiones para elegir un DBMS noSQL para su proyecto:

  1. Si tenemos el caso en el que el uso de datos deben recuperarse incluso si se produce un error en uno de los servidor? Elija Cassandra ya que ofrece descentralización y tolerancia a fallos.
  2. ¿Prevé un alto rendimiento de «WRITE» y comparativamente menos «READ»? Usa Cassandra.
  3. Utilice Cassandra si necesita una implementación de varios centros de datos o una integración con Hadoop.
  4. Utilice MongoDB si necesita escalar verticalmente rápidamente.
  5. Si necesita almacenar documentos grandes, Entonces MongoDB funciona bien para usted.
  6. ¿Necesita almacenar vídeos grandes/ imágenes / archivos multimedia? Considere la posibilidad de usar MongoDB.
  7. ¿Necesita una alta simultaneidad de lectura? Utilice MongoDB.
  8. ¿Desea una solución de almacenamiento en caché escalable para sitios pequeños y estáticos? Deberías usar Memcached.
  9. ¿Necesita una solución de almacenamiento en caché para elementos de datos grandes? Usa Redis.
  10. Utilice Redis si necesita almacenar estructuras de datos variadas como cadenas, hashes, listas, conjuntos, etc.
  11. ¿Necesita una base de datos NoSQL para colas de mensajería? Deberías usar Redis.
  12. ¿Desea las capacidades en la nube de AWS y no le importa pagar por un DBMS NoSQL con licencia? Amazon DynamoDB es la opción obvia. Utiliza las capacidades en la nube de AWS y ofrece muy buen rendimiento, escalabilidad, seguridad y disponibilidad.
  13. ¿Prefiere la facilidad de uso y la integración profunda con ofertas de AWS como AWS Lambdas? Debe utilizar DynamoDB.

Artículos relacionados que te podrían resultar interesantes: