¿Cuál es la diferencia entre las diferentes bases de datos NoSQL?

Creo que las respuestas anteriores son muy buenas, en mi POV, la base de datos NoSQL adecuada para usted es la que mejor se ajusta a sus requisitos en:

  1. Representación de datos: como se dijo anteriormente, valor-clave, documento, gráfico, etc.
  2. Patrón de uso de datos: OLTP (alto rendimiento de concurrencia, muchas consultas y actualizaciones) o análisis? (baja concurrencia, pocas consultas grandes, sin actualizaciones)
  3. Disponibilidad de datos y consistencia: este es el tema principal que deseo agregar

Si bien todas las bases de datos relacionales proporcionan las virtudes de ACID para mantener las transacciones y los datos. Atomicidad, consistencia, aislamiento, durabilidad: pocos NoSQL proporcionan ACID completo, la mayoría no proporciona ACID completo, sino que ofrece compensaciones interesantes en torno al teorema CAP (teorema CAP). Como no puede tener los 3, diferentes bases de datos ofrecen diferentes combinaciones, por ejemplo, 2 NoSQL de Apache, Hbase proporciona CP y Cassandra proporciona AP (ArchitectureOverview – Cassandra Wiki).

Espero que haya ayudado.

Como una base de datos NoSQL, al menos debe admitir el almacenamiento / recuperación / almacenamiento en caché de valores-clave.

Casi todas las bases de datos NoSQL admiten la distribución. Redis ahora no, pero pronto admitirá la distribución. (En mi opinión personal, una base de datos sin distribución de soporte no se puede ver como base de datos NoSQL. La mayor ventaja si la base de datos NoSQL en comparación con la base de datos SQL es solo la distribución de soporte).

La mayoría de las bases de datos NoSQL admiten guardar datos en el disco, Memcached no.
(Alguien puede pensar que Memcached no es una base de datos para esto).

Algunas bases de datos NoSQL no admiten indexación y búsqueda, otras sí.

Algunas bases de datos NoSQL admiten Map / Reduce, directa o indirectamente.

Algunas bases de datos NoSQL usan fragmentos de estilo maestro / esclavo para la distribución, algunas usan estilo de anillo de igual.

La mayoría no se asegura de la consistencia de los datos, algunos lo hacen.

BigTable sigue siendo la mejor base de datos NoSQL, muy avanzada para otros.

Hay muchas diferencias Los siguientes son los principales hasta mi experiencia. Sería genial si describieras tus requisitos, de esta manera lo aclararía.

1. Latencia media
2. Ancho de banda promedio
3. Disponibilidad
4. Cumplimiento de la propiedad de ACID
5. Motores de almacenamiento (en memoria, en disco)
6. Presencia de secuencias de comandos del lado del servidor
7. Mecanismos de replicación (asíncrono, sincronización, tipo Paxos)
8. Presencia de una solución de clúster
9. Huella de memoria
10. Calificación para una carga paralela masiva
11. Lectura optimizada
12. Escritura optimizada

Puede encontrar una lista de 150 bases de datos que a menudo se llaman NoSQL en este sitio: http://nosql-database.org .

Agrupan los productos en categorías:

  • Tienda de columnas anchas / familias de columnas
  • Tienda de documentos
  • Valor clave / tienda de tuplas
  • Graficar bases de datos
  • Bases de datos multimodelo
  • Bases de datos de objetos
  • Soluciones de bases de datos en la red y en la nube
  • Bases de datos XML
  • Bases de datos multidimensionales
  • Bases de datos de valores múltiples
  • Tiendas de eventos
  • Modelo de red
  • Otro, y sin categorizar

Incluso con todas estas categorías, cada categoría contiene muchas tecnologías diferentes, cada una con sus propias características, fortalezas y debilidades. Preguntar cuál es la diferencia entre las diferentes bases de datos NoSQL es una pregunta muy amplia.

Por cierto, este término NoSQL no es un término técnico, es un término de marketing. Entonces no tiene definición. 😉

