SlideShare ist ein Scribd-Unternehmen logo
1 von 18
Downloaden Sie, um offline zu lesen
Model-Driven Design of 
Graph Databases 
Roberto De Virgilio, Antonio Maccioni and Riccardo Torlone 
33rd edition of the International Conference on Conceptual Modeling (ER2014) – Atlanta, GA (U.S.A.)
Context (Theory) 
Semantics 
Meta- Models 
Logics 
Concepts 
ER 
Models 
NoSPARQL 
Schema-free 
Agile 
Development 
NoDB 
NoSQL 
ER 2014 Model-Driven Design of Graph Databases Atlanta, USA, 28th Oct 2014
Context (Practice) 
Software engineers still reason at different 
abstraction levels 
Data engineers still model 
their databases 
We cannot give up 
modeling with all 
NoSQLs 
ER 2014 Model-Driven Design of Graph Databases Atlanta, USA, 28th Oct 2014
Graph Databases 
admin 
belongs 
works 
belongs 
admin 
likes 
friend 
married 
follows 
belongs 
friend 
belongs 
worked 
likes 
ER 2014 Model-Driven Design of Graph Databases Atlanta, USA, 28th Oct 2014
Property Graph Model 
n1 n2 
Uname: Date 
Uid: u01 
Bname: Database 
Bid: b02 
label: follower 
label: admin 
ER 2014 Model-Driven Design of Graph Databases Atlanta, USA, 28th Oct 2014
Graph DB Modeling: How? 
Compact: Sparse: Dense: 
Reduces the 
Accesses and 
number of data 
updates can be 
accesses 
inefficient 
Can violate 
property graph 
constraints 
Reduces 
number of joins 
Needs human 
intervention for 
a semantic 
enrichment 
ER 2014 Model-Driven Design of Graph Databases Atlanta, USA, 28th Oct 2014
Our 3-steps Approach 
1) Generation of an oriented ER diagram 
2) Partitioning of the elements (entities and 
relationships) of the obtained diagram 
3) Definition of a template over the resulting 
partition. 
ER 2014 Model-Driven Design of Graph Databases Atlanta, USA, 28th Oct 2014
Use case: ER 
Category 
(0:N) 
url eid description 
External about 
ctid 
uid (0:N) (1:1) 
admin 
(1:1) 
contains Link 
(1:1) (0:N) 
post 
cid 
date 
date 
(1:1) 
Comment User Blog 
follower 
tag 
(0:N) (0:N) 
(0:N) (0:N) 
uname 
(1:1) 
bid 
bname 
msg 
(1:1) (0:N) 
publish 
ER 2014 Model-Driven Design of Graph Databases Atlanta, USA, 28th Oct 2014
Orienting the ER 
ENTITY 1 
(0:1) 
RELATIONSHIP 
(0:1) 
ENTITY 2 
ENTITY 1 
RELATIONSHIP : 0 
ENTITY 2 
ENTITY 1 
(0:N) 
RELATIONSHIP 
(0:1) 
ENTITY 2 
ENTITY 1 
RELATIONSHIP : 1 
ENTITY 2 
ENTITY 1 
(0:N) 
RELATIONSHIP 
(0:N) 
ENTITY 2 
ENTITY 1 
RELATIONSHIP : 2 
ENTITY 2 
ER 2014 Model-Driven Design of Graph Databases Atlanta, USA, 28th Oct 2014
Use case: O-ER 
post:1 
admin:1 
contains:0 about:1 
External 
Link Comment User Blog 
Category 
tag:2 
publish:1 
follower:2 
ER 2014 Model-Driven Design of Graph Databases Atlanta, USA, 28th Oct 2014
Partitioning the O-ER 
Rule 1: if a node n is disconnected 
then it forms a group by itself. 
Rule 2: if a node n has w−(n)>1 and w+(n)>0 then n 
forms a group by itself. 
Rule 3: if a node n has w−(n)<2 and w+(n)<2 then n 
is added to the group of a node m such that there 
exists the edge (m, n) in the O-ER diagram. 
ER 2014 Model-Driven Design of Graph Databases Atlanta, USA, 28th Oct 2014
Use case: partitioned O-ER 
post:1 
admin:1 
contains:0 about:1 
External 
Link Comment User Blog 
Category 
tag:2 
publish:1 
follower:2 
ER 2014 Model-Driven Design of Graph Databases Atlanta, USA, 28th Oct 2014
Template of the Graph Database 
A template describes homogeneous nodes 
occurring in a graph database and the ways 
they are connected. 
A template is derived by 
grouping together attributes 
of nodes in the partitioning. 
A template is similar to a logical schema, but 
it is not a schema! 
ER 2014 Model-Driven Design of Graph Databases Atlanta, USA, 28th Oct 2014
Use case: the Template 
ExternalLink.eid 
ExternalLink.url 
Comment.cid 
Comment.msg 
User.uid 
User.uname 
Blog.bid 
Blog.bname 
Category.ctid 
Category.description 
date 
label 
label 
label 
label 
label 
ER 2014 Model-Driven Design of Graph Databases Atlanta, USA, 28th Oct 2014
Use case: an instance 
ER 2014 Model-Driven Design of Graph Databases Atlanta, USA, 28th Oct 2014
Empirical Results 
sparse native strategy 
our approach 
ER 2014 Model-Driven Design of Graph Databases Atlanta, USA, 28th Oct 2014
Conclusion and Future Work 
Conceptual modeling of graph databases 
is useful and possible 
Our methodology is system 
independent and aim at minimizing 
data accesses 
We want to involve more aspects in the design process 
and verify the approach with other NoSQL 
We are developing a tool that allows the developer to 
customize the modeling of this methodology by tuning 
on the parameters 
ER 2014 Model-Driven Design of Graph Databases Atlanta, USA, 28th Oct 2014
Thanks for the Attention

