Robin Moffatt digs into a neat feature in Apache Flink:
Flink added support for what it calls Materialized Tables in 1.20, released in 2024. You can read about the design and motivations in FLIP-435. In a nutshell, Materialized Tables provide a way to include the SQL to populate and refresh a table as part of its definition.
Let’s take a look!
Robin takes a deep dive into it, figures out several issues you might run into along the way, and provides a verdict at the end of the post. In addition, the GitHub repo includes a Docker Compose file you can use to follow along.