Skip to content
Home

BarzanMozafari

How can AI systems verify and improve their own work?

Portrait of Barzan Mozafari
Associate Professor of Computer Science and EngineeringUniversity of Michigan, Ann Arbor

Self-Verifying AI and Self-Improving Data Systems

I build systems that verify and improve their own work—from AI applications to data platforms and cloud infrastructure.

Professor · AI Systems Researcher · Entrepreneur

Current Research

My current research explores how AI and data systems can verify, improve, and optimize their own work.

Current project

Self-Improving Data Systems

AI, database learning, and workload feedback for improving queries and data pipelines while preserving semantics and operational constraints.

GenRewrite

Uses large language models and counterexample-guided validation to rewrite SQL queries while preserving semantics.

DAGSmith

Uses pipeline dependencies as optimization signals and separates rewrite generation from equivalence checking.

Explore the project

Current project

Cloud Optimization & FinOps

Workload-aware methods for improving performance, resource efficiency, and cost across cloud data warehouses and infrastructure.

Keebo

Autonomously optimizes cloud data-warehouse performance and cost in production.

Explore the project

Writing

Technical perspectives on reliable AI, data systems, and optimization.

Why Slower SQL Can Make Your dbt Pipeline Faster

Modern analytics is increasingly organized as recurring SQL pipelines rather than isolated SQL statements. Tools like dbt have gained extreme popularity in recent years, allowing teams to write each transformation as SQL and make dependencies between transformations explicit. This has led to directed acyclic graphs (DAGs) with hundreds or thousands of interdependent SQL models. Traditional query optimizers and source-to-source query rewriters are not effective at optimizing these expensive pipelines. In this post, we explore how DAGSmith treats these explicit dependencies as optimization signals and uses an LLM to find pipeline-level refactorings and optimize a dbt project holistically.

Read article →
View all blog posts

Selected Earlier Work

Research Impact

Transaction schedulers adopted by MySQL and MariaDB

Our CATS algorithm has become the default transaction scheduler in MySQL and Percona Server for MySQL, estimated to be running on hundreds of millions of deployments worldwide. Our earlier VATS algorithm was also adopted as the default transaction scheduler in older versions of MariaDB.