Chapter 3: Connecting to Snowflake

DWAS is capable of consuming geographic information from client-curated Snowflake tables. This can be achieved by setting up DWAS as a "Connected Application" as described in this Medium article.

The steps necessary to connect DWAS to Snowflake are as follow:

  1. Create a fresh DWAS account as discussed in the DWAS User Manual. Note that, at this time, it is only possible to have all geographic information come from Snowflake (behind the scenes, it still propagates into the DWAS system) or all be exlusively native to DWAS. Mixed use is not yet available. Either way you have the same ability to create, read, update, and edit that information from within the DWAS UI.
  2. Contact Weather Source to request that we enable Snowflake access for this account. Note that we will need both the DWAS account name and the Snowflake account name in order to act on this step.
  3. Create a public and private key pair as described in the Snowflake documentation.
  4. Weather Source will provide your team with a script similar to the one in the Medium article above that you run within your Snowflake account. The user attempting to execute this script must have appropriate privileges to do so. These commands will need to be issued by a Snowflake ACCOUNTADMIN, or at least someone who has access to both USERADMIN (or SECURITYADMIN) and SYSADMIN roles. This script will create the appropriate roles, users, and tables. Note that you will need to choose your own password and set the appropriate rsa_public_key as generated in step 3 before executing this script. The last line of the script requires you to copy and paste the public key you created in step 3 for the newly created Snowflake user as discussed here.
  5. Provide the necessary information to Weather Source such that the DWAS system can authenticate and access the tables created in step 4 above. These parameters include: account name, private pem key (as discussed above), and the passphrase necessary to decode the private pem key. Private keys and passphrases are always encrypted and never visible to users.

** Note that the DWAS Public API also does not yet support Snowflake as a target.