SlideShare ist ein Scribd-Unternehmen logo
1 von 29
Downloaden Sie, um offline zu lesen
© Prof. Dr.-Ing. Wolfgang Lehner |
Challenges in the Design of a Graph Database
Benchmark
FOSDEM‘12 – Graph Processing DevRoom
Marcus Paradies
Marcus Paradies | | 1
> Outline
 Motivation
 Challenges
 Thoughts on Graph Data Generation
 Thoughts on Query Workload
 Summary and Outlook
 Discussion
FOSDEM 2012
Marcus Paradies | | 2
> Motivation
FOSDEM 2012
 Graph databases are gaining momentum
 Enterprise corporations are getting interested
 How to compare the available graph database vendors?
 Main issue: Results from benchmarks are not comparable
 Lack of standardization in the data model and query language
 What are “typical“ graph operations?
Marcus Paradies | | 3
>
Challenges
FOSDEM 2012
Marcus Paradies | | 4
> Challenge #1: Application Domain
 Graph data is not homogenous
 Graph data from different domains follows different patterns
 Examples:
 Social Network Analysis (SNA)
 Protein Interaction Analysis
 Recommendation Systems
 Supply Chain Management (Vehicle Routing, CRM)
 Fraud Detection in Financial Systems
 …
Challenge: Find an application domain which represents a graph data pattern
common in many different scenarios.
FOSDEM 2012
Marcus Paradies | | 5
> Challenge #2: Graph Data Model
FOSDEM 2012
What flavours of graph data models
are commonly used?
Marcus Paradies | | 6
> Challenge #2: Graph Data Model
FOSDEM 2012
Directed Graph
Marcus Paradies | | 7
> Challenge #2: Graph Data Model
FOSDEM 2012
Directed Graph
Undirected Graph
Marcus Paradies | | 8
> Challenge #2: Graph Data Model
FOSDEM 2012
Directed Graph
Undirected Graph
Mixed Graph
Marcus Paradies | | 9
> Challenge #2: Graph Data Model
FOSDEM 2012
Directed Graph
Undirected Graph
Mixed Graph Multi Graph
Marcus Paradies | | 10
> Challenge #2: Graph Data Model
FOSDEM 2012
Directed Graph
Undirected Graph
Mixed Graph Multi Graph
(Plain) Property
Graph
Marcus Paradies | | 11
> Challenge #2: Graph Data Model
FOSDEM 2012
Directed Graph
Undirected Graph
Mixed Graph Multi Graph
(Plain) Property
Graph
(Structured
Property Graph)
Marcus Paradies | | 12
> Challenge #2: Graph Data Model
FOSDEM 2012
Directed Graph
Undirected Graph
Mixed Graph Multi Graph
(Plain) Property
Graph
(Structured
Property Graph)
Hyper Graph
Marcus Paradies | | 13
> Challenge #2: Graph Data Model
FOSDEM 2012
Directed Graph
Undirected Graph
Mixed Graph Multi Graph
(Plain) Property
Graph
(Structured
Property Graph)
Hyper Graph
Challenge: Find a graph data model suited for the majority of use cases
from various domains.
Marcus Paradies | | 14
> Challenge #3: Querying Graph Data
FOSDEM 2012
 Large variety in graph processing and manipulation languages
 Each graph database vendor implements own query languages/APIs
 Reason: No standardized graph query language available
Marcus Paradies | | 15
> Challenge #3: Querying Graph Data
FOSDEM 2012
 Large variety in graph processing and manipulation languages
 Each graph database vendor implements own query languages/APIs
 Reason: No standardized graph query language available
Challenge: Find a way to abstract from the zoo of available query languages.
Marcus Paradies | | 16
> Challenge #4: Defining the Workload
FOSDEM 2012
 The workload to be defined is dependent from the underlying
query/manipulation language
 Should complex (algorithmic) operations be part of a database benchmark?
 Which algorithms to pick?
 Social Network Analysis → Find communities
 Supply Chain Management → Find maximal flow
 Web of Data → Find pattern matches
 How are concurrent users represented?
 What about transactionality?
Marcus Paradies | | 17
>
Thoughts on Graph Data Generation
FOSDEM 2012
Marcus Paradies | | 18
> Graph Data Generation - Patterns
FOSDEM 2012
 Understanding graph patterns (characteristics) is crucical for a good graph