Weitere ähnliche Inhalte

Ähnlich wie Modelgraphdb

Recommendation Engine Powered by Hadoop
Recommendation Engine Powered by HadoopRecommendation Engine Powered by Hadoop
Recommendation Engine Powered by HadoopPranab Ghosh
 
Recommendation Engine Powered by Hadoop - Pranab Ghosh
Recommendation Engine Powered by Hadoop - Pranab GhoshRecommendation Engine Powered by Hadoop - Pranab Ghosh
Recommendation Engine Powered by Hadoop - Pranab GhoshBigDataCloud
 
Data Discovery and Metadata
Data Discovery and MetadataData Discovery and Metadata
Data Discovery and Metadatamarkgrover
 
ICT DBA3 03 0710 Designing a Database.pptx
ICT DBA3 03 0710 Designing a Database.pptxICT DBA3 03 0710 Designing a Database.pptx
ICT DBA3 03 0710 Designing a Database.pptxInfotech27
 
DN18 | The Evolution and Future of Graph Technology: Intelligent Systems | Ax...
DN18 | The Evolution and Future of Graph Technology: Intelligent Systems | Ax...DN18 | The Evolution and Future of Graph Technology: Intelligent Systems | Ax...
DN18 | The Evolution and Future of Graph Technology: Intelligent Systems | Ax...Dataconomy Media
 
Artificial Intelligence for Automating Data Analysis
Artificial Intelligence for Automating Data AnalysisArtificial Intelligence for Automating Data Analysis
Artificial Intelligence for Automating Data AnalysisManuel Martín
 
Graph Analytics in Spark
Graph Analytics in SparkGraph Analytics in Spark
Graph Analytics in SparkPaco Nathan
 
Ted Willke, Senior Principal Engineer & GM, Datacenter Group, Intel at MLconf SF
Ted Willke, Senior Principal Engineer & GM, Datacenter Group, Intel at MLconf SFTed Willke, Senior Principal Engineer & GM, Datacenter Group, Intel at MLconf SF
Ted Willke, Senior Principal Engineer & GM, Datacenter Group, Intel at MLconf SFMLconf
 
