SlideShare a Scribd company logo
1 of 38
Download to read offline
Università degli Studi di Salerno 
Prof.ssa G. Tortora 
Simone Scalabrino 
Sistemi Informatici e Tecnologie del Software 
Basi di Dati II 
Anno 2013/2014 
NoSQL 
Graph Databases 
Prof. G. Polese 
Carlo Branca 
Matteo Merola 
Giovanni Grano
Progettazione di un RDBMS 
Modello concettuale
Progettazione di un RDBMS 
Modello concettuale 
rifinito
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 arco 
nodo 
arco 
arco 
arco
Verso un nuovo tipo di grafo... 
nodo 
nodo 
nodo relazione 
nodo 
relazione 
relazione 
relazione
Grafo con proprietà 
nodo 
nodo 
nodo relazione 
nodo 
relazione 
relazione 
relazione 
Proprietà 1: Valore 1 
Proprietà 2: Valore 2 
… Proprietà n: Valore n 
Etichetta
In un grafo con proprietà... 
… le relazioni sono centrali!
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 
Work 
Recording 
Label 
RELEASED_ON 
Medium Release 
FROM_AREA 
CREDITED_ON 
CREDITED_ON 
IS_RECORDING 
PERFORMANCE 
APPEARS_ON RELEASED_ON
Model-based 
Area 
Artist 
Track 
Work 
Recording 
Label 
RELEASED_ON 
Medium Release 
FROM_AREA 
CREDITED_ON 
CREDITED_ON 
IS_RECORDING 
PERFORMANCE 
APPEARS_ON RELEASED_ON 
Aiuta nella definizione 
di query complesse 
Molto simile a un 
diagramma ER 
Permette di fare 
requirement elicitation
Confronto
Esperimento
Esperimento 
Trovare gli amici di amici 
tra utenti
Profondità 2 
0,02 
0,01 
0,01 
0,01 
0,01 
0,01 
0 
0 
0 
RDBMS 
Graph DB 
Tempi di risposta
Profondità 2 Profondità 3 
35 
30 
25 
20 
15 
10 
5 
0 
RDBMS 
Graph DB 
Tempi di risposta
Profondità 2 Profondità 3 Profondità 4 
1600 
1400 
1200 
1000 
800 
600 
400 
200 
0 
RDBMS 
Graph DB 
Tempi di risposta
LLiivvee ddeemmoo
Live demo 
Person Message 
Tag 
Link 
MENTIONS 
TWEETED 
USED 
TAGS 
LINKS 
KNOWS
Live demo
Q uando scegliere i grafi?
Tanti dati prodotti 
Progettazione rapida 
Relazioni importanti 
Performance 
Q uando scegliere i grafi?
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! 
http://goo.gl/NHIC8k 
Simone Scalabrino 
intersimone999@hotmail.it 
Università degli Studi di Salerno

More Related Content

Similar to Graph databases

Introduzione ai Big Data e alla scienza dei dati - Exploratory Data Analysis
Introduzione ai Big Data e alla scienza dei dati - Exploratory Data AnalysisIntroduzione ai Big Data e alla scienza dei dati - Exploratory Data Analysis
Introduzione ai Big Data e alla scienza dei dati - Exploratory Data AnalysisVincenzo Manzoni
 
Java al servizio della data science - Java developers' meeting
Java al servizio della data science - Java developers' meetingJava al servizio della data science - Java developers' meeting
Java al servizio della data science - Java developers' meetingNicola Pedot
 
MongoDB SpringFramework Meeting september 2009
MongoDB SpringFramework Meeting september 2009MongoDB SpringFramework Meeting september 2009
MongoDB SpringFramework Meeting september 2009Massimiliano Dessì
 
Visualizzazione dei network
Visualizzazione dei networkVisualizzazione dei network
Visualizzazione dei networkmttdlllbr
 
MongoDB Scala Roma SpringFramework Meeting2009
MongoDB Scala Roma SpringFramework Meeting2009MongoDB Scala Roma SpringFramework Meeting2009
MongoDB Scala Roma SpringFramework Meeting2009Massimiliano Dessì
 
MongoDb and Scala SpringFramework Meeting
MongoDb and Scala SpringFramework MeetingMongoDb and Scala SpringFramework Meeting
MongoDb and Scala SpringFramework Meetingguest67beeb9
 
Lezione 8 - Pratica - Il diagramma E-R
Lezione 8 - Pratica - Il diagramma E-RLezione 8 - Pratica - Il diagramma E-R
Lezione 8 - Pratica - Il diagramma E-RGiuseppe Cramarossa
 
Layered Expression Trees: una terza via (idiomatica) verso il DDD
Layered Expression Trees: una terza via (idiomatica) verso il DDDLayered Expression Trees: una terza via (idiomatica) verso il DDD
Layered Expression Trees: una terza via (idiomatica) verso il DDDAndrea Saltarello
 
Note di Data Warehouse e Business Intelligence - La gestione delle descrizioni
Note di Data Warehouse e Business Intelligence - La gestione delle descrizioniNote di Data Warehouse e Business Intelligence - La gestione delle descrizioni
Note di Data Warehouse e Business Intelligence - La gestione delle descrizioniMassimo Cenci
 
Tesi Marco Ventura
Tesi Marco VenturaTesi Marco Ventura
Tesi Marco Venturaguest335584
 
Entity Framework 4.0 vs NHibernate
Entity Framework 4.0 vs NHibernateEntity Framework 4.0 vs NHibernate
Entity Framework 4.0 vs NHibernateManuel Scapolan
 