data generator
 What are distinguishing characteristics of graphs?
 How can we identify graph patterns on large graphs?
 Three main patterns [1]:
 Power law distributed
 Small diameters
 Community Effects
?
=
?
=
Marcus Paradies | | 19
> Pattern 1 – Power law distributed
FOSDEM 2012
 Most real-world graph data sets follow a power law distribution
 Examples:
 Internet router graph
 Subsets of the WWW
 Citation Graphs
source: [2] source: [2]
Marcus Paradies | | 20
> Pattern 2 – Small Diameters
FOSDEM 2012
 Effective Diameter (eccentricity): Minimum number of hops, in which a
fraction (e.g. 90%) of all connected pairs of nodes can reach each other
 Other measures exist as well, but are not applicable to disconnected graphs
 In most use cases, diameter is much smaller than the size of the graph
 Examples:
 97% eccentricity of around 16 for path lengths in the WWW
 Average path length around 6 for Epinions social network
source: [1]
Marcus Paradies | | 21
> Pattern 3 – Community Effects
FOSDEM 2012
 Community: A set of nodes, where each node in the set is closer to all other
nodes in the community than to nodes outside the community.
 Communities can be found in many real-world graphs, especially social
networks and collaboration networks
 Clustering Coefficient C: A measure, which qualifies the „clumpiness“ of a
graph
Marcus Paradies | | 22
>
Thoughts on Query Workload
FOSDEM 2012
Marcus Paradies | | 23
> Query Workload - Operations
FOSDEM 2012
 Graph Manipulation Operations
 Add/Update/Remove Nodes from the Graph
 Add/Update/Remove Edges from the Graph
 Add/Update/Remove Edge attributes
 Add/Update/Remove Node attributes
 Graph Query Operations
 Retrieve selection of nodes from given filter expression
 Getting the neighbors of a set of nodes (possibly with edge filter constraints)
 Graph Traversals
 Based on basic query operations
 Exploration of neighborhood from a given set of start nodes
 Terminated by the number of steps and/or edge/node filter constraints
 Graph Analytical Operations
 Aggregation operations such as sum, avg, min, max
 Aggregations on node-level and on edge-level
Marcus Paradies | | 24
> Query Workload - Measures
FOSDEM 2012
 Closely related to benchmark capabilities
 Measures from relational benchmarks apply such as
 Average query response time
 Transactions per second (throughput)
 Additional measures for graph traversals
 Traversals per second
 What about distributed scenarios?
 What about concurrent users?
Marcus Paradies | | 25
> Summary and Outlook
 Graph data distribution highly important for graph database benchmark
 Application domains do have very specific graph characteristics
 A graph database benchmark has to provide abstract and high-level graph
operation descriptions
 Feel free to contact me if you want to contribute:
marcus.paradies@gmail.com
FOSDEM 2012
Marcus Paradies | | 26
>
Discussion
FOSDEM 2012
Marcus Paradies | | 27
> Theses
 A benchmark based on social network data is nice, but might be not be that
representative for large enterprise applications
 Algorithms should NOT be part of a graph database benchmark
 Only support basic operations such as simple lookups and path traversals
 The underlying graph data model should be a simple property graph
 A graph database has to scale in terms of data size as well as number of
concurrent users
 ....
FOSDEM 2012
Marcus Paradies | | 28
> References
[1] Graph Mining: Laws, Generators, and Algorithms (2006)
[2] http://konect.uni-koblenz.de/
[3] A Discussion on the Design of Graph Database Benchmarks (2010)
FOSDEM 2012

Weitere ähnliche Inhalte

Was ist angesagt?

Introduction to graph databases GraphDays
Introduction to graph databases  GraphDaysIntroduction to graph databases  GraphDays
Introduction to graph databases GraphDays
Neo4j
 
The Five Graphs of Finance - Philip Rathle and Emil Eifrem @ GraphConnect NY ...
The Five Graphs of Finance - Philip Rathle and Emil Eifrem @ GraphConnect NY ...The Five Graphs of Finance - Philip Rathle and Emil Eifrem @ GraphConnect NY ...
The Five Graphs of Finance - Philip Rathle and Emil Eifrem @ GraphConnect NY ...
Neo4j
 

Was ist angesagt? (20)

RDBMS to Graphs
RDBMS to GraphsRDBMS to Graphs
RDBMS to Graphs
 
