Metastores

A metastore is the persistence backend that stores and manages catalog metadata. This includes:

  • Polaris entities: catalogs, namespaces, tables, views, principals, roles, etc.
  • Polaris RBAC data: authorization and access control information (when using the built-in authorizer).
  • Polaris policies: policy configurations for data governance and security.

Polaris supports three metastore implementations and persistence backends:

BackendTypeSupport LevelDescription
In-Memoryin-memoryTest onlyData is stored in memory and lost when pods restart. Suitable for development and testing only.
PostgreSQL (JDBC)relational-jdbcReady to useData is stored in a PostgreSQL database using JDBC. Recommended for production.
MongoDB (NoSQL)nosqlExperimentalData is stored in a MongoDB database. Currently in beta.

⚠️ Warning

The default in-memory backend is not suitable for production. Data will be lost when the server restarts!

This section explains how to configure and use Polaris with the following backends: