Apache Cassandra

23
Jonathan Ricardo, Ortiz Vilca – 6to Ciclo Empecemos a aprender un poco mas sobre la actualidad 27/10/2022 Universidad Peruana de Ciencias e Informatica - FISEI 1

Transcript of Apache Cassandra

Page 1: Apache Cassandra

Jonathan Ricardo, Ortiz Vilca – 6to Ciclo

13/04/2023 Universidad Peruana de Ciencias e Informatica - FISEI

1

Empecemos a aprender un poco mas

sobre la actualidad

Page 2: Apache Cassandra

Jonathan Ricardo, Ortiz Vilca – 6to Ciclo

13/04/2023 Universidad Peruana de Ciencias e Informatica - FISEI

2

Apache Cassandra

Page 3: Apache Cassandra

Jonathan Ricardo, Ortiz Vilca – 6to Ciclo

13/04/2023 Universidad Peruana de Ciencias e Informatica - FISEI

3

¿Que es Apache Cassandra?

Page 4: Apache Cassandra

Jonathan Ricardo, Ortiz Vilca – 6to Ciclo

13/04/2023 Universidad Peruana de Ciencias e Informatica - FISEI

4

Antes de Responder a esta pregunta, debemos responder a …

Apache Cassandra

¿Que es NoSQL ?

… es necesario responder a esto primero, ustedes se darán cuenta del por qué, mas adelante.

Page 5: Apache Cassandra

Jonathan Ricardo, Ortiz Vilca – 6to Ciclo

13/04/2023 Universidad Peruana de Ciencias e Informatica - FISEI

5

NoSQL

Llamado en algunos casos “no solo SQL”, proviene de una amplia clase de gestión de base de datos que difieren del modelo clásico del Relation DataBase

Management System (RDBMS), no estructuradas, siendo el mas destacado de los que no usan SQL como su principal lenguaje de consultas.1

Apache Cassandra

Page 6: Apache Cassandra

Jonathan Ricardo, Ortiz Vilca – 6to Ciclo

13/04/2023 Universidad Peruana de Ciencias e Informatica - FISEI

6

¿Sabias que?

Page 7: Apache Cassandra

Jonathan Ricardo, Ortiz Vilca – 6to Ciclo

13/04/2023 Universidad Peruana de Ciencias e Informatica - FISEI

7

¿ Sabias que ?

El 95% de la información que se está generando actualmente en la red se corresponde con

información no estructurada y las bases de datos relacionales tradicionales no son adecuadas para el manejo de esta información. Los nuevos sistemas de gestión de datos desarrollados para su manejo, que utilizan infraestructuras de supercomputación altamente distribuidas, reciben

habitualmente el nombre de NoSQL.

Apache Cassandra

Page 8: Apache Cassandra

Jonathan Ricardo, Ortiz Vilca – 6to Ciclo

13/04/2023 8

¿Contrastando NoSQL y SQL?

Universidad Peruana de Ciencias e Informatica - FISEI

Page 9: Apache Cassandra

Jonathan Ricardo, Ortiz Vilca – 6to Ciclo

13/04/2023 9

NoSQL y SQL (contraste)

Apache Cassandra

La principal diferencia radica en cómo guardan los datos (por ejemplo, almacenamiento de un recibo):En una RDBMS tendríamos que partir la información en diferentes tablas y luego usar un lenguaje de programación en la parte servidora para transformar estos datos en objetos de la vida real.En NoSQL, simplemente guardas el recibo:NoSQL es libre de schemas, tú no diseñas tus tablas y su estructura por adelantado

Universidad Peruana de Ciencias e Informatica - FISEI

Page 10: Apache Cassandra

Jonathan Ricardo, Ortiz Vilca – 6to Ciclo

13/04/2023 10

Ahora que ya tenemos una base, a la respuesta a la pregunta de …

Apache Cassandra

¿Que es NoSQL?

… nos toca contarte ¿Que es Cassandra?.

Universidad Peruana de Ciencias e Informatica - FISEI

Page 11: Apache Cassandra

Jonathan Ricardo, Ortiz Vilca – 6to Ciclo

13/04/2023 Universidad Peruana de Ciencias e Informatica - FISEI

11

¿Qué es Apache Cassandra?

• Es un motor de bases de datos NoSQL, Open Source e implementado en Java.

• Fue originalmente creada por Facebook y donada a Apache como software libre en 2009.

• Es una de las base de datos NoSQL más relevantes a nivel mundial: Netflix, eBay, Twitter, Urban Airship, Constant Contact, Reddit, Cisco, OpenX, Digg, CloudKick, Ooyala, …

Apache Cassandra

Page 12: Apache Cassandra

Jonathan Ricardo, Ortiz Vilca – 6to Ciclo

13/04/2023 Universidad Peruana de Ciencias e Informatica - FISEI

12

¿Qué es Apache Cassandra?

• Cassandra puede manejar varios terabytes de datos si lo necesita y puede, fácilmente,

manejar millones de ficheros, incluso en un clúster pequeño (Big Data).• La información en las bases de datos relacionales, se almacenan en forma de filas, pero en

Cassandra la información se almacena en columnas con pares key-value.

Apache Cassandra

El término clúster (del inglés cluster, "grupo" o "racimo") se aplica a los conjuntos o

conglomerados de computadoras construidos mediante la utilización de hardware comunes y que

se comportan como si fuesen una única computadora

Page 13: Apache Cassandra