Graph based data models
Graph based data modelsGraph based data models
Graph based data models
 
RDBMS to Graphs
RDBMS to GraphsRDBMS to Graphs
RDBMS to Graphs
 
Introduction to graph databases GraphDays
Introduction to graph databases  GraphDaysIntroduction to graph databases  GraphDays
Introduction to graph databases GraphDays
 
The Five Graphs of Finance - Philip Rathle and Emil Eifrem @ GraphConnect NY ...
The Five Graphs of Finance - Philip Rathle and Emil Eifrem @ GraphConnect NY ...The Five Graphs of Finance - Philip Rathle and Emil Eifrem @ GraphConnect NY ...
The Five Graphs of Finance - Philip Rathle and Emil Eifrem @ GraphConnect NY ...
 
Introducing Neo4j
Introducing Neo4jIntroducing Neo4j
Introducing Neo4j
 
An Introduction to Graph: Database, Analytics, and Cloud Services
An Introduction to Graph:  Database, Analytics, and Cloud ServicesAn Introduction to Graph:  Database, Analytics, and Cloud Services
An Introduction to Graph: Database, Analytics, and Cloud Services
 
Democratizing Data at Airbnb
Democratizing Data at AirbnbDemocratizing Data at Airbnb
Democratizing Data at Airbnb
 
Intro to Neo4j and Graph Databases
Intro to Neo4j and Graph DatabasesIntro to Neo4j and Graph Databases
Intro to Neo4j and Graph Databases
 
Neo4j the Anti Crime Database
Neo4j the Anti Crime DatabaseNeo4j the Anti Crime Database
Neo4j the Anti Crime Database
 
Intro to Neo4j Webinar
Intro to Neo4j WebinarIntro to Neo4j Webinar
Intro to Neo4j Webinar
 
GraphTalks - Einführung in Graphdatenbanken
GraphTalks - Einführung in GraphdatenbankenGraphTalks - Einführung in Graphdatenbanken
GraphTalks - Einführung in Graphdatenbanken
 
Building a Graph-based Analytics Platform
Building a Graph-based Analytics PlatformBuilding a Graph-based Analytics Platform
Building a Graph-based Analytics Platform
 
Neo4j GraphDay - Graphs in the Real World: Tope Use Cases for Graph Databases...
Neo4j GraphDay - Graphs in the Real World: Tope Use Cases for Graph Databases...Neo4j GraphDay - Graphs in the Real World: Tope Use Cases for Graph Databases...
Neo4j GraphDay - Graphs in the Real World: Tope Use Cases for Graph Databases...
 
The Future is Big Graphs: A Community View on Graph Processing Systems
The Future is Big Graphs: A Community View on Graph Processing SystemsThe Future is Big Graphs: A Community View on Graph Processing Systems
The Future is Big Graphs: A Community View on Graph Processing Systems
 
Einstieg in Neo4j Graph Data Science
Einstieg in Neo4j Graph Data ScienceEinstieg in Neo4j Graph Data Science
Einstieg in Neo4j Graph Data Science
 
Neo4j Import Webinar
Neo4j Import WebinarNeo4j Import Webinar
Neo4j Import Webinar
 
Graphdatenbank Neo4j: Konzept, Positionierung, Status Region DACH - Bruno Un...
 Graphdatenbank Neo4j: Konzept, Positionierung, Status Region DACH - Bruno Un... Graphdatenbank Neo4j: Konzept, Positionierung, Status Region DACH - Bruno Un...
Graphdatenbank Neo4j: Konzept, Positionierung, Status Region DACH - Bruno Un...
 
Neanex - Semantic Construction with Graphs
Neanex - Semantic Construction with GraphsNeanex - Semantic Construction with Graphs
Neanex - Semantic Construction with Graphs
 
GraphTalk Berlin - Einführung in Graphdatenbanken
GraphTalk Berlin - Einführung in GraphdatenbankenGraphTalk Berlin - Einführung in Graphdatenbanken
GraphTalk Berlin - Einführung in Graphdatenbanken
 

Andere mochten auch

A new software tool for large-scale analysis of citation networks
A new software tool for large-scale analysis of citation networksA new software tool for large-scale analysis of citation networks
A new software tool for large-scale analysis of citation networks
Nees Jan van Eck
 
