Research           Publications           Teaching           Students           Contact Info

I do both systems and theoretical research in data management and processing. My current systems research focuses on Graphflow, which is a new graph database we are building from scratch. The main goal of Graphflow is to integrate active features, such as triggers and constraints, that exist in relational databases into graph databases. If you are interested in using Graphflow for your application and project, please contact me diretly or our team at graphflow [at] uwaterloo [dot] ca. We greatly appreciate and welcome contributions to the project.

My theoretical research focuses on understanding the computational complexities of distributed algorithms that evaluate database queries. Many of the existing modern distributed systems are based on the BSP model of computation. Parallel algorithms running on these systems use three main resources: (1) number of rounds, i.e., synchronizations; (2) communication; and (3) memory, i.e., space. My work focuses on understanding the relationship between these three parameters and designing algorithms (specifically query processing algorithms) that are optimal in terms of one or more of these three resources.




CS 341: Algorithms (Summer 2016, Winter 2017, Winter 2018)

CS 848/858: Modern Data Processing Systems (Fall 2016)

Contact Info

Office: DC 3351

Email: myfirstname.mylastname(at)

Curriculum vitae