Jonathan Ricardo, Ortiz Vilca – 6to Ciclo

13/04/2023 Universidad Peruana de Ciencias e Informatica - FISEI

13

Bien!, ya tenemos un concepto de Apache Cassandra pero…

Apache Cassandra

¿Cuáles son sus Características?

… a continuación.

Page 14: Apache Cassandra

Jonathan Ricardo, Ortiz Vilca – 6to Ciclo

13/04/2023 Universidad Peruana de Ciencias e Informatica - FISEI

14

Cassandra (características)

Apache Cassandra

Esquema dinámico. El esquema que define la estructura de los datos

puede cambiar en tiempo de ejecución.

Alta disponibilidad. Los datos estás disponibles

la mayor parte del tiempo gracias a la redundancia que

introduce la replicación de datos.

No hay un único punto de fallo. Los datos se

replican automáticamente a

varios nodos. Perder un nodo no causa la baja

del clúster.

Page 15: Apache Cassandra

Jonathan Ricardo, Ortiz Vilca – 6to Ciclo

13/04/2023 Universidad Peruana de Ciencias e Informatica - FISEI

15

Cassandra (características)

Apache Cassandra

Fragmentacióno de los datos. La topología de Cassandra es la de un anillo a través del cual se distribuyen los datos para minimizar cuellos de botella en el acceso a los mismos.

Escalabilidad horizontal. Hasta un alto número de máquinas la capacidad de cómputo aumenta linealmente con el número de máquinas.

Capacidad para manejar cientos de gigabytes de datos.

Page 16: Apache Cassandra

Jonathan Ricardo, Ortiz Vilca – 6to Ciclo

13/04/2023 Universidad Peruana de Ciencias e Informatica - FISEI

16

Uno de las preguntas mas importantes es…

Apache Cassandra

¿Cuál es su Terminologia?

Page 17: Apache Cassandra

Jonathan Ricardo, Ortiz Vilca – 6to Ciclo

13/04/2023 Universidad Peruana de Ciencias e Informatica - FISEI

17

¿Cuál es su terminología?

Column. Es la unidad mas básica en el modelo de datos de Cassandra. Una column es un triplete de un key (un nombre) un value (un valor) y un timestamp. Los valores son todos suministrados por el cliente. El tipo de dato del key y el value son matrices de bytes de Java, el tipo de dato del timestamp es un long primitive.

• Las column son inmutables para evitar problemas de multithreading.

• Las column se organizan dentro de las columns families.• Las column se ordenan por un tipo, que pueden ser uno de los

siguientes:– AsciiType– BytesType– LongType– TimeUUIDType– UTF8Type

Apache Cassandra

Page 18: Apache Cassandra

Jonathan Ricardo, Ortiz Vilca – 6to Ciclo

13/04/2023 Universidad Peruana de Ciencias e Informatica - FISEI

18

¿Cuál es su terminología?

• SuperColumn. Es una column cuyos values son una o más columns, que en este contexto se llamaran subcolumns. Las subcolumns están ordenadas, y el numero de columnas que se puede definir es ilimitada. Las Super columns, a diferencias de las columns, no tienen un timestamp definido.

• Column Family. Es mas o menos análogo a una tabla en un modelo relacional. Se trata de un contenedor para una colección ordenada de columns. Cada column family se almacena en un archivo separado

• Keyspace. Es el contenedor para las column family. Es mas o menos análogo a una base de datos en un modelo relacional, usado en Cassandra para separar aplicaciones. Un keyspace es una colección ordenada de columns family.

• Clúster. Conjunto de máquinas que dan soporte a Cassandra y son vistas por los clientes como una única máquina.

Apache Cassandra

Page 19: Apache Cassandra

Jonathan Ricardo, Ortiz Vilca – 6to Ciclo

13/04/2023 Universidad Peruana de Ciencias e Informatica - FISEI

19

Ahora veremos …

Apache Cassandra

¿Cómo es la estructura de su modelo de Datos?

Page 20: Apache Cassandra

Jonathan Ricardo, Ortiz Vilca – 6to Ciclo

13/04/2023 Universidad Peruana de Ciencias e Informatica - FISEI

20

¿Cómo es la estructura de su modelo de datos?

Apache Cassandra

Page 21: Apache Cassandra

Jonathan Ricardo, Ortiz Vilca – 6to Ciclo

13/04/2023 Universidad Peruana de Ciencias e Informatica - FISEI

21

¿Cómo es la estructura de su modelo de datos?

Apache Cassandra

Page 22: Apache Cassandra

Jonathan Ricardo, Ortiz Vilca – 6to Ciclo

13/04/2023 Universidad Peruana de Ciencias e Informatica - FISEI

22

Espero haberles servido de ayuda en algunas de sus dudas…

Apache Cassandra

Gracias por su Tiempo

Hasta la proxima…

Page 23: Apache Cassandra

Jonathan Ricardo, Ortiz Vilca – 6to Ciclo

13/04/2023 Universidad Peruana de Ciencias e Informatica - FISEI

23

Fuentes

NoSQL• http://es.wikipedia.org/wiki/NoSQL• http://www.slideshare.net/dipina/nosql-introdu

ccin-a-las-bases-de-datos-no-estructuradas (recomendada).

Palabras informáticas• http://es.wikipedia.org/wiki/Cl%C3%BAster_(inf

orm%C3%A1tica) (clúster).

• http://en.wikipedia.org/wiki/Attribute%E2%80%93value_pair (key - value)