Exposicion Cassandra

Post on 02-Feb-2016

272 views 1 download

description

Cassandra BD explicado

Transcript of Exposicion Cassandra

Apache CassandraEstudiantes: Paula Andrea Ruiz - Sergio Muñoz Lancheros

Apache Cassandra fue inicialmente desarrollada en Facebook para impulsar las búsqueda en la bandeja de entrada por Avinash Lakshman (uno de los autores deAmazon's Dynamo) y Prashant Malik. Fue lanzada como un proyecto open source de Google code en julio de 2008. En marzo de 2009, se transformó en un proyecto de Apache Incubator. El 17 de febrero de 2010 se graduó como un proyecto de alto nivel.HISTORIA

NoSQL

NoSQL, es una amplia clase de sistemas de gestión de bases de datos que difieren del modelo clásico del sistema de gestión de bases de datos relacionales (RDBMS) en aspectos importantes, el más destacado es que no usan SQL como el principal lenguaje de consultas.

No requieren estructuras como tablas.

Normalmente no soportan operaciones Join.

No garantizan ACID.

Categorías clave-valor.

Implementaciones BigTable.

Bases de datos documentales.

Bases de datos orientados a grafos.

Ventajas

Estos sistemas responden a las necesidades de escalabilidad horizontal que

tienen cada vez más empresas.

Pueden manejar enormes cantidades de datos.

No generan cuellos de botella.

Escalamiento sencillo.

Diferentes DBs NoSQL para diferentes proyectos.

Se ejecutan en clusters de máquinas baratas.

desventajas

El código abierto puede significar una "mancha" en el soporte para las empresas.

No están lo suficientemente maduros para algunas empresas.

Limitaciones de Inteligencia de Negocios.

La falta de experiencia.

Problemas de compatibilidad.

¿QUÉ ES ?

Apache Cassandra es una base de datos NoSQL

distribuida y basada en un modelo de almacenamiento de «clave-valor», de código

abierto que está escrita en

Java.

Apache Cassandra

-Sistema NoSQL, distribuido y preparado para big data.

-Software libre (Apache software Foundation).

-Emplea nodos iguales formando anillos.

-Distribuye los datos con la función Hash.

-Escala horizontalmente (p2p).

-Emplea familia columnas (Big table +Dynamo).

-CQL lenguaje de consultas.

-Consistencia eventual.

-Soporta múltiples centros de datos.

-Compatible con Hadoop y spark, entre otros.

Características claves

Arquitectura

Su arquitectura se basa en el entendimiento de que pueden ocurrir y ocurren fallos del sistema y hardware. Cassandra aborda el problema de los fallos mediante el empleo de un sistema de peer-to-peer distribuidos a través de nodos homogéneos donde los datos se distribuye entre todos los nodos del clúster.

Componentes de Arquitectura

Node

Data center

Cluster

Commit log

Table

SSTable

Modelado de datos

Column

SuperColumn

Column Family

KeySpace

Cluster

Modelado de datos

,

Diferencias

no existe la Integridad referencial que existe en el modelo relacional, no hay joins, pero estos se pueden emular almacenando las claves de una Columfamily en otras filas de otro columFamily o haciendo uso de índices.

Otra diferencia entre Cassandra y el Modelo de datos relacional es que Casandra no normaliza los datos a la hora de generar el modelo, ya que trabaja con un mayor rendimiento con datos des-normalizados, por ello a la hora de modelar la base de datos de Cassandra se debe pensar primero en las consultas que se van a realizar y una vez se sepan qué consultas van a hacerse a las bases de datos se realiza el modelo de datos para satisfacer a dichas consultas.

CQL