Post on 03-Jul-2015
description
Università degli Studi di Salerno
Simone Scalabrino
Prof.ssa G. Tortora
NoSQL Graph Databases
Sistemi Informatici e Tecnologie del Software
Basi di Dati IIAnno 2013/2014
Prof. G. Polese
Carlo Branca
Matteo Merola
Giovanni Grano
Progettazione di un RDBMS
Modello concettuale
Progettazione di un RDBMS
Modello concettualerifinito
Progettazione di un RDBMS
Modello logico
Progettazione di un RDBMS
SQL
Progettazione di un RDBMS
Tanti modelli!
Dove sono le relazioni?
Dove sono le relazioni?
Nascoste nei modelli di basso livello
Ricostruibili solo attraverso join
Si possono superare questi limiti?
Graph Database
Grafo orientato
nodo
nodo
nodo
nodoarco arco
arco
arco
Verso un nuovo tipo di grafo...
nodo
nodo
nodo
nodorelazione relazione
relazione
relazione
Grafo con proprietà
nodo
nodo
nodo
nodorelazione relazione
relazione
relazione
Proprietà 1: Valore 1Proprietà 2: Valore 2…Proprietà n: Valore n
Etichetta
… le relazioni sono centrali!
In un grafo con proprietà...
In un grafo con proprietà...
… le relazioni sono centrali!
Più del
dell'informazione
Progettazione
Scenario-based
Scenario-based
Dinamico
Aiuta a comprendere il dominio applicativo
Modellazione test-driven
Model-based
Area
Artist
Track
Recording
Work
ReleaseMedium
Label
FROM_AREA
CREDITED_ON
CREDITED_ON
IS_RECORDING
PERFORMANCE
APPEARS_ON RELEASED_ON
RELEASED_ON
Model-based
Area
Artist
Track
Recording
Work
ReleaseMedium
Label
FROM_AREA
CREDITED_ON
CREDITED_ON
IS_RECORDING
PERFORMANCE
APPEARS_ON RELEASED_ON
RELEASED_ON
Aiuta nella definizionedi query complesse
Molto simile a undiagramma ER
Permette di farerequirement elicitation
Confronto
Esperimento
Esperimento
utentitra
Trovare gli amici di amici
Profondità 20
0
0
0,01
0,01
0,01
0,01
0,01
0,02
RDBMS
Graph DB
Tempi di risposta
Profondità 2 Profondità 30
5
10
15
20
25
30
35
RDBMS
Graph DB
Tempi di risposta
Profondità 2 Profondità 3 Profondità 40
200
400
600
800
1000
1200
1400
1600
RDBMS
Graph DB
Tempi di risposta
Live demoLive demo
Live demo
PersonMessage
Tag
Link
MENTIONS
TWEETED
USED
TAGS
LINKS
KN
OW
S
Live demo
Quando scegliere i grafi?
Quando scegliere i grafi?
Tanti dati prodotti
Progettazione rapida
Performance
Relazioni importanti
Quando non scegliere i grafi
Quando non scegliere i grafi
Linguaggi
Poche relazioni
Sistemi critici
Sharding
In sintesi
Approfondimenti
Approfondimenti
Approfondimenti
Grazie per l'attenzione!
Simone Scalabrinointersimone999@hotmail.it
Università degli Studi di Salerno
http://goo.gl/NHIC8k