Guida Di Stile:SdcExpert@Work
Guida Di Stile:SdcExpert@WorkGuida Di Stile:SdcExpert@Work
Guida Di Stile:SdcExpert@WorkRoberta Sanzani
 
Back to Basics webinar 1 IT 17 - Introduzione ai NoSQL
Back to Basics webinar 1 IT 17 - Introduzione ai NoSQLBack to Basics webinar 1 IT 17 - Introduzione ai NoSQL
Back to Basics webinar 1 IT 17 - Introduzione ai NoSQLMongoDB
 
MongoDB - Back to Basics 2017 - Introduzione a NoSQL
MongoDB - Back to Basics 2017 - Introduzione a NoSQLMongoDB - Back to Basics 2017 - Introduzione a NoSQL
MongoDB - Back to Basics 2017 - Introduzione a NoSQLMassimo Brignoli
 
What is new in C# 2018
What is new in C# 2018What is new in C# 2018
What is new in C# 2018Marco Parenzan
 
Progetto e realizzazione di uno strumento per la raccolta di dipendenze archi...
Progetto e realizzazione di uno strumento per la raccolta di dipendenze archi...Progetto e realizzazione di uno strumento per la raccolta di dipendenze archi...
Progetto e realizzazione di uno strumento per la raccolta di dipendenze archi...LorenzoFabbio
 

Similar to Graph databases (20)

Introduzione ai Big Data e alla scienza dei dati - Exploratory Data Analysis
Introduzione ai Big Data e alla scienza dei dati - Exploratory Data AnalysisIntroduzione ai Big Data e alla scienza dei dati - Exploratory Data Analysis
Introduzione ai Big Data e alla scienza dei dati - Exploratory Data Analysis
 
Java al servizio della data science - Java developers' meeting
Java al servizio della data science - Java developers' meetingJava al servizio della data science - Java developers' meeting
Java al servizio della data science - Java developers' meeting
 
SPLOD
SPLODSPLOD
SPLOD
 
MongoDB SpringFramework Meeting september 2009
MongoDB SpringFramework Meeting september 2009MongoDB SpringFramework Meeting september 2009
MongoDB SpringFramework Meeting september 2009
 
Visualizzazione dei network
Visualizzazione dei networkVisualizzazione dei network
Visualizzazione dei network
 
MongoDB Scala Roma SpringFramework Meeting2009
MongoDB Scala Roma SpringFramework Meeting2009MongoDB Scala Roma SpringFramework Meeting2009
MongoDB Scala Roma SpringFramework Meeting2009
 
MongoDb and Scala SpringFramework Meeting
MongoDb and Scala SpringFramework MeetingMongoDb and Scala SpringFramework Meeting
MongoDb and Scala SpringFramework Meeting
 
Lezione 8 - Pratica - Il diagramma E-R
Lezione 8 - Pratica - Il diagramma E-RLezione 8 - Pratica - Il diagramma E-R
Lezione 8 - Pratica - Il diagramma E-R
 
Layered Expression Trees: una terza via (idiomatica) verso il DDD
Layered Expression Trees: una terza via (idiomatica) verso il DDDLayered Expression Trees: una terza via (idiomatica) verso il DDD
Layered Expression Trees: una terza via (idiomatica) verso il DDD
 
Diagrammi di Sequenza
Diagrammi di SequenzaDiagrammi di Sequenza
Diagrammi di Sequenza
 
Note di Data Warehouse e Business Intelligence - La gestione delle descrizioni
Note di Data Warehouse e Business Intelligence - La gestione delle descrizioniNote di Data Warehouse e Business Intelligence - La gestione delle descrizioni
Note di Data Warehouse e Business Intelligence - La gestione delle descrizioni
 
Tesi Marco Ventura
Tesi Marco VenturaTesi Marco Ventura
Tesi Marco Ventura
 
Entity Framework 4.0 vs NHibernate
Entity Framework 4.0 vs NHibernateEntity Framework 4.0 vs NHibernate
Entity Framework 4.0 vs NHibernate
 
Guida Di Stile:SdcExpert@Work
Guida Di Stile:SdcExpert@WorkGuida Di Stile:SdcExpert@Work
Guida Di Stile:SdcExpert@Work
 
Cesvip 20110124
Cesvip 20110124Cesvip 20110124
Cesvip 20110124
 
Back to Basics webinar 1 IT 17 - Introduzione ai NoSQL
Back to Basics webinar 1 IT 17 - Introduzione ai NoSQLBack to Basics webinar 1 IT 17 - Introduzione ai NoSQL
Back to Basics webinar 1 IT 17 - Introduzione ai NoSQL
 
MongoDB - Back to Basics 2017 - Introduzione a NoSQL
MongoDB - Back to Basics 2017 - Introduzione a NoSQLMongoDB - Back to Basics 2017 - Introduzione a NoSQL
MongoDB - Back to Basics 2017 - Introduzione a NoSQL
 
What is new in C# 2018
What is new in C# 2018What is new in C# 2018
What is new in C# 2018
 
Scala e i database
Scala e i databaseScala e i database
Scala e i database
 
Progetto e realizzazione di uno strumento per la raccolta di dipendenze archi...
Progetto e realizzazione di uno strumento per la raccolta di dipendenze archi...Progetto e realizzazione di uno strumento per la raccolta di dipendenze archi...
Progetto e realizzazione di uno strumento per la raccolta di dipendenze archi...
 

Graph databases