EFFICIENT SCHEMA BASED KEYWORD SEARCH IN RELATIONAL DATABASES
EFFICIENT SCHEMA BASED KEYWORD SEARCH IN RELATIONAL DATABASESEFFICIENT SCHEMA BASED KEYWORD SEARCH IN RELATIONAL DATABASES
EFFICIENT SCHEMA BASED KEYWORD SEARCH IN RELATIONAL DATABASESIJCSEIT Journal
 
Mapping Domain Names to Categories
Mapping Domain Names to CategoriesMapping Domain Names to Categories
Mapping Domain Names to CategoriesGene Chuang
 
TUW-ASE Summer 2015 - Quality of Result-aware data analytics
TUW-ASE Summer 2015 - Quality of Result-aware data analyticsTUW-ASE Summer 2015 - Quality of Result-aware data analytics
TUW-ASE Summer 2015 - Quality of Result-aware data analyticsHong-Linh Truong
 
How to Build a Semantic Search System
How to Build a Semantic Search SystemHow to Build a Semantic Search System
How to Build a Semantic Search SystemTrey Grainger
 
Modeling the Impact of R & Python Packages: Dependency and Contributor Networks
Modeling the Impact of R & Python Packages: Dependency and Contributor NetworksModeling the Impact of R & Python Packages: Dependency and Contributor Networks
Modeling the Impact of R & Python Packages: Dependency and Contributor NetworksMelissa Moody
 
Secrets of Enterprise Data Mining: SQL Saturday 328 Birmingham AL
Secrets of Enterprise Data Mining: SQL Saturday 328 Birmingham ALSecrets of Enterprise Data Mining: SQL Saturday 328 Birmingham AL
Secrets of Enterprise Data Mining: SQL Saturday 328 Birmingham ALMark Tabladillo
 
Sistemas de Recomendação sem Enrolação
Sistemas de Recomendação sem Enrolação Sistemas de Recomendação sem Enrolação
Sistemas de Recomendação sem Enrolação Gabriel Moreira
 
Stakeholder Driven EA
Stakeholder Driven EAStakeholder Driven EA
Stakeholder Driven EAReal IRM
 
GraphX: Graph analytics for insights about developer communities
GraphX: Graph analytics for insights about developer communitiesGraphX: Graph analytics for insights about developer communities
GraphX: Graph analytics for insights about developer communitiesPaco Nathan
 
Data Science as a Career and Intro to R
Data Science as a Career and Intro to RData Science as a Career and Intro to R
Data Science as a Career and Intro to RAnshik Bansal
 
Microservices, containers, and machine learning
Microservices, containers, and machine learningMicroservices, containers, and machine learning
Microservices, containers, and machine learningPaco Nathan
 

Ähnlich wie Modelgraphdb (20)

System design
System designSystem design
System design
 
Recommendation Engine Powered by Hadoop
Recommendation Engine Powered by HadoopRecommendation Engine Powered by Hadoop
Recommendation Engine Powered by Hadoop
 
Recommendation Engine Powered by Hadoop - Pranab Ghosh
Recommendation Engine Powered by Hadoop - Pranab GhoshRecommendation Engine Powered by Hadoop - Pranab Ghosh
Recommendation Engine Powered by Hadoop - Pranab Ghosh
 
Data Discovery and Metadata
Data Discovery and MetadataData Discovery and Metadata
Data Discovery and Metadata
 
ICT DBA3 03 0710 Designing a Database.pptx
ICT DBA3 03 0710 Designing a Database.pptxICT DBA3 03 0710 Designing a Database.pptx
ICT DBA3 03 0710 Designing a Database.pptx
 
DN18 | The Evolution and Future of Graph Technology: Intelligent Systems | Ax...
DN18 | The Evolution and Future of Graph Technology: Intelligent Systems | Ax...DN18 | The Evolution and Future of Graph Technology: Intelligent Systems | Ax...
DN18 | The Evolution and Future of Graph Technology: Intelligent Systems | Ax...
 
Artificial Intelligence for Automating Data Analysis
Artificial Intelligence for Automating Data AnalysisArtificial Intelligence for Automating Data Analysis
Artificial Intelligence for Automating Data Analysis
 
