CSE 610: Select Topics on Query Optimization (Fall 2026)

Query optimizer is a key component in a Relational DataBase Management System (RDBMS). It converts an unoptimized relational algebra expression into an optimized physical plan with lower cost. However, query optimizer is a hard problem in general cases because of the intractable search space of equivalent plans and difficulty to accurately estimate cardinality and cost. In this course, we will survey the recent literature in optimizer design build your own query optimizer for a simple query execution engine. Given the large design space and the countless related works, you may use Large Language Model based AI software to help you in learning and coding. Prior experience in database system development is preferred but not required, such as CSE 562 or equivalent project experience.

Logistics

Location and Time: Academ 322, Wednesday 12:00 PM to 2:50 PM.
Instructor: Zhuoyue Zhao, zzhao35 [at] buffalo [dot] edu, Davis Hall 338I.
Office hours are on demand. Email me for an appointment.
Textbook: Bailu Ding, Vivek Narasayya, and Surajit Chaudhuri. 2024. Extensible Query Optimizers in Practice. Found. Trends databases 14, 3–4 (Dec 2024), 186–402. https://doi.org/10.1561/1900000077
We'll be using Piazza for discussion and Q&A. Find our class page here.

Course Requirements (Please Read)

Grading

Grading scale: A: >=80, B: >=70+, C: >=60+, D: >=50+, F: <50.

Course Schedule

The following schedule is subject to change due to student add/drop. Please double check the latest schedules when completing your assignments.

Date Topic Required Readings Assignment Due
8/26/2026
9/2/2026
9/9/2026
9/16/2026
9/23/2026
9/30/2026
10/7/2026
10/14/2026
10/21/2026
10/28/2026
11/4/2026
11/11/2026
11/18/2026
11/25/2026
12/2/2026

Academic Integrity Policy

Academic integrity is critical to the learning process. It is your responsibility as a student to complete your work in an honest fashion, upholding the expectations your individual instructors have for you in this regard. The ultimate goal is to ensure that you learn the content in your courses in accordance with UB’s academic integrity principles, regardless of whether instruction is in-person or remote. Thank you for upholding your own personal integrity and ensuring UB’s tradition of academic excellence. You should get familiar with the departmental and the university academic integrity policies and procedures:

In this course, you are allowed to use LLM-based tools to help understanding papers and course materials, preparing reports, and completing the coding project. However, you must review all generated contents and verify they are indeed correct, and, when appropriate, properly give credits to others' work (such as citing an existing paper if you quote their results, giving credit to existing code from existing software, review licensing requirements, etc.). In addition, if you do use LLM tool, you must declare so in your reports and/or source code and describe which part was created using LLM, and how it helped your work. It is against the academic integrity policy if you do not accurately declare use of LLM-based tools, or fail to cite existing works.

Consistent with the CSE Academic Integrity Policy, we have zero tolerance towards academic integrity violations. Any academic integrity violation will result in an F grade for all students involved and will be referred to the Office of Academic Integrity. The only exception when the violation is accidental and does not provide any unfair advantage to any of the students involved, in which case you may receive a reduction in grade in the particular assignment/exam/project.

Accessibility Resources

If you have any disability which requires reasonable accommodations to enable you to participate in this course, please contact the Office of Accessibility Resources in 60 Capen Hall, 716-645-2608. The office will provide you with information and review appropriate arrangements for reasonable accommodations, which can be found on the web at this link. Please also notify the instructor as soon as possible to make reasonable arrangement early.