Skip to main content

Overview

Omni has native integrations with the most popular data warehouses. Once connected to your data, our intelligent cache delivers results fast — without limiting how deeply you can explore.

Each database has different ways of getting set up so you can find more details under your specific dialect, but at a high level, you need to:

  1. Create an Omni Database User
  2. Add the database to Omni
  3. Establish settings
  4. Set Base Access and Connection Roles

Creating an Omni Database User

First we need to create a database user to give Omni permissions to query the data warehouse. Check out the Security section for information about using Omni with an IP allow list on your data warehouse.

Adding the database to Omni

We need to add the database credentials to the Omni application. Navigate to the settings page, select "Connections" and click the "Add Connection" button:

Then choose what dialect you want to add.

Database Settings

Each dialect has a slightly different configuration, but in general each will ask you to set:

  • Display Name is how the connection name will appear in Omni, and can be changed later.
  • Database Details will be information from your data warehouse.

Schema Restriction

  • Include Schemas will restrict the schemas pulled into Omni, and multiple can be included delimited by commas. This can significantly improve performance by reducing model size. If left blank, Omni will model all schemas.

Scheduling Schema Refresh

After establishing a database connection, Admin can use a cron string to schedule a soft refresh of the schema which merges the newly generated schema with the existing one without overwriting it.

This could be used if you know your ETL runs once a day, you could set the schema to refresh immediately after that time to ensure the data is always up to date.

This could also be done using an API read more here.

Permissions

The second tab on your Connections page is for managing permissions.

First establish a Base Access at the individual connection then more fine-tuned permissions can be assigned to individual users or groups within the organization throught Connection Roles.

Read more about the types of configurations here.

Environmnents

Connection environments let you switch what connection you are querying against while in an Omni branch. For example you can switch between your production and development connections.

dbt

If you're organizaiton leverages dbt, this will be where you manage that connection. Read more about our dbt integration here.

Archiving databases

If you want to delete a database connection, navigate to the Connections page > Select the database you'd like to delete and the > Select Archive This will move the connection to the trash and will also move any associated models and content to the trash. Sensitive information, such as passwords and keys, will be fully deleted.