Implementing Query Operations for Knowledge Graph OLAP in Apache Spark

Author
J. Klar
Master Thesis
MT2301 (February, 2023)
Supervised by
Assoz.-Prof. Mag. Dr. Christoph Schütz
Instructed by
Bashar Ahmad, MSc
Accomplished at
University Linz, Institute of Business Informatics - Data & Knowledge Engineering
Resources
Copy

Abstract (German)

Knowledge Graph OLAP kombiniert das Konzept von Knowledge Graphs (KG) mit einer multidimensi-onalen Sicht auf Daten, wie sie im Bereich des Online Analytical Processing (OLAP) angewandt wird. KG-OLAP-Würfel enthalten Wissen in Form von RDF-Tripel, welche durch hierarchisch strukturierte Dimensionen definiert werden und kontextabhängige Wissensgraphen bilden. Das Modell ermöglicht die Anwendung von kontextuellen und Graph-spezifischen Operationen auf den Daten für verschie-dene Arten von Analysen. Eine SPARQL-basierte Implementierung erwies sich jedoch als nicht geeig-net für große Datenmengen, was den Bedarf für eine skalierbare Implementierung unterstreicht. Ziel dieser Arbeit ist es daher, eine Implementierung bereitzustellen, die für große Datenmengen im Rah-men von KG-OLAP skalierbar ist und die erforderlichen Graph Operationen auf kontextualisiertem Wis-sen in Form von RDF-Daten durchführen kann. Folglich wird eine prototypische Implementierung unter Verwendung des Frameworks Apache Spark für verteilte Datenverarbeitung vorgeschlagen, die KG-OLAP-spezifische Graph Operationen auf RDF-Quadrupeln ausführt. Genauer gesagt wird das auf Spark aufbauende Graph Verarbeitungsframework GraphX verwendet. So werden RDF-Quadrupel auf die Graphendarstellung von Apache Spark GraphX abgebildet. Die Java-Implementierung ermöglicht dann die Konstruktion des Basisgraphen aus den RDF-Quelldaten, sowie die Durchführung folgender KG-OLAP-Graph Operationen auf dem Basisgraphen: individual-generating abstraction, triple-genera-ting abstraction, value-generating abstraction, reification und pivot. Die Funktionalität und Anwendbar-keit des Spark-basierten Prototyps wird in Experimenten mit einem bereitgestellten großen Bench-mark-Datensatz mit Daten aus dem Bereich Flugverkehrsmanagement (engl. air traffic management) demonstriert.

Abstract (English)

Knowledge Graph OLAP combines the concept of knowledge graphs (KG) and a multidimensional view on data as employed in online analytical processing (OLAP). KG-OLAP cubes contain knowledge in the form of RDF triples that are context-dependent, defined through hierarchically structured dimen-sions creating contextualized knowledge graphs. The model enables contextual and graph operations on the data for various kinds of analyses. A SPARQL-based implementation has proven not to be applicable for big volumes of data, accentuating the need for a scalable implementation. This thesis therefore aims at providing an implementation that is scalable for large amounts of data within the KG-OLAP setting and can perform the required graph operations on contextualized knowledge in the form of RDF data. Consequently, a prototypical implementation using the distributed processing framework Apache Spark is proposed that executes KG-OLAP graph operations on RDF quadruples. More spe-cifically, the graph processing framework GraphX built on top of Spark is used. Thus, RDF quadruples are mapped to the Apache Spark GraphX graph representation. The Java implementation then allows for the construction of the initial graph from the RDF source data as well as for performing the following KG-OLAP graph operations on the base graph: individual-generating abstraction, triple-generating ab-straction, value-generating abstraction, reification and pivot. The functionality and applicability of the Spark-based prototype is demonstrated in experiments on a provided large benchmark dataset con-taining data regarding air traffic management.