Graph Analytics in Spark
Graph Analytics in SparkGraph Analytics in Spark
Graph Analytics in Spark
 
Ted Willke, Senior Principal Engineer & GM, Datacenter Group, Intel at MLconf SF
Ted Willke, Senior Principal Engineer & GM, Datacenter Group, Intel at MLconf SFTed Willke, Senior Principal Engineer & GM, Datacenter Group, Intel at MLconf SF
Ted Willke, Senior Principal Engineer & GM, Datacenter Group, Intel at MLconf SF
 
EFFICIENT SCHEMA BASED KEYWORD SEARCH IN RELATIONAL DATABASES
EFFICIENT SCHEMA BASED KEYWORD SEARCH IN RELATIONAL DATABASESEFFICIENT SCHEMA BASED KEYWORD SEARCH IN RELATIONAL DATABASES
EFFICIENT SCHEMA BASED KEYWORD SEARCH IN RELATIONAL DATABASES
 
Mapping Domain Names to Categories
Mapping Domain Names to CategoriesMapping Domain Names to Categories
Mapping Domain Names to Categories
 
TUW-ASE Summer 2015 - Quality of Result-aware data analytics
TUW-ASE Summer 2015 - Quality of Result-aware data analyticsTUW-ASE Summer 2015 - Quality of Result-aware data analytics
TUW-ASE Summer 2015 - Quality of Result-aware data analytics
 
How to Build a Semantic Search System
How to Build a Semantic Search SystemHow to Build a Semantic Search System
How to Build a Semantic Search System
 
Modeling the Impact of R & Python Packages: Dependency and Contributor Networks
Modeling the Impact of R & Python Packages: Dependency and Contributor NetworksModeling the Impact of R & Python Packages: Dependency and Contributor Networks
Modeling the Impact of R & Python Packages: Dependency and Contributor Networks
 
Secrets of Enterprise Data Mining: SQL Saturday 328 Birmingham AL
Secrets of Enterprise Data Mining: SQL Saturday 328 Birmingham ALSecrets of Enterprise Data Mining: SQL Saturday 328 Birmingham AL
Secrets of Enterprise Data Mining: SQL Saturday 328 Birmingham AL
 
Sistemas de Recomendação sem Enrolação
Sistemas de Recomendação sem Enrolação Sistemas de Recomendação sem Enrolação
Sistemas de Recomendação sem Enrolação
 
Stakeholder Driven EA
Stakeholder Driven EAStakeholder Driven EA
Stakeholder Driven EA
 
GraphX: Graph analytics for insights about developer communities
GraphX: Graph analytics for insights about developer communitiesGraphX: Graph analytics for insights about developer communities
GraphX: Graph analytics for insights about developer communities
 
Data Science as a Career and Intro to R
Data Science as a Career and Intro to RData Science as a Career and Intro to R
Data Science as a Career and Intro to R
 
Microservices, containers, and machine learning
Microservices, containers, and machine learningMicroservices, containers, and machine learning
Microservices, containers, and machine learning
 

Kürzlich hochgeladen

State of the Smart Building Startup Landscape 2024!
State of the Smart Building Startup Landscape 2024!State of the Smart Building Startup Landscape 2024!
State of the Smart Building Startup Landscape 2024!Memoori
 
Vector Search @ sw2con for slideshare.pptx
Vector Search @ sw2con for slideshare.pptxVector Search @ sw2con for slideshare.pptx
Vector Search @ sw2con for slideshare.pptxjbellis
 
(Explainable) Data-Centric AI: what are you explaininhg, and to whom?
(Explainable) Data-Centric AI: what are you explaininhg, and to whom?(Explainable) Data-Centric AI: what are you explaininhg, and to whom?
(Explainable) Data-Centric AI: what are you explaininhg, and to whom?Paolo Missier
 
Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024Patrick Viafore
 
AI mind or machine power point presentation
AI mind or machine power point presentationAI mind or machine power point presentation
AI mind or machine power point presentationyogeshlabana357357
 
