Apache Cassandra in Bangalore - Cassandra Internals and Performance
Apache Cassandra - Base de datos
-
Upload
zteeven-zalinas -
Category
Education
-
view
176 -
download
11
Transcript of Apache Cassandra - Base de datos
¿Qué es CASSANDRA?
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. Permite grandes volúmenes de datos en forma distribuida.
Por ejemplo, lo usa Twitter para su plataforma. 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 con lo que la redundancia es máxima. Está desarrollada por Apache Software Foundation.
Cassandra ofrece soporte robusto para múltiples centros de datos, con la replicación asincrónica sin necesidad de un servidor maestro, que permiten operaciones de baja latencia para todos los clientes.
Cassandra también ofrece un gran rendimiento. En 2012, investigadores de la Universidad de Toronto que estudian los sistemas NoSQL concluyeron que "En términos de escalabilidad, hay un claro ganador a través de nuestros experimentos. Cassandra logra el más alto rendimiento para el número máximo de nodos en todos los experimentos", aunque "esto tiene como precio una alta latencia de escritura y lectura"
CARACTERISTICAS PRINCIPALES
Descentralizado
Todos los nodos del clúster tiene el mismo rol. No hay un único punto de fallo.Losdatos se distribuyen a través del clúster (por loque cada nodo contiene datosdiferentes). No existe un nodo maestro por lo que cada nodo puede dar servicio acualquier solicitud.
Escalabilidad
El rendimiento de leer y escribir aumenta linealmente a medida que se añadennuevos nodos. Se pueden agregar nuevos nodos sin necesidad de interrumpir laejecución de la aplicación.
Tolerancia a fallos
Los datos se replican automáticamente a múltiples nodos para recuperarse frente afallos.Cassandra soporta replicación a través de multiples datacenter. Se puede reemplazarnodos que presenten fallos sin tiempo de inactividad o interrupción de la aplicación.
Consistencia
Se ofrece la elección de el nivel de consistencia para laslecturas y escrituras.
Paso 2: Presionamos en el recuadro y damos en el visto, a continuación aplastamos en el botón “next”
Paso3: Escogemos la ubicación en donde queremos que se guarde nuestro programa y volvemos a presionar “next”
Paso 8: Al finalizado esto, podemos empezar a utilizar nuestro sistema y procedemos a crear una base de datos.
¿Qué es NoSQL?
En informática, NoSQL (a veces llamado "no sólo SQL") 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. Los datos almacenados no requieren estructuras fijas como tablas, normalmente no soportan operaciones JOIN, ni garantizan completamente ACID (atomicidad, consistencia, aislamiento y durabilidad), y habitualmente escalan bien horizontalmente. Los sistemas NoSQL se denominan a veces "no sólo SQL" para subrayar el hecho de que también pueden soportar lenguajes de consulta de tipo SQL.
Por lo general, los investigadores académicos se refieren a este tipo de bases de datos como almacenamiento estructurado, término que abarca también las bases de datos relacionales clásicas. A menudo, las bases de datos NoSQL se clasifican según su forma de almacenar los datos, y comprenden categorías como clave-valor, las implementaciones de BigTable, bases de datos documentales, y Bases de datos orientadas a grafos.
Ventajas
Estos sistemas responden a las necesidades de escalabilidad horizontal que tienen cada vez más empresas.3
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.
SISTEMAS
Bases de datos documentales
Bases de datos en grafo
Bases de datos clave/valor
Bases de datos multivalor
Bases de datos orientadas a objetos
Bases de datos tabular
Bases de datos de arrays
Bibliografía
Capriolo, Edward (July 15, 2011). Cassandra High Performance Cookbook (1st edición). Packt Publishing. p. 324. ISBN 1-84951-512-3.
Hewitt, Eben (December 15, 2010). Cassandra: The Definitive Guide (1st edición). O'Reilly Media. p. 300. ISBN 978-1-4493-9041-9.
http://es.wikipedia.org/wiki/NoSQL