Está en la página 1de 17

“AÑO DE LA LUCHA CONTRA LA CORRUPCIÓN

E IMPUNIDAD”
Universidad nacional de la Amazonia peruana
Facultad de ingeniería de sistemas e informática

Integrantes : Hidalgo Paredes, Harold Daniel.


Cabrera Armas, Víctor Ivan.
Garcia Flores, Segundo.
Vargas Curico, Wilfrido.
Cancino Martinez, Franco David.

Docente : Ing. Jose Garcia Diaz.

Asignatura : Taller de Base de Datos.

Tema : Apache CASSANDRA BD

Ciclo :V

Nivel : III

Iquitos – Perú
2019
INDICE

Contenido
INDICE............................................................................................................................................ 2
INTRODUCCION ............................................................................................................................. 3
Tipos de bases de datos ................................................................................................................ 4
Qué es Apache Cassandra ............................................................................................................. 5
Características de Apache Cassandra ............................................................................................ 6
SUS CARACTERÍSTICAS MÁS IMPORTANTES SON: ........................................................................ 7
Cassandra Datastax ....................................................................................................................... 8
VENTAJAS Y DESVENTAJAS DE CASSANDRA .................................................................................. 8
INSTALACION DE CASSANDRA EN CENTOS 7 ................................................................................ 9
Actualizar el sistema e instalar Java en CentOS 7 ......................................................................... 9
Instalar Cassandra en CentOS 7 .............................................................................................. 10
CONECTAR Y VERIFICAR EL CLÚSTER DE CASSANDRA EN CENTOS 7 .......................................... 13
BIBLIOGRAFIA .............................................................................................................................. 17
INTRODUCCION
Apache Cassandra es una base de datos NoSQL (Not Only SQL), un tipo de bases de datos que,
por la cantidad de datos o por la evolución de los datos que hemos tenido en los últimos años,
ha sido necesario crear.

Estas nuevas bases de datos son más flexibles a la hora de recoger datos desestructurados o
semiestructurados que las bases de datos tradicionales o las bases de datos relacionales.
Tipos de bases de datos
Existen cuatro tipos de bases de datos NoSQL:
Bases de datos clave-valor o key-value:
Son bases de datos muy parecidas a un diccionario, ya que al final se reducen a tener
una clave y un valor o un conjunto de valores para la misma. Suelen trabajar en memoria
y son muy rápidas, por ello se usan principalmente para conseguir mucha velocidad.

Bases de datos de familia de columnas (column family):


Son unas bases de datos que, como su nombre indica, almacenan los datos en columnas
en lugar de en filas, como estamos acostumbrados con las bases de datos tradicionales.
Cassandra se sitúa aquí en esta en esta categoría de familia de columnas.

Bases de datos de grafos (Graph DB):


Están formadas por nodos y por aristas, y las relaciones entre nodos la conforman las
aristas. Una de las principales ventajas de estas bases de datos es que podemos
almacenar información tanto en nodos como en aristas. Por lo que por ejemplo podemos
tener un nodo persona con el nombre Abraham, y otro nodo persona con el nombre Juan,
y en la arista podemos almacenar otra información, como que son amigos y la fecha
desde que lo son.

Bases de datos orientadas a documentos:


Almacenan los datos en forma de documentos, que podemos decir de forma muy
resumida que es un archivo JSON. Al almacenarlos en JSON, tenemos mucha flexibilidad,
porque podemos almacenar más menos datos y la base de datos no se va a resentir y va
a seguir funcionando.
Qué es Apache Cassandra
Apache Cassandra fue lanzada en el año 2008 y fue creada inicialmente por Facebook.
Más tarde fue traspasada a la Fundación Apache, convirtiéndose en una herramienta
Open Source, que a día de hoy la sigue manteniendo.
Está inspirada tanto en Amazon Dynamo como en Google BigTable.
Para comprender bien la base de datos Cassandra es importante conocer el Teorema
CAP.

