System catalog

Materialize exposes a system catalog that contains metadata about the running Materialize instance.

The system catalog consists of four schemas that are implicitly available in all databases. These schemas contain sources, tables, and views that expose different types of metadata.

  • mz_catalog, which exposes metadata in Materialize’s native format.

  • pg_catalog, which presents the data in mz_catalog in the format used by PostgreSQL.

  • information_schema, which presents the data in mz_catalog in the format used by the SQL standard’s information_schema.

  • mz_internal, which exposes internal metadata about Materialize in an unstable format that is likely to change.

These schemas contain sources, tables, and views that expose metadata like:

  • Descriptions of each database, schema, source, table, view, sink, and index in the system.

  • Descriptions of all running dataflows.

  • Metrics about dataflow execution.

Whenever possible, applications should prefer to query mz_catalog over pg_catalog. The mapping between Materialize concepts and PostgreSQL concepts is not one-to-one, and so the data in pg_catalog cannot accurately represent the particulars of Materialize.

Back to top ↑