Set up RelationalAI in Snowflake
RelationalAI (RAI) runs inside your Snowflake account as a native app, so your data never leaves your account. This guide takes a Snowflake administrator through the first-time setup: request access to the RAI native app, install and activate the app, grant user access, and hand off connection details to developers.
- Estimated setup time
- 20–30 minutes
- Prerequisites
- A Snowflake account and the
ORGADMINorACCOUNTADMINrole. - A query warehouse for developers. An
X-SMALLsize is fine. Create one if you don’t already have it.
- A Snowflake account and the
Review installation impact
Section titled “Review installation impact”Before you request access, review the privileges the app requires, the resources it creates, and its impact on your Snowflake costs.
What access does the app receive?
Snowflake grants these privileges when you install the app. You cannot revoke them while the app is installed.
- Privileges:
Run automated data workflows.
EXECUTE TASK·EXECUTE MANAGED TASK - Privileges:
Create and manage the app’s dedicated warehouse.
- Privileges:
Create compute pools for RAI workloads.
- Privileges:
Expose a secure endpoint for authenticated client connections.
This privilege is not included at installation. Grant it only if you use a feature that integrates with Snowflake Cortex.
- Privileges:
Enable Snowflake Cortex integrations.
- Data: Installation does not grant blanket access to existing tables or views. You configure data sources separately, and Snowflake checks object-level privileges when they are accessed through RAI.
- Users: You choose who can use the app by granting RAI application roles to Snowflake account roles.
- Connections: The service endpoint accepts authenticated client connections. Connected users still need the required RAI roles and Snowflake grants. External clients use the public internet unless Private Link is configured.
Check row access and masking policies before sharing sensitive data. RAI evaluates these policies against a shared RELATIONALAI role, not each user’s configured role. Review how Snowflake access control is handled.
What resources and costs should I expect?
RAI costs depend on how much storage and compute you use. Snowflake charges for both. RelationalAI adds a surcharge only to compute used by reasoners.
The sections below show what the app creates and when each resource can incur charges. Review the cost model with whoever approves Snowflake spend before you install.
For more, see Understand and optimize costs.
Installation creates the application database. You then activate the app to start its services and managed compute. Activating the app adds the service, warehouse, and compute pools that run it.
- Application databaseResources:
Snowflake creates this application object during installation, and it remains when you deactivate the app. Snowflake charges a small amount to store it, and RelationalAI adds no surcharge.
RELATIONALAI - Snowflake virtual warehouseResources:
Activating the app creates this virtual warehouse for Snowflake operations. Snowflake charges for compute while the warehouse runs. RelationalAI doesn’t add a surcharge.
RELATIONAL_AI_ERP_WAREHOUSEX-SMALL - Compute pools for app operationsResources:
Activating the app creates these compute pools to support its core operations. The pool objects don’t incur charges. Snowflake charges for compute running in them. RelationalAI doesn’t add a surcharge.
RELATIONAL_AI_ERP_COMPUTE_POOLCPU_X64_XS· AWS and AzureRELATIONAL_AI_COMPILE_CACHE_SPCSHIGHMEM_X64_M· AWS and Azure - App service in Snowpark Container Services
Activating the app creates a managed service in Snowpark Container Services to run RelationalAI inside your Snowflake account. Its usage is included in the app’s compute pool charges. RelationalAI doesn’t add a surcharge.
Reasoners run logic, prediction, and optimization workloads. Activating the app creates the compute pools they can use. Available sizes differ between AWS and Azure.
- Standard compute for reasonersResources:
Runs logic, prediction, and optimization workloads. Snowflake charges for compute while reasoners run and for any reserved nodes. RelationalAI adds a surcharge only while reasoners run.
RELATIONAL_AI_HIGHMEM_X64_SAWS and Azure
RELATIONAL_AI_HIGHMEM_X64_MAWS and Azure
- High-memory compute by cloudResources:
Provides larger high-memory options where each cloud supports them. Larger sizes cost more per hour. Snowflake charges while reasoners run and for any reserved nodes. RelationalAI adds a surcharge only while reasoners run.
RELATIONAL_AI_HIGHMEM_X64_LLogic and prediction workloads · AWS only
RELATIONAL_AI_HIGHMEM_X64_SLLogic workloads · Azure only
- Compute with GPUs for prediction workloadsResources:
Runs prediction workloads on GPU instances. Snowflake charges for compute while reasoners run and for any reserved nodes. RelationalAI adds a surcharge only while reasoners run.
RELATIONAL_AI_GPU_NV_SAWS only
RELATIONAL_AI_GPU_NV_SMAzure only
- CPU pools for future useResources:
Current workloads don’t use these pools. The pool objects don’t incur charges. Snowflake charges only if you reserve nodes. RelationalAI doesn’t add a surcharge while the pools are unused.
RELATIONAL_AI_CPU_X64_SAWS and Azure
RELATIONAL_AI_CPU_X64_MAWS and Azure
- Installation: Creates the application database. Snowflake charges a small amount to store it.
- Activation: Adds the other resources listed here and starts the app’s managed compute. Snowflake can begin charging for compute.
- Idle compute pools: A pool with no reserved nodes and no running reasoners doesn’t incur compute charges.
- Deactivation: Deactivating the app suspends the app service, warehouse, and compute pools, reducing most compute charges. The application database continues to incur storage charges, and some background tasks may continue to use a small amount of compute.
For the complete resource inventory and commands to inspect each resource, see Resources the app creates.
Request app access
Section titled “Request app access”RAI is available on the Snowflake Marketplace, but you must request access before you can install and activate it:
-
Sign in to Snowsight as an
ORGADMINorACCOUNTADMIN. -
Open the RelationalAI Marketplace listing. Click the Get button then fill out and submit the access request form.
-
Wait for RelationalAI to enable access. A representative notifies you when the app is available to install.
Install and activate the app
Section titled “Install and activate the app”Once access to the app is enabled, follow these steps to install the app in your Snowflake account:
-
In Snowsight, go to Catalog > Apps. RelationalAI appears under Recently shared with you.
-
Click Buy, review the pricing dialog, and confirm. The app installs into your account as the
RELATIONALAIapplication database. -
Wait for the INSTALLED column to show that installation finished.
-
Run the following SQL as
ACCOUNTADMINin a new worksheet:-- Check you're an admin who can install apps and grant-- account privileges, and that the RELATIONALAI app exists.USE ROLE ACCOUNTADMIN;SHOW APPLICATIONS LIKE 'RELATIONALAI';-- Start the app. The first activation sets up compute and-- can take a few minutes.CALL RELATIONALAI.APP.ACTIVATE();-- Check the services. Wait a few minutes and rerun this line-- until every service shows READY.CALL RELATIONALAI.APP.SERVICE_STATUS();-- Turn on change data capture (CDC), then confirm it's on.CALL RELATIONALAI.APP.RESUME_CDC();CALL RELATIONALAI.APP.CDC_STATUS();
Grant user access
Section titled “Grant user access”You’ll grant users access in two steps:
- Use the form below to generate SQL for the users you specify, then run it in Snowflake. The SQL grants them access to the RAI Native App and its service endpoint.
- Create an invite link for each user you granted access to. Each link opens the Start building with PyRel guide with that user’s connection values pre-filled. Users can copy the values into their project configuration. Invite links contain no secrets, so you can share them safely. Deliver any required secrets separately and securely.
Paste the public key this developer sent you. The setup SQL registers it so they can connect.
Change this only to use a custom database or schema for this user's PyRel outputs. Give each user a dedicated schema.
Stores information PyRel uses to manage and update the deployed model. By default, PyRel names the metadata schema by appending _META to the deployment schema.
Shut down the app (Optional)
Section titled “Shut down the app (Optional)”If you set up the app only to evaluate it and no longer need it running, stop it to reduce ongoing Snowflake compute costs.
Run this SQL as ACCOUNTADMIN:
CALL RELATIONALAI.APP.DEACTIVATE();APP.DEACTIVATE() suspends the app service, warehouse, compute pools, and CDC.
It also deletes reasoners and cancels in-progress jobs.
Where to go next
Section titled “Where to go next”After setup, use these guides to operate the RAI Native App and its resources: