Frequently asked questions

Syncing

Why isn't a new schema or table isn't showing up?

Metaplane syncs your warehouse schema every hour, so it could be that the hourly sync hasn't occurred yet. You can manually sync the source on the Connections page.

Another common scenario is that Metaplane doesn't have the proper permissions to a new schema or table. Check out the source-specific instructions on the sidebar to grant those permissions.

Why did Metaplane say that a table was deleted, when I know that it exists?

The likely problem is that Metaplane lost permissions to that table, which can occur when the table is dropped and recreated.

For Snowflake, when other roles have future grants on schemas, tables in those schemas may not appear in Metaplane because schema-level grants take precedence in Snowflake:

When future grants are defined at both the database and schema level, the schema level grants take precedence over the database level grants, and the database level grants are ignored.
In that scenario, make sure that Metaplane has schema-level grants. See our Snowflake docs for more details.


Testing

Can I programmatically create tests?

Programmatically creating tests through an API or via YAML committed within your GitHub/Gitlab repo is on the roadmap. Get in touch with our team at [email protected] or in a dedicated Slack channel and we can keep you posted.

Can I monitor only the "diff" of data to avoid table scans?

Currently you can do this via Custom SQL tests, though we're working on a way to support this in our out-of-the-box tests.

How many resources does Metaplane consume?

We try to use metadata from INFORMATION_SCHEMA as much as possible, for example to inform row count, freshness, and schema tests for Snowflake and BigQuery. As a result, the majority of tests incur almost no cost. For other tests that require table scans, we try to parallelize queries and execute them in as short of an amount of time as possible. Most customers, even those with thousands of tests over tables with 10B+ rows, have only a few minutes of usage at the top of every hour.


Alerting

Metaplane sent an alert on a transient blip, for example a drop in row count that returned to normal. Why did it do that and how can I prevent it from happening again?

If your queries drop and recreate tables and are not wrapped in a transaction block, it is possible that Metaplane caught your data in an intermediate state. For the usual row or column count tests, if there’s an anomalous drop, we retry a couple of times to avoid “blips."

Can I send different alerts to different channels?

Currently you cannot send alerts to different channels, though it's on the product roadmap. Get in touch with our team at [email protected] or in a dedicated Slack channel and we can keep you posted.


Schema change

How do I ignore a group of schemas or tables in the schema change alerts?

You can apply fine-grained configuration to whitelist or ignore entities in the Schema page. Check out Configuring schema change for more information.


Organization

Can I invite a colleague to join my Metaplane organization?

By default, anyone with your domain will join your organization. So you can just share a link from Metaplane and they can use Google or e-mail auth to collaborate with you.

How can I restrict who from my domain can access my Metaplane organization?

Get in touch with the team at [email protected] or message us in your shared Slack channel, we will enable whitelisting by e-mail address for you.


Security

What kind of data do you store?

Metaplane does not retrieve or store sensitive customer data (e.g. PII), only aggregate statistics and metadata needed for your tests.

How do you manage credentials?

Database credentials and SSH keys are encrypted (AES-256) and stored in AWS Parameter Store. Ephemeral access to those credentials are only permitted at run-time from machines using regularly rotated keys managed by AWS, and encrypted in transit (TLS v1.2+).


Billing

How will I be billed for my Metaplane subscription?

An invoice will be sent to the e-mail associated with your account via Stripe, to be paid via Credit Card, Wire Transfer, or ACH. Payments will be automated after successfully completing the first payment.