Supongo: arquitectura general y problema centrado. Básicamente, escenario similar al de RDBMS regular (SQL DB). Al igual que Oracle y MSSQL son diferentes en la forma en que se manejan los diferentes escenarios, o PGSQL o MySQL son diferentes, pero todos siguen siendo DBMS.

Comprueba estos:

Cassandra vs MongoDB vs CouchDB vs Redis vs Riak vs HBase vs Couchbase vs Hypertable vs ElasticSearch vs Accumulo vs VoltDB vs Scalaris comparación

Una comparación de los sistemas y modelos de gestión de bases de datos NoSQL

Consultor de bases de datos y autor. En el capítulo, Sullivan echa un vistazo a los cuatro tipos principales de bases de datos No-SQL: bases de datos de valores clave, documentos, familias de columnas y gráficos, y proporciona información sobre qué aplicaciones son las más adecuadas para cada una de ellas. También discute las diferencias entre el diseño de bases de datos relacionales y No-SQL, y la necesidad de coexistencia entre las tecnologías relacionales y No-SQL en muchas organizaciones …… En las clases de capacitación relacionales No-sql Cassandra Hbase MongoDB Couch-base en línea | No-sql Cassandra Hbase MongoDB Couch base Cursos El diseño de la base de datos en línea , la estructura y las relaciones de las entidades impulsan el diseño, no así en el diseño de la base de datos No-SQL. Por supuesto, modelará entidades y relaciones, pero el rendimiento es más importante que preservar el modelo relacional … razones pragmáticas, es decir, anomalías en los datos y dificultad para reutilizar las bases de datos existentes para nuevas aplicaciones. Las bases de datos sin SQL también surgieron por razones pragmáticas, específicamente, la incapacidad de escalar para satisfacer las crecientes demandas de grandes volúmenes de operaciones de lectura y escritura.

  • El volumen de lecturas y escrituras.
  • Tolerancia para datos inconsistentes en réplicas
  • La naturaleza de las relaciones entre entidades y cómo eso afecta los patrones de consulta
  • Disponibilidad y requisitos de recuperación ante desastres
  • La necesidad de flexibilidad en los modelos de datos.
  • Requisitos de latencia

Puedes mirar aquí. http://kkovacs.eu/cassandra-vs-m

Cada NoSQL es su propio pequeño copo de nieve. Es mejor buscar comparaciones en Internet.

More Interesting

¿Cuál es la diferencia entre la barra diagonal (/) y la barra diagonal inversa (\)?

¿Qué idioma entiende la computadora?

¿Es posible que las máquinas de vectores de soporte sean el algoritmo más apto para problemas de clasificación binaria dada la forma en que puede ajustar curvas alrededor del conjunto de datos?

¿Qué métodos son buenos para la minería de texto corto semántico (como SMS, tweet)?

¿Cuál sería la mejor manera de prepararse para el GRE en 3er año si estoy estudiando TI en el Instituto Indio de Tecnología de la Información, Allahabad (Campus Amethi)?

¿Es beneficioso hacer un proyecto con algún profesor al final del primer año en IIT BHU?

¿Hay algún papel de JavaScript en el aprendizaje automático o el desarrollo de IA?

¿Qué es mejor: Instituto Nacional de Tecnología Trichy CSE o DTU CSE?

¿Aprende más de los cursos de estudio / proyecto independientes en comparación con los cursos regulares en Stanford? (CS)

¿Es la inteligencia artificial una bendición o una maldición? ¿Por qué?

¿Qué deben saber todos sobre las computadoras?

Cómo usar material angular con Django

¿Por qué se basan los índices 1 de Matlab?

¿Cuál es la historia detrás del término 'Minería de datos'?

¿Se está haciendo algún trabajo práctico sobre la integración del conocimiento potencial en grandes cantidades de datos (a través de algoritmos de aprendizaje automático, por ejemplo), diseño UX / UI y cómo el cerebro humano aprende para maximizar la eficiencia de la creación de conocimiento?