“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdf
“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdf“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdf
“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdfMuhammad Subhan
 
Revolutionizing SAP® Processes with Automation and Artificial Intelligence
Revolutionizing SAP® Processes with Automation and Artificial IntelligenceRevolutionizing SAP® Processes with Automation and Artificial Intelligence
Revolutionizing SAP® Processes with Automation and Artificial IntelligencePrecisely
 
Google I/O Extended 2024 Warsaw
Google I/O Extended 2024 WarsawGoogle I/O Extended 2024 Warsaw
Google I/O Extended 2024 WarsawGDSC PJATK
 
How to Check CNIC Information Online with Pakdata cf
How to Check CNIC Information Online with Pakdata cfHow to Check CNIC Information Online with Pakdata cf
How to Check CNIC Information Online with Pakdata cfdanishmna97
 
Hyatt driving innovation and exceptional customer experiences with FIDO passw...
Hyatt driving innovation and exceptional customer experiences with FIDO passw...Hyatt driving innovation and exceptional customer experiences with FIDO passw...
Hyatt driving innovation and exceptional customer experiences with FIDO passw...FIDO Alliance
 
Event-Driven Architecture Masterclass: Challenges in Stream Processing
Event-Driven Architecture Masterclass: Challenges in Stream ProcessingEvent-Driven Architecture Masterclass: Challenges in Stream Processing
Event-Driven Architecture Masterclass: Challenges in Stream ProcessingScyllaDB
 
WebAssembly is Key to Better LLM Performance
WebAssembly is Key to Better LLM PerformanceWebAssembly is Key to Better LLM Performance
WebAssembly is Key to Better LLM PerformanceSamy Fodil
 
The Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and InsightThe Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and InsightSafe Software
 
Design and Development of a Provenance Capture Platform for Data Science
Design and Development of a Provenance Capture Platform for Data ScienceDesign and Development of a Provenance Capture Platform for Data Science
Design and Development of a Provenance Capture Platform for Data SciencePaolo Missier
 
Oauth 2.0 Introduction and Flows with MuleSoft
Oauth 2.0 Introduction and Flows with MuleSoftOauth 2.0 Introduction and Flows with MuleSoft
Oauth 2.0 Introduction and Flows with MuleSoftshyamraj55
 
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...panagenda
 
TopCryptoSupers 12thReport OrionX May2024
TopCryptoSupers 12thReport OrionX May2024TopCryptoSupers 12thReport OrionX May2024
TopCryptoSupers 12thReport OrionX May2024Stephen Perrenod
 
Generative AI Use Cases and Applications.pdf
Generative AI Use Cases and Applications.pdfGenerative AI Use Cases and Applications.pdf
Generative AI Use Cases and Applications.pdfalexjohnson7307
 
Tales from a Passkey Provider Progress from Awareness to Implementation.pptx
Tales from a Passkey Provider  Progress from Awareness to Implementation.pptxTales from a Passkey Provider  Progress from Awareness to Implementation.pptx
Tales from a Passkey Provider Progress from Awareness to Implementation.pptxFIDO Alliance
 

Kürzlich hochgeladen (20)

State of the Smart Building Startup Landscape 2024!
State of the Smart Building Startup Landscape 2024!State of the Smart Building Startup Landscape 2024!
State of the Smart Building Startup Landscape 2024!
 
Vector Search @ sw2con for slideshare.pptx
Vector Search @ sw2con for slideshare.pptxVector Search @ sw2con for slideshare.pptx
Vector Search @ sw2con for slideshare.pptx
 
(Explainable) Data-Centric AI: what are you explaininhg, and to whom?
(Explainable) Data-Centric AI: what are you explaininhg, and to whom?(Explainable) Data-Centric AI: what are you explaininhg, and to whom?
(Explainable) Data-Centric AI: what are you explaininhg, and to whom?
 
Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024
 
AI mind or machine power point presentation
AI mind or machine power point presentationAI mind or machine power point presentation
AI mind or machine power point presentation
 
