Post on 17-May-2015
Análisis de redes en la nube
usando NoSQL
J o a q u í n S a l v a c h ú aJ s a l v a c h u a @ d i t . u p m . e s
jueves 25 de noviembre de 2010
El AZAR y la Necesidad
jueves 25 de noviembre de 2010
Indice
Problema: Matemáticas vs. Ordenador.
Computación distribuida.
Bases de datos NoSQL: Grafos.
Soluciones computacionales.
Conclusiones
jueves 25 de noviembre de 2010
jueves 25 de noviembre de 2010
jueves 25 de noviembre de 2010
jueves 25 de noviembre de 2010
jueves 25 de noviembre de 2010
Grafos y matrices
1 2 3 4 5
1 0 1 0 1 0
2 1 0 0 1 1
3 0 0 0 1 0
4 1 1 1 0 0
5 0 1 0 0 0
jueves 25 de noviembre de 2010
> 10^7
jueves 25 de noviembre de 2010
Computación sobre el grafo social
Grafo que almacena una red social y sus propiedades.
Necesidad de computación en tiempo real:
Muro de Facebook.
Seguidores de Twitter.
Cualquier otro servicio social.
jueves 25 de noviembre de 2010
Web Semántico
Estas tecnologías están habilitando realmente la web semántica.
También son grafos y una de sus limitaciones han sido computacionales.
Nueva oportunidad con Open-Data.
jueves 25 de noviembre de 2010
Stream-processingREALTIME
jueves 25 de noviembre de 2010
jueves 25 de noviembre de 2010
Un ordenador tiene recursos limitados
Diferentes algoritmos :
Necesidad de cálculos rápidos.
Pseudotiempo real blando.
Complejidad algorítmica.
jueves 25 de noviembre de 2010
Si no entra en memoria principal
Todo va muy lento.
jueves 25 de noviembre de 2010
jueves 25 de noviembre de 2010
jueves 25 de noviembre de 2010
Librerias de computación
paralela
Sistemas tipo GRID (MPI)
Sin resistencia a fallos.
Si alguno para hay que empezar de nuevo.
jueves 25 de noviembre de 2010
jueves 25 de noviembre de 2010
A que huelen las nubes
jueves 25 de noviembre de 2010
Clasificación ?aas
SaaS (Software as a Service) (gmail, salesforce.com, Google Apps).
PaaS (Platform as a Service) (Amazon simple DB, MS Azure, Google app engine).
IaaS (Infrastructure as a Service) (HaaS) (Virtualizadores )
Cloud es el Matrix de los servicios (virtuales).
jueves 25 de noviembre de 2010
Comprar y construir una casa (y mantenerla)
jueves 25 de noviembre de 2010
Dificil segun crece
jueves 25 de noviembre de 2010
Es como un hotel
Sin preocuparse de
fontaneros
jueves 25 de noviembre de 2010
Almacenaje
Paradigma relacional.
Solo existe las tablas, las relaciones y Select es su profeta.
jueves 25 de noviembre de 2010
jueves 25 de noviembre de 2010
Almacenaje clave valor
Saco de tuplas : < Clave, Valor >
Hash table:
jueves 25 de noviembre de 2010
Distributed Hash Table
jueves 25 de noviembre de 2010
Google bigtable
Almacen < Hash(URL), Página >
Funciona sobre el GFS
jueves 25 de noviembre de 2010
Cloneado por apache
Hadoop : equivalente sobre HDFS
Soportado por YAHOO
jueves 25 de noviembre de 2010
NoSQL
No ACID
Teorema de CAP (Brewer): 2 de
Consistencia.
Disponibilidad.
Resistencia a Particion.
jueves 25 de noviembre de 2010
NotOnlySQL
jueves 25 de noviembre de 2010
Clasificación
Clave-Valor
Columnas.
Documentos
Grafos <----
jueves 25 de noviembre de 2010
Diversas soluciones existentes
NEOJ SONES HypergraphDEX
jueves 25 de noviembre de 2010
Modelo con grafos y enlaces.
Nodos
Enlaces
Propiedades (campos) en los dos.
Equivalentes a las “tablas”.
jueves 25 de noviembre de 2010
OpenSource
NEOJ (propia).
Hypergraph (xmpp sobre berkeleyDB).
Vertex DB : (tokio-cabinet)
jueves 25 de noviembre de 2010
Otras
Comerciales
DEX
SONES
Desarrollada en España.
jueves 25 de noviembre de 2010
Problemas
Adecuadas solo para ciertos usos.
Distribuidas: Tipo MySQL.
RDF : Remora o Requisito.
jueves 25 de noviembre de 2010
jueves 25 de noviembre de 2010
Computación sobre cloud y NOSQL
Problemas isomorfos….
PageRank.
BigTable & Map Reduce.
jueves 25 de noviembre de 2010
MAP-REDUCE
Diseño de google para calculo del PageRank.
Librería simple, asíncrona, autoajustable
Desgraciadamente el ensamblador de los algoritmos.
jueves 25 de noviembre de 2010
Descripción
Tenemos MAP
jueves 25 de noviembre de 2010
Descripción
Tenemos REDUCE
jueves 25 de noviembre de 2010
Descripción
Fase MAP:
Analizamos los datos y los convertimos en tuplas < clave, valor >.
Barajado : se ordenan y agrupan por la clave
Fase REDUCE:
Todos los valores asociados a una clave se procesan juntos.
jueves 25 de noviembre de 2010
WC
jueves 25 de noviembre de 2010
WC
jueves 25 de noviembre de 2010
Arquitectura distribuida
jueves 25 de noviembre de 2010
Problemas
Su bajo nivel: Dificil programar.
Exceso de comunicación.
No para todo tipo de cálculo sobre grafos.
jueves 25 de noviembre de 2010
¿Posible solución?
Pregel
Librería sencilla
Pagerank:12 líneas.
Erlang clones.
jueves 25 de noviembre de 2010
Diversos elementos
Vertices (nocos) activos.
Enlaces creando y destruyendo.
Aplicación algoritmo local hasta que vertice decide parar.
Cuando todos los vertices han parado se ha acabado.
jueves 25 de noviembre de 2010
El principio de un largo camino
Sistemas “tuneados”:
Twitter - Facebook.
Cálculos muy simples.
No hay solución DEFINITIVA.
jueves 25 de noviembre de 2010
¿Caminamos juntos?
jueves 25 de noviembre de 2010
jueves 25 de noviembre de 2010
jueves 25 de noviembre de 2010