Sei sulla pagina 1di 11

Curso: Administracin de

Base de Datos VI ciclo

Miguel ngel Huamanvilca


Chahua

BASE DE DATOS NoSQL


NoSQL, tambin llamado no
solo SQL,es una amplia clase
de sistemas de gestin de
bases
de
datos
que
se
diferencian del modelo clsico
del sistema de gestin de
bases de datos relacionales
(RDBMS)
en
aspectos
importantes, el ms destacado
es:
no
usanSQLcomo
el
principal lenguaje de consultas.
Los datos almacenados no
requieren
estructuras
fijas
como tablas y mayormente no
soportan operacionesJOIN.

BASE DE DATOS NoSQL


Las Bases de Datos NoSQL crecieron con las principales
compaas de Internet, como Google, Amazon, Twitter y
Facebook. stas tenan que enfrentarse a desafos con el
tratamiento de datos que las tradicionales RDBMS no
solucionaban. Con el crecimiento de la web en tiempo real
exista una necesidad de proporcionar informacin procesada a
partir de grandes volmenes de datos que tenan unas
estructuras horizontales ms o menos similares. Estas
compaas se dieron cuenta que el rendimiento y sus
propiedades de tiempo real eran ms importantes que la
coherencia, en la que las RDBMS dedicaban una gran cantidad
de tiempo de proceso.

BASE DE DATOS NoSQL


En ese sentido, frecuentemente, las bases de datos
NoSQL estn altamente optimizadas para las
operaciones recuperar y agregar, y normalmente
no ofrecen mucho ms que la funcionalidad de
almacenar los registros (p.ej. almacenamiento
clave-valor). La prdida de flexibilidad en tiempo de
ejecucin, comparado con los sistemas RDBMS, se
ve compensada por ganancias significativas en
escalabilidad y rendimiento cuando se trata con
ciertos modelos de datos.

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, tambin se les llamacabinets,
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.

Base de Datos Relacional

I
D

Usuari
o

Nombr
e

EMail

Fecha

pepe

Jose

ja@ja.com

02/04/1971

juan

Juan

juan@hatmail.co
m

18/02/1982

mario

Mario

mgarcia@correo.
es

null

ID
usuario

Clave

Valor

nombr
e

Jose Alberto

email

ja@ja.com

Usuari
o

fecha

19710402

pepe

nombr
e

Juan Antonio

juan

mario

email

juan@hatmail.co
m

fecha

19820218

nombr
e

Mario Garcia

ID

Base de Datos Clave Valor

Apache Cassandra
Apache Cassandraes una
base
de
datosNoSQL(o
tambin
No
Solo
SQL),distribuida y basada en
un modelo de almacenamiento
de
clave-valor,
escrita
enJava.
Permite grandes
volmenes 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 mxima.

Protocolo P2P

Historia
Apache

Cassandra fue desarrollada para impulsar


su funcin de bsqueda de Bandeja de entrada
de Facebook por Avinash Lakshman y Prashant
Malik.Fue lanzado como un proyecto de cdigo
abierto en julio de 2008.En marzo de 2009, se
convirti en unproyecto de Apache.El 17 de
febrero 2010 se gradu como un proyecto de
nivel superior.

Historia
Lanzamientos despus de la graduacin incluyen
0.6, lanzado 12 de abril 2010, aade soporte para el almacenamiento
en cach integrado yApache HadoopMapReduce
0.7, lanzado 08 de enero 2011, aadida ndices secundarios y los
cambios de esquema en lnea.
0.8, lanzado 02 de junio 2011, aade 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 compresin integrada,
nivelada compactacin y mejora el rendimiento de lectura
1.1, lanzado 23 de abril 2012, aadi auto-tuning cachs, el
aislamiento a nivel de fila, y soporte para ssd mixta / hilado
despliegues disco
1.2, lanzado 02 de enero 2013, aadi la agrupacin en los nodos
virtuales, la comunicacin entre nodos, lotes atmicas y seguimiento
de solicitudes
2.0, lanzado 04 de septiembre 2013, aadi transacciones ligeras,
disparadores, la mejora de compactadoras.

En las versiones inciales utilizaba un API(Application


Programming Interface) propia para poder acceder a
la base de datos. En los ltimos tiempos estn
apostando por un lenguaje denominado CQL
(Cassandra Query Language) que posee una sintaxis
similar a SQL aunque con muchas menos
funcionalidades. Esto hace que iniciarse en el uso de
la misma sea ms sencillo. Permite acceder en Java
desde JDBC (Java Database Connectivity).

GRACIAS