“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdf
“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdf“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdf
“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdf
 
Revolutionizing SAP® Processes with Automation and Artificial Intelligence
Revolutionizing SAP® Processes with Automation and Artificial IntelligenceRevolutionizing SAP® Processes with Automation and Artificial Intelligence
Revolutionizing SAP® Processes with Automation and Artificial Intelligence
 
Google I/O Extended 2024 Warsaw
Google I/O Extended 2024 WarsawGoogle I/O Extended 2024 Warsaw
Google I/O Extended 2024 Warsaw
 
How to Check CNIC Information Online with Pakdata cf
How to Check CNIC Information Online with Pakdata cfHow to Check CNIC Information Online with Pakdata cf
How to Check CNIC Information Online with Pakdata cf
 
Hyatt driving innovation and exceptional customer experiences with FIDO passw...
Hyatt driving innovation and exceptional customer experiences with FIDO passw...Hyatt driving innovation and exceptional customer experiences with FIDO passw...
Hyatt driving innovation and exceptional customer experiences with FIDO passw...
 
Event-Driven Architecture Masterclass: Challenges in Stream Processing
Event-Driven Architecture Masterclass: Challenges in Stream ProcessingEvent-Driven Architecture Masterclass: Challenges in Stream Processing
Event-Driven Architecture Masterclass: Challenges in Stream Processing
 
WebAssembly is Key to Better LLM Performance
WebAssembly is Key to Better LLM PerformanceWebAssembly is Key to Better LLM Performance
WebAssembly is Key to Better LLM Performance
 
The Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and InsightThe Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and Insight
 
Design and Development of a Provenance Capture Platform for Data Science
Design and Development of a Provenance Capture Platform for Data ScienceDesign and Development of a Provenance Capture Platform for Data Science
Design and Development of a Provenance Capture Platform for Data Science
 
Oauth 2.0 Introduction and Flows with MuleSoft
Oauth 2.0 Introduction and Flows with MuleSoftOauth 2.0 Introduction and Flows with MuleSoft
Oauth 2.0 Introduction and Flows with MuleSoft
 
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
 
Overview of Hyperledger Foundation
Overview of Hyperledger FoundationOverview of Hyperledger Foundation
Overview of Hyperledger Foundation
 
TopCryptoSupers 12thReport OrionX May2024
TopCryptoSupers 12thReport OrionX May2024TopCryptoSupers 12thReport OrionX May2024
TopCryptoSupers 12thReport OrionX May2024
 
Generative AI Use Cases and Applications.pdf
Generative AI Use Cases and Applications.pdfGenerative AI Use Cases and Applications.pdf
Generative AI Use Cases and Applications.pdf
 
Tales from a Passkey Provider Progress from Awareness to Implementation.pptx
Tales from a Passkey Provider  Progress from Awareness to Implementation.pptxTales from a Passkey Provider  Progress from Awareness to Implementation.pptx
Tales from a Passkey Provider Progress from Awareness to Implementation.pptx
 

