This is an old revision of the document!


MFE 2019-2020 : Web and Information Systems

Introduction

The primary area of research in the Web and Information Systems laboratory of the the Department of Computer & Decision Engineering concerns information systems (both traditional and on the web). Broadly speaking, we can identify the following major themes in the laboratory's research. The MFE subjects presented below cover these themes.

  • Business Intelligence and Data Warehouses A data warehouse, an evolution of traditional databases, has become the basis of the new generation enterprise information systems. It contains an aggregated and historical view of the operational information of the entreprise. The laboratory's research focuses on the design of data warehouses using the techniques of conceptual modeling and their implementation into current operational platforms.
  • The Semantic Web and Web Data Management The Semantic Web, also known as the Web of Linked Data, aims at enabling people to share structured information on the Web. In the same way as one uses HTML and hyperlinks to publish and connect information on the Web of Documents, one uses the RDF data model and RDF links to publish and connect structured information on the Web of Linked Data. This has the potential to turn the Web into one huge database with structured querying capabilities that vastly exceed the limited keyword search queries so common on the Web of Documents today. Unfortunately, this potential still remains to be realized. In this respect, our work revolves around several issues: (1) the management of ontologies, and especially in the contextualisation, modularization, and the formalization of spatial and temporal aspects in the ontologies; (2) the design of suitable query languages for the web; and (3) the design of efficient evaluation strategies for these query languages.
  • Spatio-temporal databases Today, the management of data located in space is a necessity both for organizations and individuals. The application domains are numerous: cartography, land management, network utility management (electricity, water, transportation, etc.), environment, geomarketing, location-based services. In addition, the spatial dimension is often related to a temporal or historical dimension, which means that the systems must keep track of the evolution in time of the data contained in the database. Our research consists in defining conceptual models that allows the spatial and temporal aspects of applications to be expressed, and the mechanisms allowing the translation of these specifications into operational systems.


Please note that this list of subjects is not exhaustive. Interested students are invited to propose original subjects.

Master Thesis in Collaboration with Euranova

