Overview

Snowflake is a modern data platform. Unlike many others, Snowflake didn’t start as an on-premise data solution and then migrate to a web-based server. It was built in the cloud for the cloud. This means Snowflake can quickly handle large analytic workloads (columnar architecture and vectorized execution).

Snowflake separates its computation engine from storage. This allows it to have the additional advantage of adaptive optimization. This means that Snowflake can automatically scale your cloud usage up or down based on your current needs. In other words, Snowflake saves a little (uses less resources) on every data operation which saves you money long term.

If you’d like to checkout Snowflake’s capabilities yourself, you can sign up for a complimentary account with $400 worth of credit here.

Setup Requirements

  • Snowflake Account
    • Sign up for a free here or contact snowflake directly

You can connect to Snowflake using any of the following methods. I recommend starting with the browser if this is your first time. Then transitioning to either the CLI or a one of the libraries based on the back end stack you use.

  • Browser-based web interface
    • Minimum Version
    • Chrome: 47
    • Safari: 9
    • Firefox: 45
    • Opera: 36
    • Edge: 12
  • SnowSQL, Snowflake CLI
    • Redhat-compatible linux operating systems
    • macoOS (64-bit)
    • Windows (64-bit)
  • Client using JDBC or ODBC
    • Linux
    • MacOS
    • Windows
      • 64-bit for JDBC Driver
      • 32-bit or 64-bit for ODBC driver
  • Any 3rd party partner

Logging into Snowflake

Account Name

All access to Snowflake is through your account name. You’ll need it to sign in and it’s part of the URL for browser access.

https://account_name.snowflakecomputing.com

The full account name may include region and the cloud platform where your account is hosted. Ex. account-name.us-east-2.aws

Logging into the Web Interface

Go to the hostname provided by Snowflake for your account. The format should be:

https://account_name.snowflakecomputing.com

You should see the following screen.

Enter your credentials and Login.

Logging in Using SnowSQL

SnowSQL is the command line client for connecting to Snowflake and executing SQL queries and DDL and DML operations. To connect follow this quick guide.

Logging in Using Other Methods

In addition to the web interface and SnowSQL, Snowflake supports other methods for connecting.

  • 3rd-party clients services that support JDBC or ODBC
  • Developer applications that connect through drivers for Python, Node.js, Spark, etc.

These methods require additional installation and configuration. Check out this for details.

Web Interface

Snowflake web interface allows you to create/manage virtual warehouses, databases, and data objects. Use this interface to load data into tables, execute ad hoc queries, perform DML/DDL operations, and view past queries. You can also manage administrative tasks such as changing passwords and managing users. Check out Managing Your Snowflake Account for more information.

On the top of the UI you’ll see the following tabs.

Databases

This page shows the databases you have created or have the privileges to access. Tasks you perform on this page include:

  • Create, clone, or drop database
  • Transfer ownership of database

Click the name of a database to view and perform tasks on it:

Shares

This is a new page added to Snowflake. It allows you to consume data being shared with your organization and also provide data to others. Don’t worry about it for now.

Warehouses

Warehouses are Snowflake’s computational engines. You will define them by size (computational power) and spin them up to perform data analytics.

This page shows information about the virtual warehouses to create or can access. Task you can perform on this page include:

  • Create or drop a warehouse
  • Suspend or resume a warehouse
  • Configure a warehouse
  • Transfer ownership of a warehouse

Worksheet

Worksheet page is where you can write and run SQL queries and DDL/DML operations. The results can be viewed side by side as your operations complete. Tasks you can perform include:

  • Run ad hoc queries and other DDL/DML operations in a worksheet, or load SQL script files.
  • Open concurrent worksheets, each with its own separate session.
  • Save and reopen worksheets.
  • Log out of Snowflake or switch roles within a worksheet, as well as refresh your browser, without losing your work:
    • If you log out of Snowflake, any active queries stop running.
    • If you’re in the middle of running queries when you refresh, they will resume running when the refresh is completed.
  • Resize the current warehouse to increase or decrease the compute resources utilized for executing your queries and DML statements.
  • Export the result for a selected statement (if the result is still available).

For more information, checkout Using Worksheets for Queries.

HistoryHistory page in the Snowflake web interface

The History page allows you to view the details of all queries executed in the last 14 days. The page displays a historical listing of queries, including queries executed from SnowSQL or other SQL clients. You can perform the following tasks on this page:

  • Filter queries displayed on the page.
  • Scroll through the list of displayed queries. The list includes (up to) 100 queries. At the bottom of the list, if more queries are available, you can continue searching.
  • Abort a query that has not completed yet.
  • View the details for a query, including the result of the query. Query results are available for a 24-hour period. This limit is not adjustable.
  • Change the displayed columns, such as status, SQL text, ID, warehouse, and start and end time, by clicking any of the column headers.

For more information, checkout Using the History Page to Monitor Queries.

Help Menu and user Preferences

On the top right, there is a drop down menu from the help button. It supports the following actions:

  • View the Snowflake Documentation
  • Visit the Support Portal
  • Download the Snowflake clients by opening a dialog box where you can:
    • Download the Snowflake CLI client (SnowSQL) and ODBC driver.
    • View download info for the Snowflake JDBC driver, Python components, Node.js driver, and Snowflake Connector for Spark.
  • Show help panel with context-sensitive help for the current page.

To the right of the help button is the user preferences. You can then change your password or security role for the session (if you have multiple roles assigned to you). For more information about security roles and how they influence the objects you can see in the interface and the tasks you can perform, see Access Control in Snowflake.

You can also use this dropdown to:

  • Set your email address for notifications (if you are an account administrator).
  • Close your current session and exit the Snowflake web interface.

Thanks for checking out this overview of Snowflake! I hope this tutorial was helpful. Stay tuned for more snowflake articles 🙂