Este Teorema lo que dice es que un sistema distribuido no puede conseguir las tres siglas
del teorema, que son consistencia (Consistency), alta disponibilidad (Avaiability) y
tolerancia a particiones (Partition tolerance).
Lo que quiere decir es que nuestras bases de datos siempre se van a mover en la
intersección de dos de las tres características, pero nunca en el en el triángulo amarillo,
que sería la intersección de las tres.
Como vemos en la imagen, Apache Cassandra está situada en la intersección de alta
disponibilidad y tolerancia a particiones, sacrificando un poco la parte de la consistencia.
Características de Apache Cassandra
SUS CARACTERÍSTICAS MÁS IMPORTANTES SON:

Es una base de datos distribuida, es decir, vamos a tener nuestros servidores


distribuidos.
Escala linealmente, lo que significa que, como vemos en la imagen, si tenemos dos
nodos, vamos a poder realizar 100000 operaciones por segundo. Si tuviéramos cuatro
nodos podremos realizar el doble de operaciones, y así sucesivamente, cada vez que
dupliquemos el número de nodos, duplicaremos el número de operaciones por
segundo.
No sigue un patrón maestro-esclavo, sino que es peer-to-peer o P2P. Esto lo que
conlleva es que si se cae un nodo, el servicio puede seguir funcionando, no como en el
patrón maestro-esclavo, en el que, de forma resumida, si se cae el maestro el sistema
cae también.
Permite la escalabilidad horizontal, que es diferente a la escalabilidad vertical. En la
segunda lo que se aumenta es la máquina, como por ejemplo tener una máquina con 16
gigas de RAM y la aumentamos a 32 gigas de RAM. Y en la primera tenemos una máquina
con 16 gigas de RAM y lo que hacemos es poner otra máquina también con 16 gigas de
RAM trabajando en paralelo con la otra.
Es tolerante a fallos, gracias a que posee la replicación de datos, es decir, los datos
cuando son escritos en un nodo se replican en otros nodos, por lo que si uno de estos
nodos cae, no pasa nada porque el dato está replicado en otros dos.
Permite definir el nivel de consistencia.
Usa el lenguaje CQL, que es un lenguaje muy similar a SQL.
Permite la replicación en varios data center, siendo cada data center un anillo de
máquinas Cassandra, ya que permite que el anillo 1 replique sus datos en el anillo 2.
Cassandra Datastax
Es una base de datos Open Source “comercializada” por Datastax, cuyo modelo de
negocio es ofrecer la base de datos de forma gratuita y cobrar por el mantenimiento y
soporte.

VENTAJAS Y DESVENTAJAS DE CASSANDRA

Algunas de las ventajas de Apache Cassandra son:

 Alta disponibilidad, lo que es muy interesante para el sistema en los que una
caída sea crucial.
 Tolerancia a particiones y escalado.
 Cantidad de recursos que se tienen disponibles.

Algunas de sus desventajas:

 La conexión de nuevos nodos no es tarea fácil, ya que el mismo se tiene que


poner de acuerdo con el resto, y esto conlleva un tiempo.
 Debemos saber qué queries se van a ejecutar previamente, ya que al hacer
SELECT sufre un poco debido a la manera en la que almacena los datos.

En resumen, Cassandra es una base de datos muy potente, que actualmente es


utilizada por grandes empresas como las que podemos ver en esta imagen:

Aprende todo sobre las bases de datos NoSQL. Conoce ahora su arquitectura y cómo
desarrollar tu entorno de trabajo con Cassandra.
INSTALACION DE CASSANDRA EN CENTOS 7

Actualizar el sistema e instalar Java en CentOS 7

Paso 1

El primer paso a dar es actualizar el sistema operativo, esto lo podemos realizar ejecutando el
siguiente comando:

1. sudo yum update -y

Paso 2

