Connect Your Snowflake to Abacus.AI

To integrate Snowflake with Abacus.AI, you need to set up the connector and provide the necessary permissions.

Setup Instructions

  1. Gather Required Information: - SNOWFLAKE INSTANCE URL: Click on your account ID, the eight-digit alphanumeric code located at the bottom-left corner of your Snowflake homepage. Then, hover over the resulting pop-up menu to reveal the "copy account URL" button, resembling a paperclip. Your unique URL generally takes this form: https://<domain>.<region>.snowflakecomputing.com, but may include additional components. This full URL is required for the connection. Snowflake Account URL


    - WAREHOUSE: Pick the Snowflake warehouse you wish to connect to. You can find the list of warehouses by using the command SHOW WAREHOUSES in a Snowflake SQL worksheet. The warehouse is the compute resource in Snowflake. Snowflake Warehouse


    - DATABASE: Pick the Snowflake database that houses the data you wish to access. You can find the list of databases by using the command SHOW DATABASES in a Snowflake SQL worksheet. The database is where your data is stored. Snowflake Database


    - ROLE: Pick an existing role, or choose a unique name for the role you'd like Abacus.AI to occupy. Abacus.AI will generate a create statement for you to run if the role doesn't yet exist. The role defines the permissions for accessing data.
    - USER: Pick a unique name for the user to be created specifically for Abacus.AI. "ABACUSAI" is commonly used. This user will be used to connect to Snowflake.

  2. Access Abacus.AI Connected Services Dashboard: - Go to the Abacus.AI Connected Services Dashboard. At the top-right of the page, click "Add New Connector" and select "Snowflake". Snowflake Configuration


  3. Enter Snowflake Details: - Fill the gathered information out into the Snowflake connector window and click Save.

  4. Run Command in Snowflake: - You will get a pop-up with instructions to run a command in Snowflake. This command will create the necessary user and role for Abacus.AI. Snowflake Instructions


    - Note: You need to have sufficient permissions to create and authorize the user and role - e.g., ACCOUNTADMIN.

  5. Replace Schema Name: - Replace the string <Enter schema_name here> in the commands with a schema in your chosen database you wish to allow Abacus.AI to read from.

  6. Execute Command in Snowflake: - Copy the command from the pop-up and paste it in your Snowflake instance. Use the "Run all" button as shown in the image. Snowflake Run All


  7. Verify Connector Setup: - Finally, hit the "Verify Now" button below the instructions. After this point, you will have successfully set up a Snowflake connector.

How to Use the Snowflake Connector

Once the Snowflake connector is set up, you can fetch data to train models in Abacus.AI.

  1. Create a New Project: - Create a new project and select the use case, then go to the "Datasets" tab and click "Create Dataset". Create Dataset


  2. Create New Dataset: - Click on "Create New". Create New Dataset


  3. Name the Dataset: - Name the dataset, select the data type 'List of documents', and click "Continue". Name Dataset


  4. Read from External Service: - Choose "Read from External Service" and select your Snowflake connector under "Connected Application Connectors".

  5. Enter Dataset Details: - Enter the details for the Snowflake dataset you want to use.

  6. Configure Schema Mapping: - After the dataset is uploaded, configure the schema mapping and proceed to train models with the data. Train Model with Data


Troubleshooting and FAQ for the Snowflake Connector

What happens if the underlying Snowflake table changes its schema after I've already created the dataset?

If this happens just go to the relevant dataset's page in Abacus.AI, and select Create New Dataset Version Snowflake

Then, on the resulting screen, you can select the columns that you would like to include. Our system will automatically detect the schema change, and if you use 'SELECT *', any changes to the schema will be reflected in the new dataset version. Snowflake