Our laboratory performs collaborative research with Euranova R&D (http://euranova.eu/). The list of subjects proposed for this year by Euranova can be found here.

These subject include topics on distributed graph processing, processing big data using Map/Reduce, cloud computing, and social networks.

Dynamic Query Processing on GPU Accelerators

This master thesis is put forward in the context of the DFAQ Research Project: “Dyanmic Processing of Frequently Asked Queries”, funded by the Wiener-Anspach foundation.

Within this project, our lab is hence developing novel ways for processing “fast Big Data”, i.e., processing of analytical queries where the underlying data is constantly being updated. The analytics problems envisioned cover wide areas of computer science and include database aggregate queries, probabilistic inference, matrix chain computation, and building statistical models.

The objective of this master thesis is to build upon the novel dynamic processing algorithms being developed in the lab, and complement these algorithms by proposing dynamic evaluation algorithms that execute on modern GPU architectures, thereby exploiting their massive parallel processing capabilities.

Since our current development is done in the Scala programming language, prospective students should either know Scala, or being willing to learn it within the context of the master thesis.

Validation of the approach Validation of master thesis' work should be done on two levels:

  • a theoretical level; by proposing and discussing alternative ways to do incremental computation on GPU architectures, and comparing these from a theoretical complexity viewpoint
  • an experimental level; by proposing a benchmark collection of CEP queries that can be used to test the obtained versions of the interpreter/compiler, and report on the experimentally observed performance on this benchmark.

Deliverables of the master thesis project

  • An overview of query processing on GPUs
  • A definition of the analytics queries under consideration
  • A description of different possible dynamic evaluation algorithms for the analytical queries on GPU architectures.
  • A theoretical comparison of these possibilities
  • The implementaiton of the evaluation algorithm(s) (as an interpreter/compiler)
  • A benchmark set of queries and associated data sets for the experimental validation
  • An experimental validation of the compiler, and analysis of the results.

Interested? Contact : Stijn Vansummeren

Status: available

Multi-query Optimization in Spark

Distributed computing platforms such as Hadoop and Spark focus on addressing the following challenges in large systems: (1) latency, (2) scalability, and (3) fault tolerance. Dedicating computing resources for each application executed by Spark can lead to a waste of resources. Unified distributed file systems such as Alluxio has provided a platform for computing results among simultaneously running applications. However, it is up to the developers to decide on what to share.

The objective of this master thesis is to optimize various applications running on a Spark platform, optimize their execution plans by autonomously finding sharing opportunities, namely finding the RDDs that can be shared among these applications, and computing these shared plans once instead of multiple times for each query.

Deliverables of the master thesis project

  • An overview of the Apache Spark architecture.
  • Develop a performance model for queries executed by Spark.
  • An implementation that optimizes queries executed by Spark and identify sharing opportunities.
  • An experimental validation of the developed system.

Interested? Contact : Stijn Vansummeren

Status: available

Graph Indexing for Fast Subgraph Isomorphism Testing

There is an increasing amount of scientific data, mostly from the bio-medical sciences, that can be represented as collections of graphs (chemical molecules, gene interaction networks, …). A crucial operation when searching in this data is that of subgraph isomorphism testing: given a pattern P that one is interested in (also a graph) in and a collection D of graphs (e.g., chemical molecules), find all graphs in G that have P as a subgraph. Unfortunately, the subgraph isomorphism problem is computationally intractable. In ongoing research, to enable tractable processing of this problem, we aim to reduce the number of candidate graphs in D to which a subgraph isomorphism test needs to be executed. Specifically, we index the graphs in the collection D by means of decomposing them into graphs for which subgraph isomorphism *is* tractable. An associated algorithm that filters graphs that certainly cannot match P can then formulated based on ideas from information retrieval.

In this master thesis project, the student will emperically validate on real-world datasets the extent to which graphs can be decomposed into graphs for which subgraph isomorphism is tractable, and run experiments to validate the effectiveness of the proposed method in terms of filtering power.

Interested? Contact : Stijn Vansummeren

Status: available

Extending SPARQL for Spatio-temporal Data Support

SPARQL is the W3C standard language to query RDF data over the semantic web. Although syntactically similar to SQL, SPARQL is based on graph matching. In addition, SPARQL is aimed, basically, to query alphanumerical data. Therefore, a proposal to extend SPARQL to support spatial data, called GeoSPARQL, has been presented to the Open Geospatial Consortium.

In this thesis we propose to (1) perform an analysis of the current proposal for GeoSPARQL; (2) a study of current implementations of SPARQL that support spatial data; (3) implement simple extensions for SPARQL to support spatial data, and use these language in real-world use cases.

MFE 2019-2020 : Spatiotemporal Databases

Moving object databases (MOD) are database systems that can store and manage moving object data. A moving object is a value that changes over time. It can be spatial (e.g., a car driving on the road network), or non-spatial (e.g., the temperature in Brussels). Using a variety of sensors, the changing values of moving objects can be recorded in digital formats. A MOD, then, helps storing and querying such data. A couple of prototypes have also been proposed, some of which are still active in terms of new releases. Yet, a mainstream system is by far still missing. Existing prototypes are merely research. By mainstream we mean that the development builds on widely accepted tools, that are actively being maintained and developed. A mainstream system would exploit the functionality of these tools, and would maximize the reuse of their ecosystems. As a result, it becomes more closer to end users, and easily adopted in the industry.

In our group, we are building MobilityDB, a mainstream MOD. It builds on PostGIS, which is a spatial database extension of PostgreSQL. MobilityDB extends the type system of PostgreSQL and PostGIS with ADTs for representing moving object data. It defines, for instance, the tfloat for representing a time dependant float, and the tgeompoint for representing a time dependant geometry point. MobilityDB types are well integrated into the platform, to achieve maximal reusability, hence a mainstream development. For instance, the tfloat builds on the PostgreSQL double precision type, and the tgeompoint build on the PostGIS geometry(point) type. Similarly MobilityDB builds on existing operations, indexing, and optimization framework.

This is all made accessible via the SQL query interface. Currently MobilityDB is quite rich in terms of types and functions. It can answer sophisticated queries in SQL. The first beta version has been released as open source April 2019 (https://github.com/ULB-CoDE-WIT/MobilityDB).

The following thesis ideas contribute to different parts of MobilityDB. They all constitute innovative development, mixing both research and development. They hence will help developing the student skills in:

  • Understanding the theory and the implementation of moving object databases.
  • Understanding the architecture of extensible databases, in this case PostgreSQL.
  • Writing open source software.

JDBC driver for Trajectories

An important, and still missing, piece of MobilityDB is Java JDBC driver, that will allow Java programs to establish connections with MobilityDB, and store and retrieve data. This thesis is about developing such a driver. As all other components of PostgreSQL, its JDBC driver is also extensible. This documentation gives a good explanation of the driver and the way it can be extended: https://jdbc.postgresql.org/documentation/head/index.html It is also helpful to look at the driver extension for PostGIS: https://github.com/postgis/postgis-java

As MobilityDB build on top of PostGIS, the Java driver will need to do the same, and build on top of the PostGIS driver. Mainly the driver will need to provide Java classes to represent all the types of MobilityDB, and access the basic properties.

Interested?

Status: available

Mobility data exchange standards

Data exchange standards allow different software systems to integrate together. Such standards are essential in the domain of mobility. Consider for example the case of public transportation. Different vehicles (tram, metro, bus) come from different vendors, and are hence equipped with different location tracking sensors. The tracking software behind these vehicle use different data formats. These software systems need to push real time information to different apps. To support the passengers, for example, there must be a mobile or a Web app to check the vehicle schedules and to calculate routes. This information shall also be open to other transport service providers and to routing apps. This is how google maps, for instance, is able to provide end to end route plans that span different means of transport.

The goal of this thesis is to survey the available mobility data exchange standards, and to implement in MobilityDB import/export functions for the relevant ones. Examples for these standards are:

Interested?

Status: available

Visualizing spatiotemporal data

Data visualization is essential for understanding and presenting it. starting with the temporal point, which is the database representation of a moving point object. Typically, it is visualized in a movie style, as a point that moves over a background map. The numerical attributes of this temporal point, such as the speed, are temporal floats. These can be visualized as function curves from the time t to the value v.

The goal of this thesis is to develop a visualization tool for the MobilityDB temporal types. The architecture of this tool should be innovative, so that it will be easy to extend it with more temporal types in the future. should be This tool should be integrated as an extension of a mainstream visualization software. A good candidate is QGIS (https://www.qgis.org/en/site/). The choice is however left open as part of the survey.

Interested?

Status: available

Data modeling of spatiotemporal regions

In moving object databases, a lot of attention has been given to moving point objects. Many data model have been proposed for this. Less attention has been given to moving region objects. Imagine a herd of animals that moves together in the wild. At any time instant, this herd can be represented using a spatial region, e.g., their convex hull. Over time, this regions changes place and extent. A spatiotemporal region is an abstract data type that can represent this temporal evolution of the region.

This thesis is about proposing a data model for spatiotemporal regions, and implementing it in MobilityDB. This includes surveying the literature on moving object databases, and specifically on spatiotemporal reigons, proposing a discrete data model, implementing it, and implementing the basic data base functions and operations to make use of it.

Interested?

Status: available

 
teaching/mfe/is.1557743961.txt.gz · Last modified: 2019/05/13 12:39 by mahmsakr