Deep-diveTemporal Filters: Enabling Windowed Queries in Materialize

Materialize provides a SQL interface to work with continually changing data. You write SQL queries as if against static data, and then as your data change we keep the results of your queries automatically up to date, in milliseconds. Materialize leans hard into the ideal that SQL is what you know best, and what you […]

Deep-diveA Simple and Efficient Real Time Application Powered by Materialize’s TAIL Command

Within the web development community, there has been a clear shift towards frameworks that implement incremental view maintenance and for good reason. When state is updated incrementally, applications perform better and require fewer resources. Using Materialize, developers and data analysts can adopt the same, event driven techniques in their data processing pipelines, leveraging existing SQL […]

Deep-diveSlicing up Temporal Aggregates in Materialize

Materialize computes and maintains SQL queries as your underlying data change. This makes it especially well-suited to tracking the current state of various SQL queries and aggregates! But, what if you want to root around in the past? Maybe you want to compare today’s numbers to yesterday‘s numbers. Maybe you want to scrub through the […]

Deep-diveLife in Differential Dataflow

I’ve been working at Materialize for almost a year now, and I have really enjoyed learning about and using Differential Dataflow (hereafter just Differential) in my day-to-day work. In this post, I’ll introduce Differential and talk through implementing a few common programming problems like list intersection and everyone’s favorite, FizzBuzz, as dataflow programs. Finally, I’ll […]

NewsRelease: 0.6

Materialize 0.6 makes it easier to consume streams and build streaming applications. We’ve also made a number of changes that improve our SQL compatibility. Here’s more details on some noteworthy features we’ve added in this release: What’s changed in Materialize 0.6 Easily listen to streaming changes TAIL is a Materialize-specific command we recently introduced to […]

Deep-diveJoins in Materialize

This post is also available at my personal blog. Materialize allows you to maintain declarative, relational SQL queries over continually changing data. One of the most powerful features of SQL queries are joins: the ability to correlate records from multiple collections of data. Joins also happen to be one of the harder things to do […]

StreamingKafka is not a Database

This post is co-authored by George Fraser, the CEO of Fivetran, and Arjun Narayan, the CEO of Materialize. This blog post is cross-posted on the Fivetran blog. It’s important to understand the uses and abuses of streaming infrastructure. Apache Kafka is a message broker that has rapidly grown in popularity in the last few years. […]

Use CaseLive Maintained Views on Boston Transit to Run at Home

Materialize can be used to quickly build scalable backends for real-time apps! In this blog post, we describe two apps that you can try out at home that run on actual, live data!

NewsMaterialize Raises a Series B

Today we announced that we raised a $32M Series B round of funding led by Kleiner Perkins. This follows a $8.5m Series A last year led by Lightspeed Venture Partners, bringing our total funding to-date to a little over $40 million. With our Series B, Bucky Moore joins Ravi Mhatre on our board of directors. […]

NewsRelease: Materialize 0.5

We recently released Materialize 0.5!  Here’s what’s new and improved. What’s changed in Materialize 0.5 Version 0.5 includes a number of improvements to help run Materialize in production and connect it to other systems. These include improved Postgres compatibility and beta releases of source caching and tables. As more customers bring Materialize to production, we […]

About This Blog

Welcome! On our blog, you’ll hear more about the inner workings of Materialize – what we’ve built, what we plan to build, and how it all works together.

New here? Read these