Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
teaching:mfe:is [2016/03/16 10:27]
tcalders
teaching:mfe:is [2019/12/04 09:17]
svsummer [Dynamic Query Processing in Modern Big Data Architectures]
Line 1: Line 1:
-====== MFE 2015-2016 : Web and Information Systems ======+====== MFE 2019-2020 : Web and Information Systems ======
  
 ===== Introduction ===== ===== Introduction =====
Line 18: Line 18:
 ===== Master Thesis in Collaboration with Euranova ===== ===== 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  +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 [[https://​research.euranova.eu/​wp-content/​uploads/​proposals-thesis-2019.pdf|here]]. 
-{{:teaching:​mfe:​master_thesis_euranova_2015.pdf|here}}+
  
 These subject include topics on distributed graph processing, processing big data using Map/Reduce, cloud computing, and social networks. These subject include topics on distributed graph processing, processing big data using Map/Reduce, cloud computing, and social networks.
Line 26: Line 26:
  
  
-===== 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.+===== Dynamic Query Processing ​in Modern Big Data Architectures =====
  
-**Interested?​** Contact : [[stijn.vansummeren@ulb.ac.be|Stijn Vansummeren]]+Dynamic Query Processing refers to the activity of processing queries under constant data updates(This is also known as continuous querying)It is a core problem in modern analytic workloads.
  
-**Status**: available+Modern big data compute architectures such as Apache Spark, Apache Flink, and apache Storm support certain form of Dynamic Query Processing.
  
 +In addition, our lab has recently proposed DYN, a new Dynamic Query Processing algorithm that has strong optimality guarantees, but works in a centralised setting.
  
-=====  Complex Event Processing ​for Security Analytics===== ​+The objective of this master thesis is to propose extensions to our algorithm that make it suitable ​for distributed implementation on one of the above-mentioned platforms, and compare its execution efficiency against the state-of-the art solutions provided by Spark, Flink, and Storm. In order to make this comparison meaningfull,​ the student is expected to research, survey, and summarize the principles underlying the current state-of-the art approaches.
  
-As noted by [[http://​home.deib.polimi.it/​cugola/​Papers/​cep_survey.pdf|Cugola and Magara]]"an increasing number ​of distributed ​applications requires ​processing ​continuously flowing data ("​events"​) from geographically distributed sources at unpredictable rates to obtain timely responses to complex ​queries. Examples ​of such applications come from the most disparate fields: from fraud  detection to network intrusion detection systems, from wireless sensor networks to financial tickers, from traffic management to click-stream inspection."​+**Deliverables** of the master thesis project 
 +     * An overview of the continuous query processing models of FlinkSpark and Storm 
 +     * A qualitive comparison ​of the algorithms used 
 +     * A proposal for generalizing DYN to the distributed ​setting. 
 +     * An implementation of this geneneralization by means of a compiler that outputs a continous query processing ​plan 
 +     * A benchmark set of continuous ​queries ​and associated data sets for the experimental validation 
 +     * An experimental validation ​of the extension and state of the art
  
-These requirements have led to the development of a number of systems specifically designed to process information as a flow (or a set of flows) of continues data "​events"​ according to a set of pre-deployed processing rules. ​ Despite having a common goal, these systems differ in a wide range of aspects, including architecture,​ data models, rule and pattern languages, and processing mechanisms. In part, this is due to the fact that they were the result of the research efforts of different communities,​ each one bringing its own view of the problem and its background to the definition of a solution. 
  
-The master thesis is put forward in the context of the SPICES "​Scalable Processing and mIning of Complex Events for Security-analytics"​ research project, funded by Innoviris. ​  +**Interested?​** Contact :  [[svsummer@ulb.ac.be|Stijn Vansummeren]]
-The objective of this master thesis is to survey the existing systems and compare the strengths and weaknesses when they are applied specifically to the context detecting security breaches (network intrusion, fraud detection, ...), and help, as part of the research project, in the design & implementation of a new system that overcomes these weaknesses.+
  
-**Interested?** Contact ​[[stijn.vansummeren@ulb.ac.be|Stijn Vansummeren]]+**Status**: taken 
 +===== Graph Indexing for Fast Subgraph Isomorphism Testing =====
  
-**Status**: already taken. +There is an increasing ​amount ​of scientific datamostly 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 pattern P that one is interested in (also a graphin and a collection D of graphs ​(e.g., chemical molecules), find all graphs in G that have P as a   subgraphUnfortunately,​ the subgraph isomorphism problem ​is computationally intractableIn 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. Specificallywe index the graphs in the collection D by means of decomposing them into graphs for which subgraph ​  ​isomorphism *is* tractableAn associated algorithm that filters graphs that certainly cannot match P can then formulated ​based on ideas from information retrieval.
- +
- +
-===== Compiling SPARQL queries into machine code ===== +
- +
-Due to the increasing ​availability ​of larger and larger cheap RAM memories, the working set of modern database management systems becomes more and more main memory resident. This implies thatin contrast to traditional database management systems, slow disk accesses are rare, and that hence, the in-memory processing speed of databases becomes an important factor. As recently observed by a number of researchers, ​(e.g.[[http://​sites.computer.org/​debull/​A14mar/​p3.pdf|Neumann and Leis]]), one very attractive approach for fast query processing in this context is the just-in-time compilation of incoming queries into machine codeThis compilation avoids the overhead of the traditional interpretation of query plans, and can aid in minimzing memory traffic for boosting performance. +
- +
-number of recent research prototypes exist that compile SQL queries into machine code in this sense: ​ HyPer A Hybrid OLTP&​OLAP High Performance DBMS (http://​hyper-db.de/​) and Legobase (https://​github.com/​epfldata/​NewLegoBase and http://data.epfl.ch/​legobase). +
- +
-The objective ​of this master thesis is to apply the same methodology to engineer ​compiler ​that translates ​(fragments ofSPARQL (the standard query language for querying RDF data on the semantic web) into machine code. The overall methodology should follow the methodology used by HyPer and Legobase: +
-  * Use of high-level language to construct the compiler (Scala, http://​scala-lang.org/​) +
-  * Use of Lightweight Modular Staging ​(LMS for short) for generating low-level portable assembly code at runtime (http://​scala-lms.github.io/) +
-  * Use of LLVM (http://​llvm.org/​) as a portable assembly code and corresponding translator to machine code. +
- +
-Getting aquaintend with these technologies ​is part of the master thesis objective. +
- +
-**Validation ​of the approach** The thesis should propose a benchmark collection ​of SPARQL queries that can be used to test the obtained SPARQL-to-machine-code compiler and compare its perforance against a referenceinterpreter-based SPARQL compiler. +
- +
-**Deliverables** of the master thesis project: ​  +
-  - An overview of the state of the art in query-to-machine-code compilation. +
-  - A description of lightweight modular staging and how it can be used to construct machine-code compilers. +
-  - The SPARQL compiler (software artifact) +
-  - A benchmark set of SPARQL queries and associated data sets for the experimental validation +
-  - An experimental validation of the compiler, comparing efficiency of compiled queries against a reference compiler ​based on query plan interpretation.+
  
 +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@ulb.ac.be|Stijn Vansummeren]] **Interested?​** Contact : [[stijn.vansummeren@ulb.ac.be|Stijn Vansummeren]]
  
-**Status**: ​available+**Status**: ​taken
  
-===== An implementation of the SCULPT schema language for tabular data on the Web ===== 
  
-Despite the availability of numerous standardized formats ​for semi-structured and semantic web data such as XML, RDF, and JSON, a very large percentage of data and open data published on the web, remains tabular in nature. (Jeni Tennison, one of the two co-chairs of the W3C CSV on the Web working group claims that ``over 90% of the data published on data.gov.uk is tabular data''​.) Tabular data is most commonly published in the form of comma separated values (CSV) files because such files are open and therefore processable by numerous tools, and tailored for all sizes of files ranging from a number of KBs to several TBs. Despite these advantages, working with CSV files is often cumbersome because they are typically not accompanied by a //schema// that describes the file's structure (i.e., ``the second column is of integer datatype'',​ ``columns are delimited by tabs'',​ etc) and captures its intended meaning. Such a description is nevertheless vital for any user trying to interpret the file and execute queries or make changes to it.+=====Extending SPARQL ​for Spatio-temporal Data Support=====
  
-In other data models, the presence of a schema ​is also important for query optimization (required for scalable query execution if the file is large)as well as other static analysis tasksFinallyschemas are prerequisite ​for unlocking huge amounts ​of tabular ​data to the Semantic Web.+[[http://​www.w3.org/​TR/​rdf-sparql-query/​|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 additionSPARQL is aimed, basically, to query alphanumerical data  
 +Therefore, a proposal to extend SPARQL to support spatial data, called ​ [[http://​www.opengeospatial.org/​projects/​groups/​geosparqlswg/​|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 
 + 
  
-In recognition of this problem, the CSV on the Web Working Group of the World Wide Web Consortium argues for the introduction of a schema language for tabular data to ensure higher interoperability when working with datasets using the CSV or similar formats.+   * Contact: [[ezimanyi@ulb.ac.be|Esteban Zimányi]]
  
-The objective of this master thesis is to implement a recent proposal for such a schema language named SCULPT (http://​arxiv.org/​abs/​1411.2351). Concretely, this entails: 
-  * proposing an elegant concrete syntax for SCULPT schemas 
-  * implement both the in-memory and streaming validation algorithms of SCULPT proposed in http://​arxiv.org/​abs/​1411.2351 
-  * extend the SCULPT proposal, by investigating how SCULPT can be combined with complementary features recently proposed by the W3C CSV on the Web Working group (http://​www.w3.org/​2013/​csvw/​wiki/​Main_Page) 
-  * and in particular, extend sculpt with features that allow tabular files to be converted into RDF 
-  * create associated tooling for SCULPT (i.e., parser and serializer generator, in the spirit of data description tools) 
  
-\\ +====== MFE 2019-2020 ​Spatiotemporal Databases ====== 
-**Deliverables** of this master thesis project+Moving object databases ​(MODare 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.
-  - detailed description of the SCULPT proposal ​(document) +
-  - overview of the state of the art; in particular other proposals for schema languages for tabular ​data (document) +
-  ​concrete syntax for sculpt ​(design document + formal grammar) +
-  - implementation ​of SCULPT validation algorithms (software artifact) +
-  - extension ​of sculpt with features for converting into RDF (document + software)+
  
 +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.
  
-**Interested?​** Contact: [[stijn.vansummeren@ulb.ac.be|Stijn Vansummeren]]+This is all made accessible via the SQL query interfaceCurrently 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).
  
-**Status**: already taken+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.
  
-===== Engineering a runtime system and compiler for AQL ===== 
  
-Automatically extracting structured information from text is a task that has been pursued for decades.Since most analytics over text involves information extraction as first stepIE is a very important part of data analysis in the enterprise today.+=====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 dataThis thesis is about developing such driver. As all other components of PostgreSQLits JDBC driver ​is also extensible. This documentation gives 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
  
-In 2005researchers at the IBM Almaden Research Center developped a new system specifically geared for practical information extraction in the enterprise. This effort lead to SystemT, a rule-based IE system with an SQL-like declarative language named AQL (Annotation Query Language). The declarative nature of AQL enables new kinds of tools for extractor development, and draws upon known techniques form query processing in relational database management systems to offer a cost-based optimizer that ensures high-througput performance. Recent research into the foundations of AQL (http://​researcher.watson.ibm.com/​researcher/​files/​us-fagin/​jacm15.pdf) has shown that, as an alternative,​ it is also possible to build a runtime system for AQL based on special kinds of finite state automataA potential benefit of this alternate runtime system is that text files need only be processed once (instead of multiple times in the cost-based optimizer backend) and may hence provide ​greater throughput. On the other hand, the alternate system can sometimes have larger memory requirements than the cost-based optimizer backend.+As MobilityDB build on top of PostGIS, the Java driver will need to do the same, and build on top of the PostGIS driverMainly the driver will need to provide ​Java classes to represent all the types of MobilityDBand access ​the basic properties 
  
-The objective of this master thesis is to design and engineer a runtime system and compiler for (a fragment) of AQL based on finite state automata. Ideally, to obtain the best performance,​ these automata should be compiled into machine-code when executed. For this compilation,​ the following technologies should be used: +**Interested?​** 
-  ​A a high-level language to construct the compiler (Scala, http://​scala-lang.org/​) +  * Contact ​[[ezimanyi@ulb.ac.be|Esteban Zimanyi]]
-  ​Use of Lightweight Modular Staging (LMS for short) for generating low-level portable assembly from the automata at runtime (http://​scala-lms.github.io/​) +
-  * Use of LLVM (http://llvm.org/) as a portable assembly code and corresponding translator to machine code.+
  
-Getting aquaintend with these technologies is part of the master thesis objective.+**Status**: available
  
-**Validation of the approach** The thesis should propose a benchmark collection of AQL queries and associated input text files that can be used to test the obtained automaton-based AQL compiler and compare its performance against ​the referencecost-based optimizer of SystemT.+=====Python driver for Trajectories===== 
 +Similar ​to the previous topicyet for Python
  
-**Deliverables** of the master thesis project: +**Interested?** 
-  ​- An overview of AQL, SystemT, and its cost-based optimizer and evaluation engine(document) +  ​* Contact : [[ezimanyi@ulb.ac.be|Esteban Zimanyi]]
-  - A description of how AQL can be evaluated by means of so-called vset finite state automata(document) +
-  - A detailed desription of the state of the art in evaluating finite state automata. (document) +
-  - Identification of the AQL syntaxt that is to be supported. (specification) +
-  - The AQL compiler (software artifact) +
-  - A benchmark set of AQL queries and associated data sets for the experimental validation +
-  - An experimental validation of the compiler, comparing efficiency of compiled queries against the cost-based reference compiler.+
  
-\\ +**Status**: available
-**References about SystemT**: +
-  * [[http://​almaden.ibm.com/​cs/​projects/​avatar/​icde2008.pdf|An Algebraic Approach to Rule-Based Information Extraction]]  +
-  * [[http://​www.sigmod.org/​publications/​sigmod-record/​0812/​p007.special.krishnamurthy.pdf|SystemT:​ A System for Declarative Information Extraction]]+
  
-\\ +=====Mobility data exchange standards===== 
-**References about finite state automata evaluation**:​ +Data exchange standards allow different software systems to integrate togetherSuch standards are essential in the domain of mobilityConsider for example ​the case of public transportationDifferent vehicles (tram, metro, bus) come from different vendors, and are hence equipped with different location tracking sensorsThe tracking software behind these vehicle use different data formatsThese software systems need to push real time information to different appsTo support the passengers, for example, there must be a mobile or a Web app to check the vehicle schedules and to calculate routesThis 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  ​
-  * Regular expression pattern matching can be simple and fasthttp://​swtch.com/​~rsc/​regexp/​regexp1.html +
-  * Regular Expression Matching: ​the Virtual Machine Approach http://​swtch.com/​~rsc/​regexp/​regexp2.html +
-  * Regular Expression Matching in the Wild http://​swtch.com/​~rsc/​regexp/​regexp3.html +
-  * [[http://​www.diku.dk/​kmc/​documents/​AiPL-CrashCourse.pdf|A Crash-Course in Regular Expression Parsing ​and Regular Expressions as Types.]]+
  
-\\ +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?** Contact ​[[stijn.vansummeren@ulb.ac.be|Stijn Vansummeren]]+  GTFS static, https://​developers.google.com/​transit/​gtfs/​ 
 +  ​GTFS realtime, https://​developers.google.com/​transit/​gtfs-realtime/​ 
 +  ​NeTEx static, http://​netex-cen.eu/​ 
 +  ​SIRI, http://www.transmodel-cen.eu/​standards/​siri/ ​  
 +  * More standards can be found on http://​www.transmodel-cen.eu/​category/​standards/​
  
-\\ 
-**Status**: taken 
  
  
-===== Structural compression of relational databases ===== +**Interested?** 
- +  * Contact : [[ezimanyi@ulb.ac.be|Esteban Zimanyi]]
-Recent research in database management systems at ULB has shown how to theoretically construct succinct (compressed) representations for relational databases and semantic web databases. The advantage of these succinct representations is that they allow querying directly ​**on the succinct representation**, without needing to consult the underlying database. +
- +
-The goal of this thesis is to study scalable algorithms for constructing the actual succinct representations. Some in-memory algorithms are already known, but given the large size of typical database, distributed and out-of-core alternatives need to be found. +
- +
-**Deliverables**:​ +
-  ​* Overview of the state of the art in main-memory,​ and distributed (bi)simulation-based compression algorithms (document) +
-  * Description of the simulation-based compression algorithm to implement (document) +
-  * Selection of the distribution framework (Actors, Pregel, ...) (document) +
-  * Simulation algorithm (software artifact) +
-  * Experimental analysis of distributed algorithm on a number of datasets. (document) +
- +
-**Interested?​** Contact : [[stijn.vansummeren@ulb.ac.be|Stijn Vansummeren]]+
  
 **Status**: available **Status**: available
  
-===== A Scala-based runtime and compiler for Distributed Datalog ​=====+=====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. 
  
-Datalog is a fundamental query language in datamanagement based on logic programming. It essentially extends select-from-where SQL queries with recursion. There is a recent trend in data management research to use datalog to specify distributed applications,​ most notably on the web, as well as do inference on the semantic web. The goal of this thesis is to engineer ​basic **distributed datalog system**, i.e., a system that is capable ​of compiling & running distributed datalog queries. The system ​should be implemented ​in the Scala programming languageLearning Scala is part of the master thesis project.+The goal of this thesis is to develop ​visualization tool for the MobilityDB temporal typesThe architecture ​of this tool should be innovative, so that it will be easy to extend it with more temporal types in the futureshould 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  ​
  
-The system should incorporate recently proposed worst-case join algorithms (i.e., the [[http://​arxiv.org/​abs/​1210.0481|leapfrog trie join]]) and employ known local datalog optimizations (such as magic sets and QSQ.) 
  
-**Validation of the approach** The thesis should propose a benchmark collection of datalog queries and associated data workloads that be used to test the obtained system, and measure key performance characteristics (elasticity of the system; memory frootprint; overall running time, ...) +**Interested?** 
- +  * Contact : [[ezimanyi@ulb.ac.be|Esteban Zimanyi]]
- +
-**Deliverables**:​ +
-  ​* Semantics of datalog; overview of known optimization strategies (document) +
-  * Description of the leapfrog trie join (document) +
-  * Datalog system (software artifact) +
-  * Experimental analysis of developped system on a number of use cases (document) +
- +
-\\ +
-**Interested?​** Contact : [[stijn.vansummeren@ulb.ac.be|Stijn Vansummeren]]+
  
 **Status**: available **Status**: available
  
-===== Design and Implementation ​of a Curriculum Revision Tool =====+=====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. ​
  
-Stijn Vansummeren (WIT)Frédéric Robert (BEAMS)+This thesis is about proposing a data model for spatiotemporal regionsand 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. 
  
-This master thesis project concerns the analysis, design, and implementation of a software system that can assist in the revision of teaching curricula (also known as teaching programs). 
  
-The primary targetted functionalities of the software system are as follows:+**Interested?​** 
 +  * Contact ​[[ezimanyi@ulb.ac.be|Esteban Zimanyi]]
  
-  ​It should allow to make different versions of the teaching programs, much in the same way as version control systems like GIT and subversion offer the possibility to make different "​development branches"​ of a program'​s source code. +**Status**: not available
-  ​It should allow an extensible means to check the modified program for inconsistentcies. (For example, if course X has course Y as prerequisite,​ then course Y should not be scheduled in 2nd semester and X in 1st semester. Moreover, the total number of ECTS of all courses should be at most 60 ECTS. ) +
-  ​It should allow to analyze the modifications proposed in the teaching programs, and summarize the impact that these changes could have on other programs. (For example, if a course is removed from the computer science curriculum, it should be flagged that it should also be removed from all curricula that included the course.) +
-  ​It should load data from (and preferably, save data to) the ULB central administration database. +
-  * It should give suggestions concerning the impact of the modifications on the course schedules.+
  
-A proof-of-concept implementation ​of a revision tool that supports ​the first two requirements above is currently being developped in the context ​of a PROJH402 projectThe MFE student that selects this topic is expected ​to+=====Scalable Map-Matching===== 
-  * Develop this prototype ​to a production-ready implementation. +GPS trajectories originate in the form of a series of absolute lat/lon coordinates. Map-matching is the method ​of locating the GPS observations onto road network. It transforms ​the lat/lon pairs into pairs of a road identifier and a fraction representing the relative position on the roadThis preprocessing ​is essential ​to trajectory data analysis. It contributes ​to cleaning the data, as well as preparing it for network-related analysisThere are two modes of map-matching:​ (1) offline, where all the observations of the trajectory exist before starting ​the map-matching,​ and (2) online, where the observation arrive to the map-matcher one by one in a streaming fashion. Map-matching is known to be an expensive pre-processing, in terms of processing time. The growing amount of trajectory data (e.g., autonomous cars) call for map-matching methods that can scale-out. This thesis is about proposing such a solution. It shall survey ​the existing Algorithms, benchmark them, and propose a scale out architecture. ​  
-  * Implement ​the communication with the central ULB database. +
-  * Implement ​the impact analysis concerning ​the course schedules. +
-  * Interact with the administration of the Ecole Polytechnique ​to fine-tune the above requirements;​ test the implementation; ​and integrate remarks after testing+
  
-\\ +MobilityDB has types for lat/lon trajectories,​ as well as map-matched trajectoriesthe implementation of this thesis shall be integrated with MobilityDB
-**Interested?​** Contact : Stijn Vansummeren (stijn.vansummeren@ulb.ac.be), Frédéric Robert <​frrobert@ulb.ac.be>+
  
 +**Interested?​**
 +  * Contact : [[ezimanyi@ulb.ac.be|Esteban Zimanyi]]
  
-**Status?** Already taken +**Status**: ​available
- +
- +
-=====Publishing and Using Spatio-temporal Data on the Semantic Web===== +
- +
- +
-[[http://​www.w3c.org/​|RDF]] is the [[http://​www.w3c.org/​|W3C]] proposed framework for representing information +
-in the Web. Basically, information in RDF is represented as a set of triples of the form (subject,​predicate,​object). ​ RDF syntax is based on directed labeled graphs, where URIs are used as node labels and edge labels. The [[http://​linkeddata.org/​|Linked Open Data]] (LOD) initiative is aimed at extending the Web  by means of publishing various open datasets as RDF,  setting RDF links between data items from different data sources. ​ Many companies ​ and government agencies are moving towards publishing data following the LOD initiative. +
-In order to do this, the original data must be transformed into Linked Open Data. Although most of these data are alphanumerical,​ most of the time they contained ​ a spatial or spatio-temporal component, that must also be transformed. This can be exploited  +
-by application providers, that can build attractive and useful applications,​ in particular, for devices like mobile phones, tablets, etc.  +
- +
-The goals of this thesis are: (1) study the existing proposals for mapping spatio-temporal data into LOD; (2) apply this mapping to a real-world case study (as was the case for the [[http://​www.oscb.be/​|Open Semantic Cloud for Brussels]] project; (3) Based on the produced mapping, and using existing applications like the [[http://​linkedgeodata.org/​|Linked Geo Data project]], build applications that make use of LOD for example, to find out which cultural events are taking place at a given time at a given location. ​   +
-  +
- +
-    * Contact: [[ezimanyi@ulb.ac.be|Esteban Zimányi]] +
- +
-=====Extending SPARQL for Spatio-temporal Data Support===== +
- +
-[[http://​www.w3.org/​TR/​rdf-sparql-query/​|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 ​ [[http://​www.opengeospatial.org/​projects/​groups/​geosparqlswg/​|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.  +
-  +
- +
-   * Contact: [[ezimanyi@ulb.ac.be|Esteban Zimányi]] +
- +
 
teaching/mfe/is.txt · Last modified: 2020/09/29 17:03 by mahmsakr