Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.equals.com/llms.txt

Use this file to discover all available pages before exploring further.

Equals now has the ability to write “views” into your own BigQuery or Snowflake warehouse. This works by creating a new schema/dataset within your warehouse named “equals_views”, and then writing view tables there on a schedule (every 6 hours), or when you manually refresh the view table. You can configure these on the datasource connection page within Equals.

BigQuery

For BigQuery, you will need to set up a couple of things:
  1. A service account set up for Equals to use to write data. This should be in addition to the scopes needed to query (per https://docs.equals.com/docs/bigquery-connection-guide#using-predefined-roles).
  2. Create a dataset in BigQuery called “equals_views”. Go into that, click “share” and assign the “BigQuery Data Owner” role to just this dataset.
OR if you want some more specific permissions: Grant the service account “BigQuery User” role for the project. This allows Equals to create the dataset and grants extra permissions to tables created that way (but not existing tables).
  1. Once that is done, you will need to create the Private Key per https://docs.equals.com/docs/bigquery-connection-guide#create-private-key and upload to the new section in the datasource configuration in Equals (for a service account).
  2. Ensure your existing read connection user has the appropriate permissions to query this dataset/tables.

Snowflake

You will need a separate user role for a service account within Equals. This role should have permissions like so:
  1. Create a role in Snowflake with the permissions Equals needs to write data
GRANT USAGE ON DATABASE my\_db TO ROLE my\_role;

-- creating the schema; you can leave this off if you create the schema yourself:

GRANT CREATE SCHEMA ON DATABASE my\_db TO ROLE my\_role;

-- creating tables:

GRANT USAGE ON SCHEMA my\_db.equals\_views TO ROLE my\_role;

GRANT CREATE TABLE ON SCHEMA my\_db.my\_schema TO ROLE my\_role;

-- For writing data to the table views we create:

GRANT INSERT, UPDATE, DELETE ON ALL TABLES IN SCHEMA my\_db.equals\_views TO ROLE my\_role;

GRANT INSERT, UPDATE, DELETE ON FUTURE TABLES IN SCHEMA my\_db.equals\_views TO ROLE my\_role;
  1. Assign that role to a user you will use in Equals.
  2. Create a private key for that user, and upload into your datasource configuration within Equals (under service account).
  3. Ensure your existing read connection user has the appropriate permissions to query this schema/tables.