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 [2018/04/23 09:54]
svsummer [Master Thesis in Collaboration with Euranova]
teaching:mfe:is [2019/02/12 18:58]
ezimanyi [Interactive maps of the ULB campuses]
Line 1: Line 1:
-====== MFE 2017-2018 : Web and Information Systems ======+====== MFE 2018-2019 : Web and Information Systems ======
  
 ===== Introduction ===== ===== Introduction =====
Line 25: Line 25:
   * Contact : [[ezimanyi@ulb.ac.be|Esteban Zimanyi]]   * Contact : [[ezimanyi@ulb.ac.be|Esteban Zimanyi]]
  
-** 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 Query Processing ​on GPU Accelerators =====
-   ​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 +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.
-   ​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 +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.
-   ​should be done on two levels: +
-  - a theoretical level; by proposing and discussing alternative ​ways +
-    to do incremental computation on GPU architecturesand 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/​compilerand 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?​* +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.
-   - Contact :  [[svsummer@ulb.ac.be][Stijn Vansummeren]]+
  
-   ​*Status*:​ available+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.
  
  
-** Complex Event Processing in Apache Spark and Apache Storm+**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.
  
-  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. 
  
-  Within this project, our lab is developping a declarative language +**Deliverables** of the master thesis ​project 
-  ​for Complex Event Processing (CEP for short). The goal in Complex +  ​* An overview of query processing on GPUs 
-  ​Event Processing is to derive pre-defined patterns in a stream ​of +  ​* A definition ​of the analytics queries under consideration 
-  ​raw events. Raw events are typically sensor readings (such as +  ​* A description of different possible dynamic evaluation algorithms ​for the analytical queries ​on GPU architectures. 
-  "​password incorrect ​for user X trying to log in on machine Y" or +  ​* A theoretical comparison ​of these possibilities 
-  ​"file transfer from machine X to machine Y"). The goal of CEP is +  ​* The implementaiton of the evaluation algorithm(s) (as an interpreter/​compiler) 
-  then to correlate ​these events into complex events. For example, +  ​* A benchmark set of queries and associated data sets for the experimental validation 
-  ​repeated failed login attempts by X to Y should trigger a complex +  ​* An experimental validation of the compiler, and analysis of the results.
-  ​event "​password cracking warning"​ that refers to all failed login +
-  ​attempts.+
  
-  The objective of this master thesis is to build an 
-  interpreter/​compiler for this declarative CEP language that targets 
-  the distributed computing frameworks Apache Spark and/or Apache 
-  Storm as backends. ​ Getting aquaintend with these technologies is 
-  part of the master thesis objective. 
  
-  ​*Validation of the approachValidation of the proposed +**Interested?​** Contact ​:  ​[[svsummer@ulb.ac.be|Stijn Vansummeren]]
-  interpreter/​compiler should be done on two levels: +
-  - a theoretical level; by comparing the generated Spark/​Storm +
-    processors to a processor based on "​Incremental computation"​ that +
-    is being developped at the lab +
-  - an experimental level; by proposing a benchmark +
-    collection of CEP queries that can be used to test the obtained +
-    interpreter/​compiler,​ and report on the experimentally observed +
-    performance on this benchmark. +
-    +
-  *Deliverables* of the master thesis project +
-   - An overview of the processing models of Spark and Storm +
-   - A definition of the declarative CEP language under consideration +
-   - A description of the interpretation/​compilation algorithm +
-   - A theoretical comparison of this algorithm wrt an incremental +
-     ​evaluation algorithm. +
-   - The interpreter/​compiler itself (software artifact) +
-   - A benchmark set of CEP queries and associated data sets for +
-     the experimental validation +
-   - An experimental validation of the compiler, and analysis of the results.+
  
-   ​*Interested?​* 
-   - Contact :  [[svsummer@ulb.ac.be][Stijn Vansummeren]] 
  
-   *Status*: available+**Status**: available
  
-** Graph Indexing ​ for Fast Subgraph Isomorphism Testing +===== Multi-query Optimization ​in Spark =====
-    +
-   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 +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. Howeverit is up to the developers to decide on what to share.
-   ​validate ​on real-world datasets ​the extent to which graphs ​can be +
-   ​decomposed into graphs ​for which subgraph isomorphism is +
-   ​tractableand run experiments ​to validate ​the effectiveness of +
-   the proposed method in terms of filtering power.+
  
-   ​*Interested?​* +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.
-   - Contact :  [[svsummer@ulb.ac.be][Stijn Vansummeren]]+
  
-   *Status*: available+**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 :  [[ielghand@ulb.ac.be.ac.be|Iman Elghandour]] or [[svsummer@ulb.ac.be|Stijn Vansummeren]] 
 + 
 +**Status**: available 
 + 
 +===== Accelerated Distributed Platform for Spatial Queries ===== 
 + 
 +It is now common to query terabytes of spatial data. Several new frameworks extend distributed computing platforms such as Hadoop and Spark to enable them to efficiently process spatial queries by providing (1) mechanisms to efficiently store spatial data and index them ; and (2) packages of built in spatial operations for these platforms. Meanwhile, it is now common to accelerate Hadoop and Spark using accelerators such as GPUs and FPGAs. 
 + 
 +The objective of this master thesis is to build a framework that efficiently executes spatial queries on a Spark version that is enabled to run its tasks on GPUs. 
 + 
 +**Deliverables** of the master thesis project 
 +  * An overview of Spatial queries and frameworks for processing big spatial data. 
 +  * A study of best approaches to represent spatial data while it is queried by Spark and GPUs. 
 +  * An implementation of common spatial operations and computational geometry algorithm on GPUs and Spark. 
 +  * An experimental validation of the developed system. 
 + 
 +**Interested?​** Contact : [[ielghand@ulb.ac.be.ac.be|Iman Elghandour]] or [[svsummer@ulb.ac.be|Stijn Vansummeren]] 
 + 
 + 
 +**Status**: available 
 + 
 +===== Co-locating Big Spatial Data Stored in HDFS ===== 
 + 
 +Spatial databases employ spatial indexes to speedup the access of spatial data. New frameworks are introduced to build such indexes for Hadoop and Spark. However, there are not fully integrated on the file system level. 
 + 
 +The objective of this master thesis is to build these indexes within the layer of HDFS and use this implementation to co-locate files that are typically accessed together by the spatial queries. 
 + 
 +**Deliverables** of the master thesis project 
 +  * An overview of spatial queries and frameworks for processing big spatial data. 
 +  * A study of different types of indexes how they can be built in HDFS, and how we can use the replicas of HDFS to store multiple types of indexes 
 +  * An implementation of spatial indexes in HDFS. 
 +  * An experimental validation of the developed system. 
 + 
 +**Interested?​** * Contact : [[ielghand@ulb.ac.be.ac.be|Iman Elghandour]] or [[svsummer@ulb.ac.be|Stijn Vansummeren]] 
 + 
 + 
 +**Status**: available
  
  
Line 259: Line 213:
  
 **Status**: available **Status**: available
- 
  
 
teaching/mfe/is.txt · Last modified: 2020/09/29 17:03 by mahmsakr