2. Introducción
• Es un sistema de administración de base de datos
distribuida, open source, diseñado para manejar grandes
cantidades de datos.
• Se autodefine como “Altamente escalable,
eventualmente consistente, distribuida y basada en datos
clave-valor”.
• Es una solución NoSQL, inicialmente desarrollada por
Facebook (liberado en julio 2008) y desde Marzo 2009 es
un proyecto de la fundaciónApache (Feb 17 2010
toplevel).
• Esta basada en BigTable (Módelo de Datos) y Amazon
Dynamo (infraestructura).
• Desarrollado en Java.
3. Base De Datos NoSQL
Introducción
Las Bases de Datos NoSQL crecieron con las principales compañías
de Internet, como Google, Amazon, Twitter y Facebook. Éstas
tenían que enfrentarse a desafíos con el tratamiento de datos que
las tradicionales RDBMS no solucionaban . Con el crecimiento de la
web en tiempo real existía una necesidad de proporcionar
información procesada a partir de grandes volúmenes de datos que
tenían unas estructuras horizontales más o menos similares. Estas
compañías se dieron cuenta que el rendimiento y sus propiedades
de tiempo real eran más importantes que la coherencia, en la que
las RDBMS dedicaban una gran cantidad de tiempo de proceso.
4. NoSQL: También llamado “no solo
SQL”, es una amplia clase de sistemas
de gestión de bases de datos que se
diferencian del modelo clásico del
sistema de gestión de bases de datos
relacionales (RDBMS) en aspectos
importantes, el más destacado es: no
usan SQL como el principal lenguaje
de consultas. Los datos almacenados
no requieren estructuras fijas como
tablas y mayormente no soportan
operaciones JOIN.
BASE DE DATOS NoSQL
5. Modelo de Almacenamiento
Clave -Valor
En un sistema RDBMS tenemos bases de datos y dentro de
cada base de datos tenemos tablas formadas por filas y
columnas. En cambio en un sistema clave-valor tenemos
contenedores, también se les llama cabinets, en cada
contenedor podemos tener tantas parejas de clave-valor
como queramos. En cada contenedor podemos tener datos
de la misma naturaleza o totalmente diferente.
A cada clave se asocia un valor (clave=valor), por ejemplo:
“Nombre=Jose”, “Apellido=Hernandez”.
6. ID Usuario Nombre EMail Fecha
1 pepe Jose ja@ja.com 02/04/1971
2 juan Juan juan@hatmail.com 18/02/1982
3 mario Mario mgarcia@correo.es null
Base de Datos Relacional
Base de Datos Clave Valor
ID Usuario
1 pepe
2 juan
3 mario
ID
usuario
Clave Valor
1 nombre Jose Alberto
1 email ja@ja.com
1 fecha 19710402
2 nombre JuanAntonio
2 email juan@hatmail.com
2 fecha 19820218
3 nombre Mario Garcia
3 email
mgarcia@micorreo.
es
7. Apache Cassandra
Apache Cassandra es una base
de datos NoSQL(o también No
Solo SQL),distribuida y basada
en un modelo de
almacenamiento de «clave-
valor», escrita en Java. Permite
grandes volúmenes de datos en
forma distribuida. Su objetivo
principal es la escalabilidad
lineal y la disponibilidad. La
arquitectura distribuida de
Cassandra está basada en una
serie de nodos iguales que se
comunican con un protocolo
P2P (peer to per) con lo que la
redundancia es máxima. Protocolo P2P
8. Historia
• Apache Cassandra fue desarrollada para impulsar su
función de búsqueda de Bandeja de entrada de
Facebook por Avinash Lakshman y Prashant Malik. Fue
lanzado como un proyecto de código abierto en julio de
2008. En marzo de 2009, se convirtió en un proyecto de
Apache. El 17 de febrero 2010 se graduó como un
proyecto de nivel superior.
9. Lanzamientos de
Avinash Lakshman y Prashant Malik
Lanzamientos después de la graduación incluyen
• 0.6, lanzado 12 de abril 2010, añade soporte para el almacenamiento en caché
integrado y Apache Hadoop MapReduce
• 0.7, lanzado 08 de enero 2011, añadida índices secundarios y los cambios de
esquema en línea.
• 0.8, lanzado 02 de junio 2011, añade el idioma Cassandra Query (CQL), auto-
tuning memtables, y el apoyo a las actualizaciones sin tiempo de inactividad
• 1.0, lanzado 17 de octubre 2011, agregó la compresión integrada, nivelada
compactación y mejora el rendimiento de lectura
• 1.1, lanzado 23 de abril 2012, añadió auto-tuning cachés, el aislamiento a nivel de
fila, y soporte para ssd mixta / hilado despliegues disco
• 1.2, lanzado 02 de enero 2013, añadió la agrupación en los nodos virtuales, la
comunicación entre nodos, lotes atómicas y seguimiento de solicitudes
• 2.0, lanzado 04 de septiembre 2013, añadió transacciones ligeras, disparadores,
la mejora de compactadoras.
10. 1) Descargar la ultima versión (0.5.1 actual)
●Web oficial: http://cassandra.apache.org/
Instalación y Puesta en Marcha