HW09 Social network analysis with Hadoop
HW09 Social network analysis with HadoopHW09 Social network analysis with Hadoop
HW09 Social network analysis with Hadoop
Cloudera, Inc.
 
An Introduction to Graph Databases
An Introduction to Graph DatabasesAn Introduction to Graph Databases
An Introduction to Graph Databases
InfiniteGraph
 
Neo4j - 5 cool graph examples
Neo4j - 5 cool graph examplesNeo4j - 5 cool graph examples
Neo4j - 5 cool graph examples
Peter Neubauer
 

Andere mochten auch (9)

A new software tool for large-scale analysis of citation networks
A new software tool for large-scale analysis of citation networksA new software tool for large-scale analysis of citation networks
A new software tool for large-scale analysis of citation networks
 
2013 NodeXL Social Media Network Analysis
2013 NodeXL Social Media Network Analysis2013 NodeXL Social Media Network Analysis
2013 NodeXL Social Media Network Analysis
 
Apache Giraph: start analyzing graph relationships in your bigdata in 45 minu...
Apache Giraph: start analyzing graph relationships in your bigdata in 45 minu...Apache Giraph: start analyzing graph relationships in your bigdata in 45 minu...
Apache Giraph: start analyzing graph relationships in your bigdata in 45 minu...
 
HW09 Social network analysis with Hadoop
HW09 Social network analysis with HadoopHW09 Social network analysis with Hadoop
HW09 Social network analysis with Hadoop
 
An Introduction to Graph Databases
An Introduction to Graph DatabasesAn Introduction to Graph Databases
An Introduction to Graph Databases
 
Hadoop or Spark: is it an either-or proposition? By Slim Baltagi
Hadoop or Spark: is it an either-or proposition? By Slim BaltagiHadoop or Spark: is it an either-or proposition? By Slim Baltagi
Hadoop or Spark: is it an either-or proposition? By Slim Baltagi
 
Introduction to Graph Databases
Introduction to Graph DatabasesIntroduction to Graph Databases
Introduction to Graph Databases
 
Neo4j - 5 cool graph examples
Neo4j - 5 cool graph examplesNeo4j - 5 cool graph examples
Neo4j - 5 cool graph examples
 
Hadoop and Graph Databases (Neo4j): Winning Combination for Bioanalytics - Jo...
Hadoop and Graph Databases (Neo4j): Winning Combination for Bioanalytics - Jo...Hadoop and Graph Databases (Neo4j): Winning Combination for Bioanalytics - Jo...
Hadoop and Graph Databases (Neo4j): Winning Combination for Bioanalytics - Jo...
 

Ähnlich wie Challenges in the Design of a Graph Database Benchmark

Challenges in the Design of a Graph Database Benchmark
Challenges in the Design of a Graph Database BenchmarkChallenges in the Design of a Graph Database Benchmark
Challenges in the Design of a Graph Database Benchmark
Marcus Paradies
 
LARGE-SCALE DATA PROCESSING USING MAPREDUCE IN CLOUD COMPUTING ENVIRONMENT
LARGE-SCALE DATA PROCESSING USING MAPREDUCE IN CLOUD COMPUTING ENVIRONMENTLARGE-SCALE DATA PROCESSING USING MAPREDUCE IN CLOUD COMPUTING ENVIRONMENT
LARGE-SCALE DATA PROCESSING USING MAPREDUCE IN CLOUD COMPUTING ENVIRONMENT
ijwscjournal
 

Ähnlich wie Challenges in the Design of a Graph Database Benchmark (20)

Challenges in the Design of a Graph Database Benchmark
Challenges in the Design of a Graph Database BenchmarkChallenges in the Design of a Graph Database Benchmark
Challenges in the Design of a Graph Database Benchmark
 
Scalable Algorithm Design with MapReduce
Scalable Algorithm Design with MapReduceScalable Algorithm Design with MapReduce
Scalable Algorithm Design with MapReduce
 
USING FACTORY DESIGN PATTERNS IN MAP REDUCE DESIGN FOR BIG DATA ANALYTICS
USING FACTORY DESIGN PATTERNS IN MAP REDUCE DESIGN FOR BIG DATA ANALYTICSUSING FACTORY DESIGN PATTERNS IN MAP REDUCE DESIGN FOR BIG DATA ANALYTICS
USING FACTORY DESIGN PATTERNS IN MAP REDUCE DESIGN FOR BIG DATA ANALYTICS
 
