Pre Installation Requirements
Snowflake Instance Requirements
- Truelty supports the following Snowflake editions:
- Enterprise
- Business Critical
- Virtual Private Snowflake (VPS)
- The user performing the Truelty Snowflake install must have access to the Snowflake AccountAdmin role.
Snowflake Account Setup Requirements
The Snowflake installation for Truelty requires the following:
- The URL to the Snowflake Account Instance where Truelty will be installed
- The Snowflake User running the SQL install scripts must have access to the following base Snowflake roles:
- AccountAdmin
- SecurityAdmin
- Passwords for the two Snowflake users that will be created as part of the install
-
_TRUELTY_UI
- The UI uses this isolated user account to connect to Snowflake
-
_TRUELTY_SVC
- The Python application uses this service user account to connect to Snowflake and do the heavy lifting of the back-end processing.
-
- The Truelty Snowflake and Python setup scripts and python app will either be sent to you from Truelty or to the consultant doing the installation jointly with you.
Truelty Snowflake Install Prep and Overview
There are three setup script files:
-
truelty_setup_1.sql
- Creates and configures the following:
- Users
- Roles
- Warehouse
- Database
- Schemas
- Access and ownership role grants to created objects
- Creates and configures the following:
-
truelty_setup_2.sql
- Creates the following objects in their respective schemas
- Sequencers
- Tables
- Views
- Stored Procedures
- Creates the following objects in their respective schemas
-
truelty_setup_3.sql
- Populates control tables with base data needed to run Truelty
We will run the truelty_setup_1.sql
SQL script first. In this script, we will need to add a few details to the script before we run them.
- Password for the _truelty_svc user
- Password for the _truelty_ui user
- Optionally we can add on or Snowflake admin users to the truelty_svc role.
We recommend you run the truelty_setup_1.sql
Snowflake Setup Script using the Snowflake Classic UI to accommodate the role changes in the scripts currently not supported in SnowSight UI. The other two scripts we will run in the SnowSight UI, as it supports the Snowflake Scripting Stored Procedure creation.
Steps to run the Truelty Install Scripts on Snowflake
Running Setup Script truelty_setup_1.sql
- Open up a new worksheet in the Snowflake Classic UI logged in as a user that has access to AccountAdmin role.
- Copy and paste the entire script from the
truelty_setup_1.sql
file into the new worksheet. - Find the comments in the script indicating where to:
- Replace the text
<add password>
with the password for the_truelty_svc
user. - Replace the text
<add password>
with the password for the_truelty_ui
user. - Recommended, but optional, to add a Snowflake admin user(s) to the truelty_svc role by replacing the text
<ADD USER NAME>
with the name of the Snowflake admin user. -
NOTE: We recommend that the user running the initial setup script add their Snowflake user to have access to the truelty_svc role. This makes running the two additional scripts easier.
- If you choose not to add an admin user to the truelty_svc role, comment out the line of the script.
- If you have chosen not to add an admin user to the truelty_svc role, you will need to log back into Snowflake using the _truelty_svc user to install the last two scripts.
- If you choose not to add an admin user to the truelty_svc role, comment out the line of the script.
- Replace the text
- Run the entire script.
Running Setup Script truelty_setup_2.sql
- Switch from the Snowflake classic UI to Snowsight UI
- Open a new worksheet and copy and paste the entire script from the
truelty_setup_2.sql
file into the worksheet.
- Select the entire script and execute it.
Running Setup Script truelty_setup_3.sql
- Open a new worksheet in Snowsight and copy and paste the entire script from the
truelty_setup_3.sql
file into the worksheet. - Select the entire script and execute it.
Once all three setup scripts have successfully run, you can delete the three worksheets created for the installation.