FlowLog Logo

FlowLog

A Datalog engine powered by Differential Dataflow. You write Datalog queries in Soufflé and FlowLog efficiently maintains the query results incrementally.

News: FlowLog has been accepted to VLDB 2026. Read it now.

Key Features

Soufflé Compatible

Write Datalog in the established Soufflé syntax

Robustness First

Configure worst-case optimal query plans against data drift at runtime

Dual Modes

Optimize under both batch and incremental execution modes

Efficiency

Scale-(up and out) efficiently compared to other SOTA Datalog engines

Extensibility

Easy to extend to any relational programs in operational semantics

Outlook

Many novel functionalities and optimizations left on the table

Publications

FlowLog: Efficient and Extensible Datalog via Incrementality

H. Zhao, Z. Yu, S. Rao, S. Frisk, Z. Fan, P. Koutris
VLDB 2026

Evaluating Datalog over Semirings: A Grounding-based Approach

H. Zhao, S. Deep, P. Koutris, S. Roy, V. Tannen
PODS 2024

Evaluating Datalog via Structure-Aware Rewriting

H. Zhao, S. Deep, P. Koutris
Datalog 2.0 2024

Predicate Transfer: Efficient Pre-Filtering on Multi-Join Queries

Y. Yang, H. Zhao, X. Yu, P. Koutris
CIDR 2024

Getting Involved

FlowLog is open-source on github flowlog-rs under active development. If you're interested in discussing (FlowLog) query optimizations, email at hangdong@cs.wisc.edu.