A Lightweight MDD Process Applied in Small Projects
A Lightweight MDD Process Applied in Small ProjectsA Lightweight MDD Process Applied in Small Projects
A Lightweight MDD Process Applied in Small Projects
 
LARGE-SCALE DATA PROCESSING USING MAPREDUCE IN CLOUD COMPUTING ENVIRONMENT
LARGE-SCALE DATA PROCESSING USING MAPREDUCE IN CLOUD COMPUTING ENVIRONMENTLARGE-SCALE DATA PROCESSING USING MAPREDUCE IN CLOUD COMPUTING ENVIRONMENT
LARGE-SCALE DATA PROCESSING USING MAPREDUCE IN CLOUD COMPUTING ENVIRONMENT
 
Chapter19 rapid application development
Chapter19 rapid application developmentChapter19 rapid application development
Chapter19 rapid application development
 
Cloud software engineering
Cloud software engineeringCloud software engineering
Cloud software engineering
 
Top 3 design patterns in Map Reduce
Top 3 design patterns in Map ReduceTop 3 design patterns in Map Reduce
Top 3 design patterns in Map Reduce
 
P209 leithiser-relationaldb-formal-specifications
P209 leithiser-relationaldb-formal-specificationsP209 leithiser-relationaldb-formal-specifications
P209 leithiser-relationaldb-formal-specifications
 
RAD
RADRAD
RAD
 
Cloud Computing
Cloud ComputingCloud Computing
Cloud Computing
 
MSR 2022 Foundational Contribution Award Talk: Software Analytics: Reflection...
MSR 2022 Foundational Contribution Award Talk: Software Analytics: Reflection...MSR 2022 Foundational Contribution Award Talk: Software Analytics: Reflection...
MSR 2022 Foundational Contribution Award Talk: Software Analytics: Reflection...
 
IRJET- Comparatively Analysis on K-Means++ and Mini Batch K-Means Clustering ...
IRJET- Comparatively Analysis on K-Means++ and Mini Batch K-Means Clustering ...IRJET- Comparatively Analysis on K-Means++ and Mini Batch K-Means Clustering ...
IRJET- Comparatively Analysis on K-Means++ and Mini Batch K-Means Clustering ...
 
Take your Data Management Practice to the Next Level with Denodo 7
Take your Data Management Practice to the Next Level with Denodo 7Take your Data Management Practice to the Next Level with Denodo 7
Take your Data Management Practice to the Next Level with Denodo 7
 
Waterfall model
Waterfall modelWaterfall model
Waterfall model
 
Crafted Design - ITAKE 2014
Crafted Design - ITAKE 2014Crafted Design - ITAKE 2014
Crafted Design - ITAKE 2014
 
What is rad model
What is rad modelWhat is rad model
What is rad model
 
Crafted Design - GeeCON 2014
Crafted Design - GeeCON 2014Crafted Design - GeeCON 2014
Crafted Design - GeeCON 2014
 
Sawmill - Integrating R and Large Data Clouds
Sawmill - Integrating R and Large Data CloudsSawmill - Integrating R and Large Data Clouds
Sawmill - Integrating R and Large Data Clouds
 
Sioux Hot-or-Not: Model Driven Software Development (Markus Voelter)
Sioux Hot-or-Not: Model Driven Software Development (Markus Voelter)Sioux Hot-or-Not: Model Driven Software Development (Markus Voelter)
Sioux Hot-or-Not: Model Driven Software Development (Markus Voelter)
 

Mehr von graphdevroom

Using Cascalog and Hadoop for rapid graph processing and exploration
Using Cascalog and Hadoop for rapid graph processing and exploration Using Cascalog and Hadoop for rapid graph processing and exploration
Using Cascalog and Hadoop for rapid graph processing and exploration
graphdevroom
 

Mehr von graphdevroom (6)

An example graph visualization with Processing.js
An example graph visualization with Processing.js An example graph visualization with Processing.js
An example graph visualization with Processing.js
 
Bio4j: A pioneer graph based database for the integration of biological Big D...
Bio4j: A pioneer graph based database for the integration of biological Big D...Bio4j: A pioneer graph based database for the integration of biological Big D...
Bio4j: A pioneer graph based database for the integration of biological Big D...
 
