Apache Cassandra es una de código abierto libre y , distribuido , tienda de toda la columna , NoSQL base de datos de sistema de gestión diseñado para manejar grandes cantidades de datos a través de muchos servidores de los productos básicos , proporcionando alta disponibilidad con ningún punto único de fallo . Cassandra ofrece soporte para clústeres que abarcan múltiples centros de datos, [2] con replicación sin maestro asincrónica que permite operaciones de baja latencia para todos los clientes. Cassandra se diseñó para implementar una combinación de técnicas de replicación y almacenamiento distribuido Dynamo de Amazon combinadas con el modelo de motor de almacenamiento y datos Bigtable de Google. [3]
Autor (es) original (es) | Avinash Lakshman, Prashant Malik / Facebook |
---|---|
Desarrollador (es) | Fundación de software Apache |
Versión inicial | Julio de 2008 |
Lanzamiento estable | 3.11.10 [1] / 1 de febrero de 2021 |
Repositorio | |
Escrito en | Java |
Sistema operativo | Multiplataforma |
Disponible en | inglés |
Tipo | Base de datos NoSQL , almacén de datos |
Licencia | Licencia Apache 2.0 |
Sitio web | cassandra |
Historia
Avinash Lakshman, uno de los autores de Dynamo de Amazon , y Prashant Malik desarrollaron inicialmente Cassandra en Facebook para impulsar la función de búsqueda en la bandeja de entrada de Facebook. Facebook lanzó Cassandra como un proyecto de código abierto en el código de Google en julio de 2008. [4] En marzo de 2009 se convirtió en un proyecto de Apache Incubator . [5] El 17 de febrero de 2010 se graduó en un proyecto de nivel superior. [6]
Los desarrolladores de Facebook nombraron su base de datos en honor al profeta mitológico troyano Cassandra , con alusiones clásicas a una maldición en un oráculo . [7]
Lanzamientos
Los lanzamientos después de la graduación incluyen
- 0.6, lanzada el 12 de abril de 2010, soporte agregado para almacenamiento en caché integrado y Apache Hadoop MapReduce [8]
- 0.7, publicado el 8 de enero de 2011, índices secundarios agregados y cambios de esquema en línea [9]
- 0.8, lanzada el 2 de junio de 2011, agregó Cassandra Query Language (CQL), memtables de autoajuste y soporte para actualizaciones sin tiempo de inactividad [10]
- 1.0, lanzado el 17 de octubre de 2011, agregó compresión integrada, compactación nivelada y rendimiento de lectura mejorado [11]
- 1.1, lanzada el 23 de abril de 2012, se agregaron cachés de autoajuste, aislamiento a nivel de fila y compatibilidad con implementaciones mixtas de discos SSD / giratorios [12]
- 1.2, lanzada el 2 de enero de 2013, se agregó agrupamiento en nodos virtuales, comunicación entre nodos, lotes atómicos y seguimiento de solicitudes [13]
- 2.0, lanzado el 4 de septiembre de 2013, transacciones ligeras agregadas (basadas en el protocolo de consenso de Paxos ), activadores, compactaciones mejoradas
- 2.1 publicado el 10 de septiembre de 2014 [14]
- 2.2 publicada el 20 de julio de 2015
- 3.0 lanzado el 11 de noviembre de 2015
- Las versiones de la 3.1 a la 3.10 eran versiones mensuales que utilizaban un modelo de lanzamiento similar al tic-tac , con versiones pares que proporcionan nuevas funciones y correcciones de errores, mientras que las versiones impares solo incluirán correcciones de errores. [15]
- 3.11 lanzado el 23 de junio de 2017 como una serie de lanzamiento estable de 3.11 y corrección de errores de la última versión de la función tic-tac.
Versión | Fecha de lanzamiento original | Ultima versión | Fecha de lanzamiento | Estado [16] |
---|---|---|---|---|
0,6 | 2010-04-12 | 0.6.13 | 2011-04-18 | Ya no es compatible |
0,7 | 2011-01-10 | 0.7.10 | 2011-10-31 | Ya no es compatible |
0,8 | 2011-06-03 | 0.8.10 | 2012-02-13 | Ya no es compatible |
1.0 | 2011-10-18 | 1.0.12 | 2012-10-04 | Ya no es compatible |
1.1 | 2012-04-24 | 1.1.12 | 2013-05-27 | Ya no es compatible |
1.2 | 2013-01-02 | 1.2.19 | 2014-09-18 | Ya no es compatible |
2.0 | 2013-09-03 | 2.0.17 | 2015-09-21 | Ya no es compatible |
2.1 | 2014-09-16 | 2.1.22 | 2020-08-31 | Aún soportado, solo arreglos críticos |
2.2 | 2015-07-20 | 2.2.19 | 2020-11-04 | Todavía es compatible |
3,0 | 2015-11-09 | 3.0.24 | 2021-02-28 | Todavía es compatible |
3.11 | 2017-06-23 | 3.11.10 | 2021-02-28 | Último lanzamiento |
4.0 | n / A | 4.0-rc1 | 2021-04-25 | Release Candidate (RC) |
Leyenda: Versión antigua Versión anterior, aún mantenida Ultima versión Última versión de vista previa |
Principales características
- Repartido
- Todos los nodos del clúster tienen la misma función. No hay un solo punto de falla. Los datos se distribuyen en todo el clúster (por lo que cada nodo contiene datos diferentes), pero no hay un maestro, ya que cada nodo puede atender cualquier solicitud.
- Admite replicación y replicación de múltiples centros de datos
- Las estrategias de replicación son configurables. [17] Cassandra está diseñado como un sistema distribuido, para la implementación de una gran cantidad de nodos en múltiples centros de datos. Las características clave de la arquitectura distribuida de Cassandra están diseñadas específicamente para la implementación de múltiples centros de datos, para la redundancia, para la conmutación por error y la recuperación ante desastres.
- Escalabilidad
- Diseñado para que el rendimiento de lectura y escritura aumente linealmente a medida que se agregan nuevas máquinas, con el objetivo de que no haya tiempo de inactividad ni interrupción de las aplicaciones.
- Tolerante a fallos
- Los datos se replican automáticamente en múltiples nodos para tolerancia a fallas . Se admite la replicación en varios centros de datos. Los nodos fallidos se pueden reemplazar sin tiempo de inactividad.
- Consistencia sintonizable
- Cassandra se clasifica típicamente como un sistema AP , lo que significa que la disponibilidad y la tolerancia a la partición generalmente se consideran más importantes que la consistencia en Cassandra, [18] Las escrituras y lecturas ofrecen un nivel ajustable de consistencia , desde "las escrituras nunca fallan" hasta "Bloque para que todas las réplicas sean legibles", con el nivel de quórum en el medio. [19]
- Soporte MapReduce
- Cassandra tiene integración con Hadoop , con soporte MapReduce . También hay soporte para Apache Pig y Apache Hive . [20]
- Lenguaje de consulta
- Cassandra introdujo Cassandra Query Language (CQL). CQL es una interfaz simple para acceder a Cassandra, como alternativa al lenguaje de consulta estructurado (SQL) tradicional .
- Consistencia eventual
- Cassandra gestiona la coherencia eventual de las lecturas, las actualizaciones y las eliminaciones a través de Tombstones .
Lenguaje de consulta de Cassandra
Cassandra introdujo Cassandra Query Language (CQL). CQL es una interfaz simple para acceder a Cassandra, como alternativa al lenguaje de consulta estructurado (SQL) tradicional . CQL agrega una capa de abstracción que oculta los detalles de implementación de esta estructura y proporciona sintaxis nativas para colecciones y otras codificaciones comunes. Los controladores de idioma están disponibles para Java (JDBC), Python (DBAPI2), Node.JS (Datastax), Go (gocql) y C ++. [21]
A continuación, se muestra un ejemplo de creación de espacio de claves, incluida una familia de columnas en CQL 3.0: [22]
CREAR KEYSPACE MyKeySpace CON REPLICACIÓN = { 'clase' : 'SimpleStrategy' , 'replication_factor' : 3 } ;USE MyKeySpace ;CREAR COLUMNFAMILY MyColumns ( id texto , Último texto , Primer texto , CLAVE PRINCIPAL ( id ));INSERT INTO MyColumns ( id , Last , First ) VALUES ( '1' , 'Doe' , 'John' );SELECCIONE * DE MyColumns ;
Lo que da:
id | Último | Primero---- + ------ + ------ 1 | Doe | John( 1 filas )
Problemas conocidos
Hasta Cassandra 1.0, Cassandra no era coherente a nivel de fila, [23] lo que significa que las inserciones y actualizaciones en la tabla que afectan a la misma fila que se procesan aproximadamente al mismo tiempo pueden afectar las columnas que no son clave de manera inconsistente. Una actualización puede afectar a una columna mientras que otra afecta a la otra, lo que da como resultado conjuntos de valores dentro de la fila que nunca se especificaron o pretendieron. Cassandra 1.1 resolvió este problema introduciendo el aislamiento a nivel de fila . [24]
Lápidas
Se sabe que los marcadores de eliminación llamados "lápidas" causan una degradación grave del rendimiento. [25]
Modelo de datos
Cassandra es un almacén de columnas amplias y, como tal, es esencialmente un híbrido entre un valor clave y un sistema de gestión de base de datos tabular. Su modelo de datos es un almacén de filas particionado con consistencia ajustable. [19] Las filas se organizan en tablas ; el primer componente de la clave principal de una tabla es la clave de partición; dentro de una partición, las filas están agrupadas por las columnas restantes de la clave. [26] Otras columnas pueden indexarse por separado de la clave principal. [27]
Las tablas se pueden crear, eliminar y modificar en tiempo de ejecución sin bloquear las actualizaciones y las consultas. [28]
Cassandra no puede realizar combinaciones ni subconsultas . Más bien, Cassandra enfatiza la desnormalización a través de características como colecciones. [29]
Una familia de columnas (llamada "tabla" desde CQL 3) se asemeja a una tabla en un RDBMS (Sistema de gestión de bases de datos relacionales). Las familias de columnas contienen filas y columnas. Cada fila se identifica de forma única mediante una clave de fila. Cada fila tiene varias columnas, cada una de las cuales tiene un nombre, un valor y una marca de tiempo. A diferencia de una tabla en un RDBMS, las diferentes filas de la misma familia de columnas no tienen que compartir el mismo conjunto de columnas, y una columna se puede agregar a una o varias filas en cualquier momento. [30]
Cada clave en Cassandra corresponde a un valor que es un objeto. Cada clave tiene valores como columnas y las columnas se agrupan en conjuntos llamados familias de columnas. Por tanto, cada clave identifica una fila de un número variable de elementos. Estas familias de columnas podrían considerarse entonces como tablas. Una tabla en Cassandra es un mapa multidimensional distribuido indexado por una clave. Además, las aplicaciones pueden especificar el orden de clasificación de las columnas dentro de una familia de Super Columna o Columna simple.
Gestión y seguimiento
Cassandra es un sistema basado en Java que se puede administrar y monitorear a través de Java Management Extensions (JMX). La utilidad nodetool compatible con JMX , por ejemplo, se puede utilizar para administrar un clúster de Cassandra (agregar nodos a un anillo, drenar nodos, retirar nodos, etc.). [31] Nodetool también ofrece una serie de comandos para devolver métricas de Cassandra relacionadas con el uso del disco, latencia, compactación, recolección de basura y más. [32]
Desde Cassandra 2.0.2 en 2013, las medidas de varias métricas se producen a través del marco de métricas Dropwizard, [33] y pueden consultarse a través de JMX usando herramientas como JConsole o pasarse a sistemas de monitoreo externos a través de complementos de reporter compatibles con Dropwizard. [34]
Aplicaciones notables
Según el ranking de DB-Engines , Cassandra es la tienda de columna ancha más popular , [35] y en septiembre de 2014 se convirtió en la novena base de datos más popular. [36]
- Apple usa 100,000 nodos Cassandra, como se reveló en Cassandra Summit San Francisco 2015, [37] aunque no ha elaborado para qué productos, servicios o características.
- AppScale utiliza Cassandra como back-end para las aplicaciones de Google App Engine [38]
- BlackRock utiliza Cassandra en su plataforma de gestión de inversiones Aladdin [39] [40]
- El CERN utilizó un prototipo basado en Cassandra para su experimento ATLAS para archivar la información de monitoreo del sistema DAQ en línea [41]
- Cisco 's WebEx utiliza Cassandra al usuario Tienda de la alimentación y la actividad en tiempo casi real. [42]
- Constant Contact utiliza Cassandra en sus aplicaciones de marketing por correo electrónico y redes sociales. [43] Se despliegan más de 200 nodos.
- Digg , un sitio web de noticias sociales, anunció el 9 de septiembre de 2009 que está implementando el uso de Cassandra [44] y lo confirmó el 8 de marzo de 2010. [45] Desde entonces, TechCrunch ha vinculado a Cassandra con críticas de confiabilidad de Digg v4 y recientes luchas. [46] Un ingeniero jefe de Digg luego reprendió estas críticas en una publicación en las redes sociales como una pista falsa y culpó a la falta de pruebas de carga. [47]
- Discord cambió a Cassandra para almacenar miles de millones de mensajes de MongoDB en noviembre de 2015 [48]
- Formspring usa Cassandra para contar las respuestas, así como para almacenar datos de gráficos sociales (seguidores, seguidores, bloqueadores, bloqueos) para 26 millones de cuentas con 10 millones de respuestas al día [49]
- Globo.com utiliza Cassandra como base de datos de back-end para sus servicios de transmisión [50]
- Grubhub usa Cassandra como su principal almacén de datos persistentes para sus servicios de backend. [51]
- Mahalo.com utilizó Cassandra para registrar los registros de actividad de los usuarios y los temas de su sitio web de preguntas y respuestas [52] [53]
- Monzo , un banco del Reino Unido, utiliza Cassandra para casi todo su almacenamiento de datos persistentes. [54] [55]
- Netflix usa a Cassandra como su base de datos de back-end para sus servicios de transmisión [56] [57]
- Los dispositivos Nutanix utilizan Cassandra para almacenar metadatos y estadísticas. [58]
- Ooyala creó un motor de análisis en tiempo real con Cassandra [59]
- Openwave utiliza Cassandra como base de datos distribuida y como mecanismo de almacenamiento distribuido para su plataforma de mensajería [60]
- OpenX está ejecutando más de 130 nodos en Cassandra para su producto OpenX Enterprise para almacenar y replicar anuncios y datos de orientación para la entrega de anuncios [61]
- Rackspace usa Cassandra internamente. [62]
- Reddit cambió a Cassandra desde memcacheDB el 12 de marzo de 2010 [63] y experimentó algunos problemas en mayo de ese año debido a la insuficiencia de nodos en su clúster. [64]
- RockYou utiliza Cassandra para registrar cada clic de 50 millones de usuarios activos mensuales en tiempo real para sus juegos en línea [65]
- SoundCloud usa Cassandra para almacenar el panel de sus usuarios [66]
- Uber usa Cassandra para almacenar alrededor de 10,000 funciones en su Tienda de funciones de toda la empresa que se actualiza diariamente para acceso de baja latencia durante las predicciones de modelos en vivo [67]
- Urban Airship utiliza Cassandra con el alojamiento de servicios móviles para más de 160 millones de instalaciones de aplicaciones en 80 millones de dispositivos únicos [68]
Ver también
- Bigtable : base de datos distribuida original de Google
- Base de datos distribuida
- Tabla hash distribuida (DHT)
- Dynamo (sistema de almacenamiento) : Cassandra toma prestados muchos elementos de Dynamo
- Scylla : un almacén de datos distribuido escrito en C ++ que es compatible con API con Cassandra
Referencias
- ^ "Liberar cassandra-3.11.10" . Consultado el 13 de febrero de 2021 .
- ^ Casares, Joaquín (5 de noviembre de 2012). "Replicación de múltiples centros de datos en Cassandra" . DataStax . Consultado el 25 de julio de 2013 .
Los conceptos innatos de centros de datos de Cassandra son importantes ya que permiten ejecutar múltiples cargas de trabajo en múltiples centros de datos ...
- ^ "Descripción general de la documentación de Apache Cassandra" . Consultado el 21 de enero de 2021 .
- ^ Hamilton, James (12 de julio de 2008). "Facebook lanza Cassandra como código abierto" . Consultado el 4 de junio de 2009 .
- ^ "¿Es este el nuevo picor ahora?" . Mail-archive.com. 2009-03-02. Archivado desde el original el 25 de abril de 2010 . Consultado el 29 de marzo de 2010 .
- ^ "Cassandra es un proyecto de nivel superior de Apache" . Mail-archive.com. 2010-02-18. Archivado desde el original el 28 de marzo de 2010 . Consultado el 29 de marzo de 2010 .
- ^ "El significado detrás del nombre de Apache Cassandra" . Archivado desde el original el 1 de noviembre de 2016 . Consultado el 19 de julio de 2016 .
Apache Cassandra lleva el nombre del profeta mitológico griego Cassandra. [...] Debido a su belleza, Apolo le otorgó la habilidad de profetizar. [...] Cuando Casandra de Troya rechazó a Apolo, él la maldijo para que no se creyeran todas sus predicciones y las de sus descendientes. [...] Cassandra es el oráculo maldito [.]
- ^ "La Apache Software Foundation anuncia Apache Cassandra Release 0.6: El blog de Apache Software Foundation" . Consultado el 5 de enero de 2016 .
- ^ "La Apache Software Foundation anuncia Apache Cassandra 0.7: el blog de Apache Software Foundation" . Consultado el 5 de enero de 2016 .
- ^ Eric Evans. "[Cassandra-user] [RELEASE] 0.8.0" . Archivado desde el original el 8 de junio de 2015 . Consultado el 5 de enero de 2016 .
- ^ "Cassandra 1.0.0. Está listo para la empresa" . InfoQ . Consultado el 5 de enero de 2016 .
- ^ "La Apache Software Foundation anuncia Apache Cassandra ™ v1.1: El blog de Apache Software Foundation" . Consultado el 5 de enero de 2016 .
- ^ "La Apache Software Foundation anuncia Apache Cassandra ™ v1.2: El blog de Apache Software Foundation" . apache.org . Consultado el 11 de diciembre de 2014 .
- ^ Sylvain Lebresne (10 de septiembre de 2014). "[VOTE SUCCESS] Lanzamiento Apache Cassandra 2.1.0" . mail-archive.com . Consultado el 11 de diciembre de 2014 .
- ^ "Cassandra 2.2, 3.0 y más allá" . 16 de junio de 2015 . Consultado el 22 de abril de 2016 .
- ^ "Versiones del servidor Cassandra" . cassandra.apache.org . Consultado el 15 de diciembre de 2015 .
- ^ "Implementación de Cassandra en varios centros de datos" . DataStax . Consultado el 11 de diciembre de 2014 .
- ^ "El teorema de CAP - Aprenda Cassandra" . teddyma.gitbooks.io .
- ^ a b DataStax (15 de enero de 2013). "Acerca de la coherencia de los datos" . Archivado desde el original el 26 de julio de 2013 . Consultado el 25 de julio de 2013 .
- ^ "Soporte de Hadoop" Archivado el 16 de noviembre de 2017 en elartículo de Wayback Machine en la wiki de Cassandra
- ^ "Controlador DataStax C / C ++ para Apache Cassandra" . DataStax . Consultado el 15 de diciembre de 2014 .
- ^ "CQL" . Archivado desde el original el 13 de enero de 2016 . Consultado el 5 de enero de 2016 .
- ^ "WAT - Cassandra: consistencia de nivel de fila # $ @ &% *! - datanerds.io" . datanerds.io . Consultado el 28 de noviembre de 2016 .
- ^ Lebresne, Sylvain (21 de febrero de 2012). "Próximamente en Cassandra 1.1: aislamiento de nivel de fila" . DataStax: plataforma de datos siempre activa | NoSQL | Apache Cassandra . Consultado el 18 de julio de 2018 .
- ^ Rodríguez, Alain (27 de julio de 2016). "Acerca de eliminaciones y lápidas en Cassandra" .
- ^ Ellis, Jonathan (15 de febrero de 2012). "Esquema en Cassandra 1.1" . DataStax . Consultado el 25 de julio de 2013 .
- ^ Ellis, Jonathan (3 de diciembre de 2010). "Novedades de Cassandra 0.7: índices secundarios" . DataStax . Consultado el 25 de julio de 2013 .
- ^ Ellis, Jonathan (2 de marzo de 2012). "El renacimiento de la gestión de esquemas en Cassandra 1.1" . DataStax . Consultado el 25 de julio de 2013 .
- ^ Lebresne, Sylvain (5 de agosto de 2012). "Próximamente en 1.2: Soporte de colecciones en CQL3" . DataStax . Consultado el 25 de julio de 2013 .
- ^ DataStax. "Documentación de Apache Cassandra 0.7 - Familias de columnas" . Documentación de Apache Cassandra 0.7 . Consultado el 29 de octubre de 2012 .
- ^ "NodeTool" . Wiki de Cassandra . Archivado desde el original el 13 de enero de 2016 . Consultado el 5 de enero de 2016 .
- ^ "Cómo monitorear las métricas de desempeño de Cassandra" . Datadog . Consultado el 5 de enero de 2016 .
- ^ "Métricas" . Wiki de Cassandra . Consultado el 5 de enero de 2016 .
- ^ "Seguimiento" . Documentación de Cassandra . Consultado el 1 de febrero de 2018 .
- ^ DB-Engines . "Ranking de DB-Engines de tiendas de columna ancha" .
- ^ DB-Engines. "Ranking de DB-Engines" .
- ^ Luca Martinetti: Apple ejecuta más de 100k [producción] nodos Cassandra. en Twitter
- ^ "Almacenes de datos en Appscale" . Archivado desde el original el 7 de septiembre de 2013 . Consultado el 7 de julio de 2011 .
- ^ "Principales sesiones de la Cumbre de Cassandra para usuarios avanzados de Cassandra" . Archivado desde el original el 8 de marzo de 2017 . Consultado el 20 de diciembre de 2015 .
- ^ "Multi-tenencia en Cassandra en BlackRock" .
- ^ "Un back-end persistente para el servicio de información en línea ATLAS (P-BEAST)" .
- ^ "Re: Encuesta a usuarios de Cassandra" . Mail-archive.com. 2009-11-21. Archivado desde el original el 17 de abril de 2010 . Consultado el 29 de marzo de 2010 .
- ^ Finley, Klint (18 de febrero de 2011). "Esta semana en consolidación: HP compra Vertica, Constant Contact compra Bantam Live y más" . Leer y escribir Enterprise.
- ^ Eure, Ian. "Mirando al futuro con Cassandra" .
- ^ Quinn, John. "Decir sí a NoSQL; ir firme con Cassandra" . Archivado desde el original el 7 de marzo de 2012.
- ^ Schonfeld, Erick. "Mientras Digg lucha, el vicepresidente de ingeniería se muestra la puerta" .
- ^ "¿Es Cassandra la culpable de los fallos de Digg v4?" .
- ^ Vishnevskiy, Stanislav (14 de enero de 2017). "Cómo Discord almacena miles de millones de mensajes" . Blog de Discord . Consultado el 2 de julio de 2019 .
- ^ Cozzi, Martin (31 de agosto de 2011). "Cassandra en Formspring" .
- ^ Nunes, Alexandre (22 de junio de 2016). "Cassandra en el corazón de la plataforma de transmisión en vivo de Globo" .
- ^ Blackie, William (26 de julio de 2018). "Infraestructura en la nube en Grubhub" . Bytes de Grubhub . Consultado el 29 de marzo de 2019 .
- ^ "Mahalo.com impulsado por Apache Cassandra ™" (PDF) . DataStax.com . Santa Clara, CA, EE.UU .: DataStax . 2012-04-10. Archivado desde el original (PDF) el 17 de diciembre de 2014 . Consultado el 13 de junio de 2014 .
- ^ Mira Cassandra en Mahalo.com | Episodios de DataStax | Blip Archivado el 10 de diciembre de 2011 en Wayback Machine
- ^ "Tuvimos problemas con Monzo el 29 de julio. Esto es lo que sucedió y lo que hicimos para solucionarlo" . Monzo . Consultado el 9 de diciembre de 2020 .
- ^ "Aseguramos miles de clientes de Cassandra para mantener seguros los datos de Monzo" . Monzo . Consultado el 9 de diciembre de 2020 .
- ^ Cockcroft, Adrian (11 de julio de 2011). "Migración de Netflix de Datacenter Oracle a Global Cassandra" . slideshare.net . Consultado el 13 de junio de 2014 .
- ^ Izrailevsky, Yury (28 de enero de 2011). "NoSQL en Netflix" .
- ^ "Biblia Nutanix" . Archivado desde el original el 10 de diciembre de 2015 . Consultado el 18 de abril de 2015 .
- ^ Ooyala ( 18 de mayo de 2010). "Diseño de una base de datos escalable para análisis de video en línea" (PDF) . DataStax.com . Mountain View CA, Estados Unidos. Archivado desde el original (PDF) el 17 de diciembre de 2014 . Consultado el 14 de junio de 2014 .
- ^ Mainstay LLC (11 de noviembre de 2013). "Estudio de caso de DataStax de mensajería Openwave" (PDF) . DataStax.com . Santa Clara, CA, EE.UU .: DataStax . Archivado desde el original (PDF) el 7 de septiembre de 2014 . Consultado el 15 de junio de 2014 .
- ^ Tecnología de publicación de anuncios: optimización avanzada, previsión y segmentación | OpenX Archivado 2011-10-07 en Wayback Machine
- ^ "Hadoop y Cassandra (en Rackspace)" . Stu Hood. 2010-04-23 . Consultado el 1 de septiembre de 2011 .
- ^ david [ketralnis] (12 de marzo de 2010). "Novedades de reddit: la que enreda a los hombres" . blog.reddit. Archivado desde el original el 25 de marzo de 2010 . Consultado el 29 de marzo de 2010 .
- ^ Publicado por los administradores de reddit en (2010-05-11). "blog.reddit - novedades de reddit: informe" Estado de los servidores "de mayo de 2010 de reddit" . blog.reddit. Archivado desde el original el 14 de mayo de 2010 . Consultado el 16 de mayo de 2010 .
- ^ Pattishall, Dathan Vance (23 de marzo de 2011). "Cassandra es mi solución NoSQL pero" .
- ^ "Cassandra en SoundCloud" . Archivado desde el original el 5 de septiembre de 2013 . Consultado el 15 de julio de 2013 .
- ^ Hermann, Jeremy. "Conoce a Miguel Ángel: plataforma de aprendizaje automático de Uber" .
- ^ Onnen, Erik. "De cientos a cientos de millones" .
Bibliografía
- Carpenter, Jeff; Hewitt, Eben (24 de julio de 2016). Cassandra: The Definitive Guide (2ª ed.). O'Reilly Media . pag. 370. ISBN 978-1-4919-3366-4.
- Capriolo, Edward (15 de julio de 2011). Libro de cocina de alto rendimiento de Cassandra (1ª ed.). Packt Publishing . pag. 324. ISBN 978-1-84951-512-2.
- Hewitt, Eben (15 de diciembre de 2010). Cassandra: The Definitive Guide (1ª ed.). O'Reilly Media . pag. 300. ISBN 978-1-4493-9041-9.
enlaces externos
- Lakshman, Avinash (25 de agosto de 2008). "Cassandra - Un sistema de almacenamiento estructurado en una red P2P" . Notas de Engineering @ Facebook . Consultado el 17 de junio de 2014 .
- "El Proyecto Apache Cassandra" . Forest Hill, MD, EE.UU .: The Apache Software Foundation . Consultado el 17 de junio de 2014 .
- "Proyecto Wiki" . Forest Hill, MD, EE.UU .: The Apache Software Foundation . Archivado desde el original el 14 de junio de 2014 . Consultado el 17 de junio de 2014 .
- Hewitt, Eben (1 de diciembre de 2010). "Adopción de Apache Cassandra" . infoq.com . InfoQ, C4Media Inc . Consultado el 17 de junio de 2014 .
- Lakshman, Avinash; Malik, Prashant (15 de agosto de 2009). "Cassandra - un sistema de almacenamiento estructurado descentralizado" (PDF) . cs.cornell.edu . Los autores son de Facebook . Consultado el 17 de junio de 2014 .
- Ellis, Jonathan (29 de julio de 2009). "Lo que todo desarrollador debe saber sobre la escalabilidad de la base de datos" . slideshare.net . Consultado el 17 de junio de 2014 .De la charla de OSCON 2009 sobre RDBMS vs. Dynamo, Bigtable y Cassandra.
- "Cassandra-RPM - Compilación de Red Hat Package Manager (RPM) para el proyecto Apache Cassandra" . code.google.com . Menlo Park, CA, EE. UU .: Alojamiento de proyectos de Google . Consultado el 17 de junio de 2014 .
- Roth, Gregor (14 de octubre de 2012). "Cassandra por ejemplo: la ruta de las solicitudes de lectura y escritura" . slideshare.net . Consultado el 17 de junio de 2014 .
- Mansoor, Umer (4 de noviembre de 2012). "Una colección de tutoriales de Cassandra" . Consultado el 8 de febrero de 2015 .
- Bushik, Sergey (22 de octubre de 2012). "Una comparación independiente del proveedor de bases de datos NoSQL: Cassandra, HBase, MongoDB, Riak" . NetworkWorld . Framingham, MA, EE.UU. y Staines, Middlesex, Reino Unido: IDG . Archivado desde el original el 28 de mayo de 2014 . Consultado el 17 de junio de 2014 .