Dice Colloquium 20.10.2019: Algebraic Property Graphs
a month ago by Adrian Wilke
At the DICE Colloquium on Friday the 25th of October 2019, Adrian Wilke presented the paper “Algebraic Property Graphs” by Joshua Shinavier and Ryan Wisnesky.
The main contribution of the paper consists of two parts. Firstly, the authors define Algebraic Property Graphs (APG) by defining labels, types, elements, values, a set of functions and an equation that must be kept (Section 3). Secondly, they define operations on APG (Section 4). The definition of APG is based on the language of Category Theory. As this foundation has to be understood, the paper also includes an introduction to Category Theory (Appendix A). With regard to applicability, APG open up the possibility of transforming data among various data structures (Appendix D; Section 2). That includes property graphs, relational databases, hypergraphs, key-value storage solutions, various data serialization approaches, and the Resource Description Framework (RDF).
- DICE colloquium Slides: https://de.slideshare.net/adrianwilke/algebraic-property-graphs
- Paper: https://arxiv.org/pdf/1909.04881.pdf
- Java code: https://github.com/CategoricalData/CQL/tree/master/src/main/java/catdata/apg
- Proofs: https://www.categoricaldata.net/APG.v
- Research on CQL: https://www.categoricaldata.net/papers
- Introduction video: https://youtu.be/telyBQCuq70
- Category Theory in Life video: https://youtu.be/ho7oagHeqNc
In this paper, we use algebraic data types to define a formal basis for the property graph data models supported by popular open source and commercial graph databases. Developed as a kind of inter-lingua for enterprise data integration, algebraic property graphs encode the binary edges and key-value pairs typical of property graphs. They also provide a well-defined notion of schema and support straightforward mappings to and from non-graph datasets, including relational, streaming, and micro-service data commonly encountered in enterprise environments. We propose algebraic property graphs as a simple but mathematically rigorous bridge between graph and non-graph data models, broadening the scope of graph computing by removing obstacles to the construction of virtual graphs.