Modelgraphdb

  • 1. Model-Driven Design of Graph Databases Roberto De Virgilio, Antonio Maccioni and Riccardo Torlone 33rd edition of the International Conference on Conceptual Modeling (ER2014) – Atlanta, GA (U.S.A.)
  • 2. Context (Theory) Semantics Meta- Models Logics Concepts ER Models NoSPARQL Schema-free Agile Development NoDB NoSQL ER 2014 Model-Driven Design of Graph Databases Atlanta, USA, 28th Oct 2014
  • 3. Context (Practice) Software engineers still reason at different abstraction levels Data engineers still model their databases We cannot give up modeling with all NoSQLs ER 2014 Model-Driven Design of Graph Databases Atlanta, USA, 28th Oct 2014
  • 4. Graph Databases admin belongs works belongs admin likes friend married follows belongs friend belongs worked likes ER 2014 Model-Driven Design of Graph Databases Atlanta, USA, 28th Oct 2014
  • 5. Property Graph Model n1 n2 Uname: Date Uid: u01 Bname: Database Bid: b02 label: follower label: admin ER 2014 Model-Driven Design of Graph Databases Atlanta, USA, 28th Oct 2014
  • 6. Graph DB Modeling: How? Compact: Sparse: Dense: Reduces the Accesses and number of data updates can be accesses inefficient Can violate property graph constraints Reduces number of joins Needs human intervention for a semantic enrichment ER 2014 Model-Driven Design of Graph Databases Atlanta, USA, 28th Oct 2014
  • 7. Our 3-steps Approach 1) Generation of an oriented ER diagram 2) Partitioning of the elements (entities and relationships) of the obtained diagram 3) Definition of a template over the resulting partition. ER 2014 Model-Driven Design of Graph Databases Atlanta, USA, 28th Oct 2014
  • 8. Use case: ER Category (0:N) url eid description External about ctid uid (0:N) (1:1) admin (1:1) contains Link (1:1) (0:N) post cid date date (1:1) Comment User Blog follower tag (0:N) (0:N) (0:N) (0:N) uname (1:1) bid bname msg (1:1) (0:N) publish ER 2014 Model-Driven Design of Graph Databases Atlanta, USA, 28th Oct 2014
  • 9. Orienting the ER ENTITY 1 (0:1) RELATIONSHIP (0:1) ENTITY 2 ENTITY 1 RELATIONSHIP : 0 ENTITY 2 ENTITY 1 (0:N) RELATIONSHIP (0:1) ENTITY 2 ENTITY 1 RELATIONSHIP : 1 ENTITY 2 ENTITY 1 (0:N) RELATIONSHIP (0:N) ENTITY 2 ENTITY 1 RELATIONSHIP : 2 ENTITY 2 ER 2014 Model-Driven Design of Graph Databases Atlanta, USA, 28th Oct 2014
  • 10. Use case: O-ER post:1 admin:1 contains:0 about:1 External Link Comment User Blog Category tag:2 publish:1 follower:2 ER 2014 Model-Driven Design of Graph Databases Atlanta, USA, 28th Oct 2014
  • 11. Partitioning the O-ER Rule 1: if a node n is disconnected then it forms a group by itself. Rule 2: if a node n has w−(n)>1 and w+(n)>0 then n forms a group by itself. Rule 3: if a node n has w−(n)<2 and w+(n)<2 then n is added to the group of a node m such that there exists the edge (m, n) in the O-ER diagram. ER 2014 Model-Driven Design of Graph Databases Atlanta, USA, 28th Oct 2014
  • 12. Use case: partitioned O-ER post:1 admin:1 contains:0 about:1 External Link Comment User Blog Category tag:2 publish:1 follower:2 ER 2014 Model-Driven Design of Graph Databases Atlanta, USA, 28th Oct 2014
  • 13. Template of the Graph Database A template describes homogeneous nodes occurring in a graph database and the ways they are connected. A template is derived by grouping together attributes of nodes in the partitioning. A template is similar to a logical schema, but it is not a schema! ER 2014 Model-Driven Design of Graph Databases Atlanta, USA, 28th Oct 2014
  • 14. Use case: the Template ExternalLink.eid ExternalLink.url Comment.cid Comment.msg User.uid User.uname Blog.bid Blog.bname Category.ctid Category.description date label label label label label ER 2014 Model-Driven Design of Graph Databases Atlanta, USA, 28th Oct 2014
  • 15. Use case: an instance ER 2014 Model-Driven Design of Graph Databases Atlanta, USA, 28th Oct 2014
  • 16. Empirical Results sparse native strategy our approach ER 2014 Model-Driven Design of Graph Databases Atlanta, USA, 28th Oct 2014
  • 17. Conclusion and Future Work Conceptual modeling of graph databases is useful and possible Our methodology is system independent and aim at minimizing data accesses We want to involve more aspects in the design process and verify the approach with other NoSQL We are developing a tool that allows the developer to customize the modeling of this methodology by tuning on the parameters ER 2014 Model-Driven Design of Graph Databases Atlanta, USA, 28th Oct 2014
  • 18. Thanks for the Attention