All Projects → dbs-leipzig → gradoop_demo

dbs-leipzig / gradoop_demo

Licence: Apache-2.0 license
Demo application for GRADOOP operators

Programming Languages

javascript
184084 projects - #8 most used programming language
java
68154 projects - #9 most used programming language
CSS
56736 projects
HTML
75241 projects

Projects that are alternatives of or similar to gradoop demo

GraphiPy
GraphiPy: Universal Social Data Extractor
Stars: ✭ 61 (+190.48%)
Mutual labels:  graph-algorithms, graph-visualization
lynxkite
The complete graph data science platform
Stars: ✭ 120 (+471.43%)
Mutual labels:  graph-algorithms, graph-visualization
argo-graph-lite
Interactive Graph Visualization in Your Browser
Stars: ✭ 69 (+228.57%)
Mutual labels:  graph-algorithms, graph-visualization
Networkx
Network Analysis in Python
Stars: ✭ 10,057 (+47790.48%)
Mutual labels:  graph-algorithms, graph-visualization
mage
MAGE - Memgraph Advanced Graph Extensions 🔮
Stars: ✭ 89 (+323.81%)
Mutual labels:  graph-algorithms
cognipy
In-memory Graph Database and Knowledge Graph with Natural Language Interface, compatible with Pandas
Stars: ✭ 31 (+47.62%)
Mutual labels:  graph-algorithms
Graph-Theory
The Repository is All about the Graph Algorithms. I am Still Working On it. I am trying to Note down all the variations of Popular graph Algorithms. I am also keeping the solution to the problems of Different Online Judges according to the topic. I hope you can find it useful.
Stars: ✭ 16 (-23.81%)
Mutual labels:  graph-algorithms
graphsim
R package: Simulate Expression data from igraph network using mvtnorm (CRAN; JOSS)
Stars: ✭ 16 (-23.81%)
Mutual labels:  graph-algorithms
j2
j2 is a minimalist concatenative programming language that makes up for its simplicity by its ability to natively bind with C libraries' ABI *and types*, *without glue*
Stars: ✭ 37 (+76.19%)
Mutual labels:  graph-algorithms
PyBC
Bitcoin blockchain parser for Python 2 and 3. Includes handy examples.
Stars: ✭ 26 (+23.81%)
Mutual labels:  graph-algorithms
Belief-Propagation
Overview and implementation of Belief Propagation and Loopy Belief Propagation algorithms: sum-product, max-product, max-sum
Stars: ✭ 85 (+304.76%)
Mutual labels:  graph-algorithms
TeamReference
Team reference for Competitive Programming. Algorithms implementations very used in the ACM-ICPC contests. Latex template to build your own team reference.
Stars: ✭ 29 (+38.1%)
Mutual labels:  graph-algorithms
GraphPlot.jl
Graph visualization for Julia.
Stars: ✭ 171 (+714.29%)
Mutual labels:  graph-visualization
swap
A Solver for the Wavelength Assignment Problem (RWA) in WDM networks
Stars: ✭ 27 (+28.57%)
Mutual labels:  graph-algorithms
ratewithscience
Rate things on arbitrary scales using big data and science!
Stars: ✭ 42 (+100%)
Mutual labels:  graph-algorithms
global-chem
A Chemical Knowledge Graph of What is Common in the World.
Stars: ✭ 77 (+266.67%)
Mutual labels:  graph-algorithms
GraphLIME
This is a Pytorch implementation of GraphLIME
Stars: ✭ 40 (+90.48%)
Mutual labels:  graph-algorithms
position-rank
PositionRank: An Unsupervised Approach to Keyphrase Extraction from Scholarly Documents
Stars: ✭ 89 (+323.81%)
Mutual labels:  graph-algorithms
kaliningraph
🕸️ Graphs, finite fields and discrete dynamical systems in Kotlin
Stars: ✭ 62 (+195.24%)
Mutual labels:  graph-algorithms
Graph-Algorithms
Everything you need to know about graph theory to ace a technical interview 🔥
Stars: ✭ 87 (+314.29%)
Mutual labels:  graph-algorithms

Demo application for GRADOOP

Description

Property graphs are an intuitive way to model, analyze and visualize complex relationships among heterogeneous data objects, for example, as they occur in social, biological and information networks. These graphs typically contain thousands or millions of vertices and edges and their entire representation can easily overwhelm an analyst.

GRADOOP is an open-source system for graph analytics that enables handling of such graphs. GRADOOP is implemented on top of Apache Flink, a state-of-the-art distributed dataflow framework, and thus allows us to scale graph analytical programs across multiple machines.

In this application we demonstrate two GRADOOP operators: Graph Grouping and Cypher-based Graph Pattern Matching. A user can choose between different input graphs and adjust the operator parameters. The computation is executed on the user machine by automatically starting an Apache Flink cluster.

Graph Grouping

One way to reduce complexity of a large property graph is the grouping of vertices and edges to summary graphs. We developed an algorithm for graph grouping with support for attribute aggregation and structural summarization by user-defined vertex and edge properties. The operation is very similar to a GROUP BY operation known from relational databases but in addition summarizes the graph structure according to the computed vertex and edge groups.

screenshot

Cypher-based graph pattern matching

Graph pattern matching is an important and challenging operation on graph data. Typical use cases are related to graph analytics. Since analysts are often non-programmers, a graph system will only gain acceptance, if there is a comprehensible way to declare pattern matching queries. However, respective query languages are currently only supported by graph databases but not by distributed graph processing systems. To enable pattern matching on a large scale, we implemented core features of the declarative graph query language Cypher within GRADOOP.

screenshot

Demo Instructions

  • Clone the repo
  • $ mvn clean install
  • $ mvn exec:java -Dexec.mainClass="org.gradoop.demo.server.Server"
  • Navigate to http://localhost:2342/gradoop/html/grouping.html or http://localhost:2342/gradoop/html/cypher.html
  • Select data set from drop down list
  • Enjoy

Add new graphs

  • Create a CSV graph using Gradoop (see gradoop-examples)
  • Copy CSV graph to src/main/resources/data
  • Add it to the input graph drop-down of the html files
  • Restart the server

Awards

Further reading

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].