UIC Database Group

Header bar

2026-06-23 - Paid NSF-sponsored research position for Undergraduate students starting in July

As part of an ongoing NSF project, we are looking for a motivated Undergraduate student for a research project starting in July 2026.

Contact

Please contact Boris Glavic directly if you are interested (attach CV and link to github or other programming projects of yours).

Requirements

As this is sponsored through the prestigious NSF research experience for Undergraduates program (REU), the position is only available for US citizens, permanent residents, and US nationals:

Undergraduates (college and university students) pursuing an associate or bachelor’s degree and who are U.S. citizens, permanent residents or U.S. nationals are eligible to apply. Individual REU opportunities may establish additional criteria that further restrict eligibility.

Expected Background

  • Programming experience in one or more low-level languages such as C, C++, Go, or Rust
  • Working knowledge of databases

Available research projects

There are two options for the research project:

Query repair for aggregate constraints

In this work [1][2] in collaboration we have developed a system that repairs queries to fulfill constraints over the whole result of the query by modifying selection predicates in the query. This is useful as queries are often used to select a set of suitable objects / persons from a list of candidates, e.g., which job applicant should be interviewed or which vendor to order a product from. These use cases have in common that the same criteria, the filter conditions of the query, have to be used to judge every candidate. For instance, interview job candidate with a GPA of at least 3.9 and Java skills. The selected set of candidates as a whole typically has to fulfill additional constraints, e.g., budget limits, fairness, or other policies.

In this project you will reimplement and extend the proposed tree data structure for materializing aggregation results and bounding outcomes of queries in a low-level language for efficiency.

Declarative compression of data

In this project you will implement and compare declarative techniques for data compression where a dataset is compressed by decomposing it into multiple tables and pairing it with a query such that evaluating the query on the tables returns the original dataset. Such compression techniques can be used to send data in a distributed environment by sending the query and the decomposed tables to the recipient who then evaluated the query to reconstruct the data. This project builds our recent theoretical results for generating from a query $Q$ and query result $S$ a minimal database $D$ such that $Q(D) = S$ presented at PODS 2025 [3].

  1. Q-ACER: Query Aggregate Constraint Efficient Repair System
    Vaishnavi Deshpande, Seokki Lee, Shatha Algarni, Boris Glavic and Adriane Chapman
    Proceedings of the VLDB Endowment (Demonstration Track). 19, 12 (2026).
    details
  2. Smallest Synthetic Witnesses for Conjunctive Queries
    Aryan Esmailpourlialestani, Boris Glavic, Xiao Hu and Stavros Sintos
    PODS. 3, 2 (2025) , 113:1–113:25.
    details
  3. Efficient Query Repair for Aggregate Constraints
    Shatha Algarni, Boris Glavic, Seokki Lee and Adriane Chapman
    Proceedings of the VLDB Endowment. 19, 2 (2025) , 252–264.
    details