Snowflake Connected System

Snowflake is an analytic data warehouse that is fast, easy to use, and pliable. We have built the Snowflake Connected system to employ these benefits in Appian. You can use this connected system to create an integration object that can help perform SELECT, INSERT, UPDATE, DELETE, DROP, TRUNCATE and CREATE SQL operations in the Snowflake Database tables or views on providing Query, Warehouse, Database and Schema details.

To establish the connection, while creating a connected system you will need:

  • Account Name: Full name of your account (provided by Snowflake). Note that your full account name might include additional segments that identify the region and cloud platform where your account is hosted. ex: <account>.snowflakecomputing.com
  • Role: Default access control role to use in the Snowflake session. The specified role should be an existing role that has already been assigned to the specified user. If the specified role has not already been assigned to the user, the role is not used when the session. ex: ACCOUNTADMIN, SECURITYADMIN, SYSADMIN, PUBLIC. (Only provide single role)
  • User: Login name of the user for the connection
  • Password: Password of the account

Features and Functionality:

  • Queried data from Snowflake will be returned in the integration as Dictionary format
  • Added Warehouse, DB and Schema as the optional parameters
  • The result will contain the total number of rows returned from Snowflake
  • The result will contain the column metadata
Anonymous
Parents
  • Hello AN Global,

    I have installed the connected system plugin, but am having trouble connecting to Snowflake. My questions are:

    1. Are we using the right type of value in the Account Name field? 
    2. Is there a place to define the Snowflake warehouse and database to be used, or should this just be defined in the integration query? 
    3. Do we need to have a JDBC driver for Snowflake installed in our cloud environment?

     We tried the following: 

    Account Name field in Connected System object: 

    - cr.us-east-1.snowflakecomputing.com, 

    - cr,  

    - cr.us-east-1, 

    - jdbc:snowflake://cr.us-east-1.snowflakecomputing.com/warehouse=LOAD_WH,

    - jdbc:snowflake://cr.us-east-1.snowflakecomputing.com/?warehouse=LOAD_WH,

    - jdbc:snowflake://cr.us-east-1.snowflakecomputing.com/?db=DEV-RTI-STAGE&warehouse=LOAD_WH&schema=PRODUCTS

    Queries executed in Integration: 

    - "USE warehouse DEMO_WH; use database SNOWFLAKE_SAMPLE_DATA; Select * from TPCDS_SF100TCL.CALL_CENTER"

    -” Use database SNOWFLAKE_SAMPLE_DATA; Select * from TPCDS_SF100TCL.CALL_CENTER"

    - "Select * from SNOWFLAKE_SAMPLE_DATA.TPCDS_SF100TCL.CALL_CENTER"

    When we used the non JDBC links, we get the following error: error-result-label

    Expression evaluation error : “com.appiancorp.connectedsystems.templateframework.functions.pipeline.proxyDecoratorPipeline.TemplateInvocationException: Contact the developer of this template to resolve the following issue. java.lang.NoClassDefFoundError: Could not initialize class net.snowflake.client.core.SFTrustManager”

    When we use the JDBC Links, we get the follow the following error, and a dictionary with blank message and details: “error-result-label

    Snowflake returns the following exception:

    error-result-guidance

    No message provided”

    In both cases, no values were present under the Request tab of the Integration editor.  

    The roles and login specified in the Connected System do have the access necessary for the queries in the integration.

     Are we using the right type of value in the Account Name field? Is there a place to define the Snowflake warehouse, or should this just be defined in the integration query? Do we need to have a driver for Snowflake installed in our cloud environment?

    Any help would be greatly appreciated!

Comment
  • Hello AN Global,

    I have installed the connected system plugin, but am having trouble connecting to Snowflake. My questions are:

    1. Are we using the right type of value in the Account Name field? 
    2. Is there a place to define the Snowflake warehouse and database to be used, or should this just be defined in the integration query? 
    3. Do we need to have a JDBC driver for Snowflake installed in our cloud environment?

     We tried the following: 

    Account Name field in Connected System object: 

    - cr.us-east-1.snowflakecomputing.com, 

    - cr,  

    - cr.us-east-1, 

    - jdbc:snowflake://cr.us-east-1.snowflakecomputing.com/warehouse=LOAD_WH,

    - jdbc:snowflake://cr.us-east-1.snowflakecomputing.com/?warehouse=LOAD_WH,

    - jdbc:snowflake://cr.us-east-1.snowflakecomputing.com/?db=DEV-RTI-STAGE&warehouse=LOAD_WH&schema=PRODUCTS

    Queries executed in Integration: 

    - "USE warehouse DEMO_WH; use database SNOWFLAKE_SAMPLE_DATA; Select * from TPCDS_SF100TCL.CALL_CENTER"

    -” Use database SNOWFLAKE_SAMPLE_DATA; Select * from TPCDS_SF100TCL.CALL_CENTER"

    - "Select * from SNOWFLAKE_SAMPLE_DATA.TPCDS_SF100TCL.CALL_CENTER"

    When we used the non JDBC links, we get the following error: error-result-label

    Expression evaluation error : “com.appiancorp.connectedsystems.templateframework.functions.pipeline.proxyDecoratorPipeline.TemplateInvocationException: Contact the developer of this template to resolve the following issue. java.lang.NoClassDefFoundError: Could not initialize class net.snowflake.client.core.SFTrustManager”

    When we use the JDBC Links, we get the follow the following error, and a dictionary with blank message and details: “error-result-label

    Snowflake returns the following exception:

    error-result-guidance

    No message provided”

    In both cases, no values were present under the Request tab of the Integration editor.  

    The roles and login specified in the Connected System do have the access necessary for the queries in the integration.

     Are we using the right type of value in the Account Name field? Is there a place to define the Snowflake warehouse, or should this just be defined in the integration query? Do we need to have a driver for Snowflake installed in our cloud environment?

    Any help would be greatly appreciated!

Children
No Data