Snowflake Database Connected System

At Macedon, we've had a number of clients ask about Appian's ability to connect to cloud Snowflake warehouses. As the functionality is not built-in, we started to look into if a connection to a Snowflake instance would be possible through a Connected System plug-in which would allow designers to build integrations to perform queries to Snowflake warehouses, schemas, and tables.

This connected system plug-in lets you connect to a Snowflake data warehouse by creating a Connected System with credentials and then make different queries broken out into different integration templates. By using integration objects a user is able to create integration objects that can make Select, Insert, Update or Delete queries after selecting the warehouse, schema, database table (or view) and then entering other inputs to make the queries execute successfully. The results from the queries executed by the integration objects return in a dictionary format, which can easily be translated to Appian CDTs or parsed as they are returned.

  • Perform 4 different types of SQL statements against a Snowflake instance: SELECT, INSERT, UPDATE and DELETE.
  • Results from a query are returned as a list of Appian Dictionary type, which can be used for simple translation to Appian CDTs.
  • For SELECT statements, a designer has the ability to pass in expressionable lists of a!queryColumn(), a!queryFilter(), sorting info and paging info in order to tweak the results from a query to what the designer would like to see returned from tables or views. This functionality was built to imitate the behavior of a!queryEntity(), which should make the integration easy to use and maintain for Appian designers.
  • Other operations (INSERT, UPDATE, DELETE) function similarly to Appian's built-in data store interaction implementation.