Skip to main content
In Firebolt, an engine is a compute resource that processes data and serves queries. Engines provide full workload isolation, allowing multiple workloads to run independently while sharing access to the same data. Engines are also decoupled from databases, which means:
  • An engine can connect to multiple databases.
  • A database can be accessed by multiple engines.
The following table outlines the privileges that can be granted for engines within a particular account:
If a user lacks USAGE and OPERATE privileges for an engine, they will not be able to select or interact with the engine via the Firebolt UI.

Examples of granting engine permissions

USAGE permission

The following code example grants the role developer_role permission to use the myEngine engine for executing queries:

OPERATE permission

The following code example gives the role developer_role permission to start and stop the myEngine engine:

MODIFY permission

The following code example grants the role developer_role permission to alter properties or drop the myEngine engine:

MONITOR [USAGE] permission

The following code example grants the role developer_role permission to see the query history and currently running queries for the engine myEngine:

ALL permissions

The following code example grants the role developer_role with all engine permissions on myEngine: