ABSTRACT
Real-world graph applications are typically domain-specific and model complex business processes in the property graph data model. To implement a domain-specific graph algorithm in the context of such a graph application, simply providing a set of built-in graph algorithms is usually not sufficient nor does it allow algorithm customization to the user's needs. To cope with these issues, graph database vendors provide---in addition to their declarative graph query languages---procedural interfaces to write user-defined graph algorithms.
In this paper, we introduce GraphScript, a domain-specific graph query language tailored to serve advanced graph analysis tasks and the specification of complex graph algorithms. We describe the major language design of GraphScript, discuss graph-specific optimizations, and describe the integration into an enterprise data platform.
- Christopher R. Aberger, Andres Nötzli, Kunle Olukotun, and Christopher Ré. 2015. EmptyHeaded: Boolean Algebra Based Graph Processing. CoRR abs/1503.02368 (2015). http://arxiv.org/abs/1503.02368.Google Scholar
- Andrew Crotty, Alex Galakatos, Kayhan Dursun, Tim Kraska, Carsten Binnig, Ugur Cetintemel, and Stan Zdonik. 2015. An Architecture for Compiling UDF-centric Workflows. Proc. VLDB Endow. 8, 12 (Aug. 2015), 1466--1477. Google ScholarDigital Library
- Matthias Hauck, Marcus Paradies, Holger Fröning, Wolfgang Lehner, and Hannes Rauhe. 2015. Highspeed Graph Processing Exploiting Main-Memory Column Stores. In Proceedings of the Euro-Par 2015 International Workshops. 503--514. Google ScholarCross Ref
- Sungpack Hong, Hassan Chafi, Edic Sedlar, and Kunle Olukotun. 2012. Green-Marl: A DSL for Easy and Efficient Graph Analysis. In Proceedings of the International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS '12). 349--362. Google ScholarDigital Library
- Chris Lattner. 2002. LLVM: An Infrastructure for Multi-Stage Optimization. Master's thesis. Computer Science Dept., University of Illinois at Urbana-Champaign, Urbana, IL.Google Scholar
- Yucheng Low, Joseph Gonzalez, Aapo Kyrola, Danny Bickson, Carlos Guestrin, and Joseph M. Hellerstein. 2010. GraphLab: A New Parallel Framework for Machine Learning. In Conference on Uncertainty in Artificial Intelligence (UAI '10). 340--349.Google Scholar
- Fabian Nagel, Gavin Bierman, and Stratis D. Viglas. 2014. Code Generation for Efficient Query Processing in Managed Runtimes. Proc. VLDB Endow. 7, 12 (Aug. 2014), 1095--1106. Google ScholarDigital Library
- Thomas Neumann. 2011. Efficiently Compiling Efficient Query Plans for Modern Hardware. Proc. VLDB Endow. 4, 9 (June 2011), 539--550. Google ScholarDigital Library
- OrientDB project website. 2017. http://www.orientdb.org/. (2017).Google Scholar
- Neo4j project website. 2017. http://neo4j.org/. (2017).Google Scholar
- Sparksee project website. 2017. http://www.sparsity-technologies.com/. (2017).Google Scholar
- Marko A. Rodriguez. 2015. The Gremlin Graph Traversal Machine and Language. CoRR abs/1508.03843 (2015). http://arxiv.org/abs/1508.03843Google Scholar
- Marko A. Rodriguez and Peter Neubauer. 2010. Constructions from Dots and Lines. CoRR abs/1006.2361 (2010). http://arxiv.org/abs/1006.2361.Google Scholar
- Julian Shun and Guy E. Blelloch. 2013. Ligra: A Lightweight Graph Processing Framework for Shared Memory. In Proceedings of the ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming (PPoPP '13). 135--146. Google ScholarDigital Library
Index Terms
- GraphScript: implementing complex graph algorithms in SAP HANA
Recommendations
On the Multichromatic Number of s-Stable Kneser Graphs
For positive integers n and s, a subset Sï [n] is s-stable if sï |i-j|ï n-s for distinct i,j∈S . The s-stable r-uniform Kneser hypergraph KGrn,ks-stable is the r-uniform hypergraph that has the collection of all s-stable k-element subsets of [n] as ...
Adjacent vertex-distinguishing edge and total chromatic numbers of hypercubes
An adjacent vertex-distinguishing edge coloring of a simple graph G is a proper edge coloring of G such that incident edge sets of any two adjacent vertices are assigned different sets of colors. A total coloring of a graph G is a coloring of both the ...
Forbidden Subgraphs and Weak Locally Connected Graphs
A graph is called H-free if it has no induced subgraph isomorphic to H. A graph is called $$N^i$$Ni-locally connected if $$G[\{ x\in V(G): 1\le d_G(w, x)\le i\}]$$G[{x?V(G):1≤dG(w,x)≤i}] is connected and $$N_2$$N2-locally connected if $$G[\{uv: \{uw, vw\...
Comments