Is Provisa a database, or does it replace my warehouse?
Neither. Provisa is a semantic and governance layer that runs on an engine
you choose — Trino, DuckDB, ClickHouse, Postgres, Snowflake, Databricks,
BigQuery, or the embedded Trino-compatible engine in the box. Your warehouse
becomes a replaceable execution engine rather than the place your semantics
live.
Why that matters
How is this different from Starburst or Denodo?
Starburst is a query engine; Provisa sits above one and can use Starburst as
its engine. Denodo is the closest comparison — same category, different
center of gravity: Provisa adds GraphQL and Cypher as peers to SQL, nine wire
protocols including pgwire and Bolt, engine choice, and a deployment that
starts at one pip install.
Provisa and Starburst
I'm on Hasura v2. Can I migrate?
Yes. Point the converter at your Hasura v2 metadata directory and it emits a
Provisa config: sources, tables, per-role permissions as row-level security,
relationships, remote schemas, actions, event triggers, and cron triggers.
Anything it can't map cleanly is reported as a warning rather than dropped.
The migration path
Can AI agents query my data safely?
An MCP server — stdio and remote Streamable HTTP — exposes governed tables as
tools. The OAuth token maps to a role, so every agent call passes the same six
governance layers as a human query, and traversals are limited to registered
relationships. Agents get no bypass and there's no second policy to keep in
sync.
How governance applies
Does it work in an airgap?
The embedded profile ships the entire runnable system, precompiled UI
included, as a single Python wheel. Regulated orgs already trust
Artifactory-as-PyPI, so there's no Docker registry to mirror, no JVM, and no
root required. Builds are reproducible and hash-pinned.
What happens to my model if I stop using Provisa?
You keep it. Provisa is a handful of primitives — domains, tables,
relationships, masking, views — compiled deterministically. The model is
portable declarative config held in git, and the SQL it compiles is yours to
read and export. The semantics you write don't die with the tool.
Our position on lock-in