Databases are built to answer any query.
But we keep asking them the same things.

Databases and warehouses can answer any SQL query you give them, but we often just need the answer to a few queries over and over again.

Traditional Approach

Teams are forced to choose from one of several compromises:

  • Query the DB: Doesn't scale, exposure to overload.
  • Cache: Use stale data, deal with cache invalidation.
  • Denormalize: Maintain complex update logic in code.
  • Stream: Hire a team to handle expensive stream processing.

Materialize Approach

Materialize Approach

Materialize efficiently incrementally maintains complex transformations defined in standard SQL.

  • ANSI SQL: No new languages or advanced concepts
  • Results are always fresh
  • Queries are fast and concurrent
  • Connected to a Mature Ecosystem

How it works?

Manage Materialize using dbt in Three Steps


Write SQL transformations in dbt

Maintain the entire schema of your SQL transformations (sources, views, materialized views) in a dbt project in a git repo.

Write SQL transformations in dbt

Use the dbt CLI to build views in Materialize

Execute `dbt run` from the CLI to build the SQL models and transformations in Materialize once, and to migrate after updates.

Use the dbt CLI to build views in Materialize

Results are automatically kept up-to-date

Materialize automatically updates the results of SQL transformations as source data changes. Results can be queried in SQL or streamed out.

Results are automatically kept up-to-date

Sign Up for Early Access

Register for early access to start building real-time analytics dashboards and live applications.

Join the Materialize Community

Join hundreds of other Materialize users and connect directly with our engineers.

Join the Community

© 2023 Materialize, Inc. Terms of Service