Cassandra está escrito en Java, por lo que será necesario instalar Java en CentOS 7 ejecutando
el siguiente comando:

1. sudo yum install java -y


Paso 3

Podremos comprobar la versión de Java instalada ejecutando el siguiente comando:

1. sudo java -version

Instalar Cassandra en CentOS 7


Paso 1
Por defecto, la base de datos Cassandra no se encuentra disponible en el repositorio por
defecto de CentOS 7 por esta razón, será necesario agregar los repositorios oficiales de Apache
Software Foundation a CentOS 7, y esto lo logramos creando el archivo cassandra.repo dentro
del directorio /etc/yum.repos.d de la siguiente forma:

1. sudo nano /etc/yum.repos.d/cassandra.repo

Paso 2
En este nuevo archivo creado añadiremos lo siguiente:

1. [cassandra]
2. name = DataStax Repo for Apache Cassandra
3. baseurl = http://rpm.datastax.com/community
4. enabled = 1
5. gpgcheck = 0

Paso 3

Ahora, será necesario actualizar los paquetes del repositorio ejecutando lo siguiente:

1. sudo yum update -y

Paso 4
Ahora podremos instalar Cassandra ejecutando el siguiente comando:

1. sudo yum install dsc20


Paso 5

Una vez descargado e instalado veremos lo siguiente:

Paso 6
Una vez instalado Cassandra procedemos a ejecutar los siguientes comandos:

1. sudo systemctl start cassandra (Inicio del servicio Cassandra)


2. sudo systemctl enable cassandra (Habilitación del servicio de
Cassandra al inicio del sistema)
Paso 7

Finalmente, podremos ver el estado de Cassandra ejecutando el siguiente comando:

1. sudo systemctl status cassandra

3 CONECTAR Y VERIFICAR EL CLÚSTER DE CASSANDRA


EN CENTOS 7
Paso 1

En este punto Cassandra está funcionando, por ello vamos a verificar y conectar Cassandra
Clúster, para ello, en primer lugar, vamos a verificar el estado del Cassandra Clúster con el
siguiente comando:

1. sudo nodetool status


Paso 2

Podemos ver que el estado de conexión con clúster es correcto. En este punto Solvetic desea
añadir un punto de solución porque en muchas ocasiones al ejecutar este comando se
despliega el siguiente error:

1. Error: Failed to connect to ‘127.0.0.1:7199’: Connection refused


(Cassandra)

Paso 3

Para solucionar este error y acceder de forma correcta debemos ir al siguiente directorio
usando el editor deseado:

1. sudo nano /etc/cassandra/default.conf/cassandra-env.sh

Paso 4

Allí debemos ubicar la siguiente línea:

1. JVM_OPTS="$JVM_OPTS -Djava.rmi.server.hostname=

Paso 5

La apariencia debe ser similar al siguiente texto:

1. # add this if you’re having trouble connecting:


2. # JVM_OPTS=”$JVM_OPTS -Djava.rmi.server.hostname=<public name>”
Paso 6

Allí debemos descomentar la segunda línea y reemplazar la línea public name por la dirección
IP 127.0.0.1:

Paso 7

Procedemos a reiniciar el servicio ejecutando lo siguiente:

1. systemctl restart cassandra

Paso 8
En algunos casos se recomienda reiniciar el equipo, de este modo corregiremos dicho error.
Ahora podremos conectarnos al clúster de Cassandra ejecutando el siguiente comando:
1. cqlsh

Paso 9

Podemos ver la respectiva conexión para empezar a trabajar en esta base de datos. Para salir
usaremos el término

1. exit

De esta forma hemos visto como instalar y acceder a Cassandra en CentOS 7.

https://www.solvetic.com/tutoriales/article/4787-como-instalar-base-de-
datos-cassandra-centos-7/
BIBLIOGRAFIA

https://openwebinars.net/blog/que-es-apache-cassandra/

También podría gustarte