Cypher Query Language
Cypher Query Language Cypher Query Language
Cypher Query Language
 
Ontological Conjunctive Query Answering over large, semi-structured knowledge...
Ontological Conjunctive Query Answering over large, semi-structured knowledge...Ontological Conjunctive Query Answering over large, semi-structured knowledge...
Ontological Conjunctive Query Answering over large, semi-structured knowledge...
 
Works with persistent graphs using OrientDB
Works with persistent graphs using OrientDB Works with persistent graphs using OrientDB
Works with persistent graphs using OrientDB
 
Using Cascalog and Hadoop for rapid graph processing and exploration
Using Cascalog and Hadoop for rapid graph processing and exploration Using Cascalog and Hadoop for rapid graph processing and exploration
Using Cascalog and Hadoop for rapid graph processing and exploration
 

Kürzlich hochgeladen

Kürzlich hochgeladen (20)

🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 

Challenges in the Design of a Graph Database Benchmark

  • 1. © Prof. Dr.-Ing. Wolfgang Lehner | Challenges in the Design of a Graph Database Benchmark FOSDEM‘12 – Graph Processing DevRoom Marcus Paradies
  • 2. Marcus Paradies | | 1 > Outline  Motivation  Challenges  Thoughts on Graph Data Generation  Thoughts on Query Workload  Summary and Outlook  Discussion FOSDEM 2012
  • 3. Marcus Paradies | | 2 > Motivation FOSDEM 2012  Graph databases are gaining momentum  Enterprise corporations are getting interested  How to compare the available graph database vendors?  Main issue: Results from benchmarks are not comparable  Lack of standardization in the data model and query language  What are “typical“ graph operations?
  • 4. Marcus Paradies | | 3 > Challenges FOSDEM 2012
  • 5. Marcus Paradies | | 4 > Challenge #1: Application Domain  Graph data is not homogenous  Graph data from different domains follows different patterns  Examples:  Social Network Analysis (SNA)  Protein Interaction Analysis  Recommendation Systems  Supply Chain Management (Vehicle Routing, CRM)  Fraud Detection in Financial Systems  … Challenge: Find an application domain which represents a graph data pattern common in many different scenarios. FOSDEM 2012
  • 6. Marcus Paradies | | 5 > Challenge #2: Graph Data Model FOSDEM 2012 What flavours of graph data models are commonly used?
  • 7. Marcus Paradies | | 6 > Challenge #2: Graph Data Model FOSDEM 2012 Directed Graph
  • 8. Marcus Paradies | | 7 > Challenge #2: Graph Data Model FOSDEM 2012 Directed Graph Undirected Graph
  • 9. Marcus Paradies | | 8 > Challenge #2: Graph Data Model FOSDEM 2012 Directed Graph Undirected Graph Mixed Graph
  • 10. Marcus Paradies | | 9 > Challenge #2: Graph Data Model FOSDEM 2012 Directed Graph Undirected Graph Mixed Graph Multi Graph
  • 11. Marcus Paradies | | 10 > Challenge #2: Graph Data Model FOSDEM 2012 Directed Graph Undirected Graph Mixed Graph Multi Graph (Plain) Property Graph
  • 12. Marcus Paradies | | 11 > Challenge #2: Graph Data Model FOSDEM 2012 Directed Graph Undirected Graph Mixed Graph Multi Graph (Plain) Property Graph (Structured Property Graph)
  • 13. Marcus Paradies | | 12 > Challenge #2: Graph Data Model FOSDEM 2012 Directed Graph Undirected Graph Mixed Graph Multi Graph (Plain) Property Graph (Structured Property Graph) Hyper Graph
  • 14. Marcus Paradies | | 13 > Challenge #2: Graph Data Model FOSDEM 2012 Directed Graph Undirected Graph Mixed Graph Multi Graph (Plain) Property Graph (Structured Property Graph) Hyper Graph Challenge: Find a graph data model suited for the majority of use cases from various domains.
  • 15. Marcus Paradies | | 14 > Challenge #3: Querying Graph Data FOSDEM 2012  Large variety in graph processing and manipulation languages  Each graph database vendor implements own query languages/APIs  Reason: No standardized graph query language available
  • 16. Marcus Paradies | | 15 > Challenge #3: Querying Graph Data FOSDEM 2012  Large variety in graph processing and manipulation languages  Each graph database vendor implements own query languages/APIs  Reason: No standardized graph query language available Challenge: Find a way to abstract from the zoo of available query languages.
  • 17. Marcus Paradies | | 16 > Challenge #4: Defining the Workload FOSDEM 2012  The workload to be defined is dependent from the underlying query/manipulation language  Should complex (algorithmic) operations be part of a database benchmark?  Which algorithms to pick?  Social Network Analysis → Find communities  Supply Chain Management → Find maximal flow  Web of Data → Find pattern matches  How are concurrent users represented?  What about transactionality?
  • 18. Marcus Paradies | | 17 > Thoughts on Graph Data Generation FOSDEM 2012
  • 19. Marcus Paradies | | 18 > Graph Data Generation - Patterns FOSDEM 2012  Understanding graph patterns (characteristics) is crucical for a good graph data generator  What are distinguishing characteristics of graphs?  How can we identify graph patterns on large graphs?  Three main patterns [1]:  Power law distributed  Small diameters  Community Effects ? = ? =
  • 20. Marcus Paradies | | 19 > Pattern 1 – Power law distributed FOSDEM 2012  Most real-world graph data sets follow a power law distribution  Examples:  Internet router graph  Subsets of the WWW  Citation Graphs source: [2] source: [2]
  • 21. Marcus Paradies | | 20 > Pattern 2 – Small Diameters FOSDEM 2012  Effective Diameter (eccentricity): Minimum number of hops, in which a fraction (e.g. 90%) of all connected pairs of nodes can reach each other  Other measures exist as well, but are not applicable to disconnected graphs  In most use cases, diameter is much smaller than the size of the graph  Examples:  97% eccentricity of around 16 for path lengths in the WWW  Average path length around 6 for Epinions social network source: [1]
  • 22. Marcus Paradies | | 21 > Pattern 3 – Community Effects FOSDEM 2012  Community: A set of nodes, where each node in the set is closer to all other nodes in the community than to nodes outside the community.  Communities can be found in many real-world graphs, especially social networks and collaboration networks  Clustering Coefficient C: A measure, which qualifies the „clumpiness“ of a graph
  • 23. Marcus Paradies | | 22 > Thoughts on Query Workload FOSDEM 2012
  • 24. Marcus Paradies | | 23 > Query Workload - Operations FOSDEM 2012  Graph Manipulation Operations  Add/Update/Remove Nodes from the Graph  Add/Update/Remove Edges from the Graph  Add/Update/Remove Edge attributes  Add/Update/Remove Node attributes  Graph Query Operations  Retrieve selection of nodes from given filter expression  Getting the neighbors of a set of nodes (possibly with edge filter constraints)  Graph Traversals  Based on basic query operations  Exploration of neighborhood from a given set of start nodes  Terminated by the number of steps and/or edge/node filter constraints  Graph Analytical Operations  Aggregation operations such as sum, avg, min, max  Aggregations on node-level and on edge-level
  • 25. Marcus Paradies | | 24 > Query Workload - Measures FOSDEM 2012  Closely related to benchmark capabilities  Measures from relational benchmarks apply such as  Average query response time  Transactions per second (throughput)  Additional measures for graph traversals  Traversals per second  What about distributed scenarios?  What about concurrent users?
  • 26. Marcus Paradies | | 25 > Summary and Outlook  Graph data distribution highly important for graph database benchmark  Application domains do have very specific graph characteristics  A graph database benchmark has to provide abstract and high-level graph operation descriptions  Feel free to contact me if you want to contribute: marcus.paradies@gmail.com FOSDEM 2012
  • 27. Marcus Paradies | | 26 > Discussion FOSDEM 2012
  • 28. Marcus Paradies | | 27 > Theses  A benchmark based on social network data is nice, but might be not be that representative for large enterprise applications  Algorithms should NOT be part of a graph database benchmark  Only support basic operations such as simple lookups and path traversals  The underlying graph data model should be a simple property graph  A graph database has to scale in terms of data size as well as number of concurrent users  .... FOSDEM 2012
  • 29. Marcus Paradies | | 28 > References [1] Graph Mining: Laws, Generators, and Algorithms (2006) [2] http://konect.uni-koblenz.de/ [3] A Discussion on the Design of Graph Database Benchmarks (2010) FOSDEM 2012