Welcome to Snowflake Documentation¶
In these topics, you will find the information you need to access your Snowflake account and perform all the administrative and user tasks associated with using Snowflake. The documentation also provides conceptual overviews, tutorials, and a detailed reference for all supported SQL commands, functions, and operators.
You can start by browsing the contents on the left or using the search box at the top to search across the documentation and other Snowflake resources. If you do not find the information you are looking for, please feel free to reach out to Snowflake Documentation or Snowflake Support using the buttons at the bottom of each page.
Getting Started¶
-
System prerequisites and requirements for using Snowflake once your account has been provisioned.
-
Instructions for connecting to Snowflake using Partner Connect and supported clients.
-
Introduction to the main pages in the Snowsight and the tasks you can perform in each page.
Introduction to Snowflake¶
-
Overview of Snowflake architecture and basic concepts.
-
Overview of the cloud computing platforms on which Snowflake is offered.
-
Description of the different cloud platform regions in which Snowflake is offered.
-
Description of the services and features included with each edition of Snowflake.
-
Description of the Snowflake release process and instructions for requesting 24-hour early access for Enterprise Edition (and higher) accounts.
-
List of key/major features in the current release of Snowflake.
Overview of the Data Lifecycle
Introduction to the main tasks (and corresponding SQL commands) for getting your data into Snowflake and then using it to perform queries and other SQL operations.
-
Introduction to the powerful and unique features that Snowflake provides for ensuring your data is protected, secure, and available.
-
Description of the major regulatory compliance standards Snowflake meets to ensure the highest levels of data assurance, security, and governance for data in Snowflake.
Tutorials and Other Resources¶
This topic provides links to assorted “how to” tutorials/labs and “best practices” for using Snowflake.
Release Notes¶
These topics describe the new features, enhancements, and fixes introduced in recent and previous releases of Snowflake, as well as the features that are currently in preview. They also describe the required versions for the client software provided by Snowflake and the changes introduced in each client version.
Connecting to Snowflake¶
Snowflake Ecosystem — Overview of the 3rd-party tools and technologies, as well as the Snowflake-provided clients, in the Snowflake ecosystem:
Snowflake Partner Connect — List of Snowflake partners who offer free trials for connecting to and using Snowflake; includes instructions for starting a trial through Snowsight and the classic web interface. More detailed instructions and trial terms are provided by the individual partners.
Downloading Snowflake Clients, Connectors, Drivers, and Libraries — Instructions for downloading the installation packages for clients, connectors, drivers, and libraries.
General Configuration (All Clients) — General configuration instructions that apply to all Snowflake-provided clients (CLI, connectors, and drivers):
SnowSQL (CLI Client) — Detailed instructions for installing, configuring, and using the Snowflake command-line client:
Snowflake Extension for Visual Studio Code - Detailed instructions for installing, configuring and using the Snowflake SQL Extension for Visual Studio Code.
Drivers - Detailed instructions for installing, configuring, and using the Snowflake-provided drivers Python, JDBC, ODBC, and other clients:
Using Snowflake with Kafka and Spark - Detailed instructions for installing, configuring, and using the Snowflake-provided connectors for Spark and Kafka:
Loading Data into Snowflake¶
Key concepts related to data loading, as well as best practices.
Overview of supported data file formats and data compression.
Detailed instructions for loading data in bulk using the COPY command.
Detailed instructions for loading data continuously using Snowpipe.
Basic instructions for loading limited amounts of data using the web interface.
Key concepts and tasks for executing queries on staged data and transforming data while loading it into tables.
Instructions for accessing data in other storage.
Unloading Data from Snowflake¶
Key concepts related to data unloading, as well as best practices.
Overview of supported data file formats for unloading data.
Detailed instructions for unloading data in bulk using the COPY command.
Using Snowflake¶
Snowsight: The Snowflake Web Interface — Learn how to use Snowsight, the Snowflake web interface, for your Snowflake operations:
Classic Web Interface — Basic usage information for the classic web interface, as well as more detailed usage information for the Worksheets
and History
pages:
Virtual Warehouses — Key concepts and tasks for creating and using virtual warehouses to execute queries and perform DML operations, such as loading and unloading data:
Databases, Tables & Views — Key concepts and tasks related to understanding and working with Snowflake databases and tables:
Queries — Key concepts and tasks for executing queries in Snowflake:
Date & Time Data — Reference information and examples for working with dates, times and timestamps, and time zones in Snowflake:
Semi-structured Data — Key concepts and tasks for working with JSON and other types of semi-structured data:
Unstructured Data — Key concepts and tasks for working with unstructured data:
Binary Data — Reference information and examples for working with binary data in Snowflake:
Snowflake Time Travel & Fail-safe — Key concepts and tasks for understanding how Snowflake maintains access to deleted and modified data, and also how Snowflake enables data recovery in the event of loss:
Continuous Data Pipelines — Key concepts and tasks for transforming and optimizing loaded data for analysis:
Replication and Failover/Failback — Key concepts and tasks for replicating and failing over databases across multiple Snowflake accounts, as well as redirecting client connections, for business continuity and disaster recovery:
Sample Data Sets — Key concepts and tasks for using the sample data sets provided with Snowflake:
Setting Up Alerts and Notifications — Key concepts and tasks for sending email notifications in SQL (e.g. from a stored procedure, task, etc.) and setting up alerts to perform actions or send notifications when data in Snowflake meets certain conditions.
Managing Your Snowflake Organization¶
Getting Started with Organizations
Instructions for working with organizations and assigning the ORGADMIN role to organization administrators.
Managing Accounts in Your Organization
Instructions for viewing and creating accounts in your organization.
-
Instructions for accessing your accounts.
Managing Your Snowflake Account¶
-
Detailed descriptions of the two unique account identifiers supported for connecting to Snowflake and using features that span multiple accounts.
-
Instructions for signing up for a trial account, adding a credit card to the account, and canceling the account.
-
Instructions for setting account, session, and object parameters for your account.
-
Instructions for creating and managing users in your account.
-
Instructions for enabling and disabling behavior change releases in your account.
Managing Security in Snowflake¶
-
List of security features, grouped by subcategory (e.g. Object security).
-
List of security features that enable secure authentication to Snowflake.
Networking & Private Connectivity
List of security features that enable secure networking and private connectivity to Snowflake.
Administration & Authorization
List of security features that enable provisioning users and groups to Snowflake, object access control, and data security.
Managing Cost in Snowflake¶
-
An introduction to the concepts and features that allow you to effectively manage cost.
Understanding Cost in Snowflake
Understand how costs are incurred as you use compute, storage, and data transfer resources in Snowflake.
-
Gain insights into historical cost using a dashboard in the web interface or by writing queries against data in the Organization Usage and Account Usage schemas.
-
Learn about monitoring the cost of compute resources in Snowflake.
-
Learn how to attribute compute costs to an organization’s cost centers.
-
Implement cost controls to ensure that the actual cost of using Snowflake does not exceed expected costs.
General Reference¶
Parameters — parameters that can be used to control system behavior at the account, user, session, and object level.
Data Types — supported data types (VARCHAR, NUMBER, DATE, etc.) in Snowflake:
Ternary Logic — information about the behavior of NULL in boolean expressions and with comparison operators.
Collation Support — information about sorting and other character-set-dependent operations on text strings.
SQL Format Models — formats for specifying conversion of numeric and date/time values to and from text strings.
Object Identifiers — rules for defining and using object identifiers, including resolving object names used in SQL statements:
Constraints — concepts and reference information for defining and maintaining unique, primary key, and foreign key constraints in tables:
SQL Variables — concepts and reference for defining and using variables in sessions.
Transactions — concepts and reference for using transactions with SQL statements.
Table Literals — concepts and reference for using table literals instead of a single scalar value in queries.
Snowflake Database — reference for the SNOWFLAKE shared database, which is provided by Snowflake for querying/reporting on your organization, account, data sharing, and other object usage.
Snowflake Information Schema — concepts and reference for the Snowflake Information Schema, which consists of a set of metadata views and historical table functions for querying/reporting on objects in Snowflake.
Metadata Fields in Snowflake — concepts and reference for metadata fields in Snowflake.
SQL Command Reference¶
Query Syntax — structure of SQL queries in Snowflake.
Query Operators — arithmetic, logical, and other types of operators.
DDL (Data Definition Language) Commands — overview of DDL commands.
DML (Data Manipulation Language) Commands — commands for performing DML operations, including:
Inserting, deleting, updating, and merging data in Snowflake tables.
Bulk copying data into and out of Snowflake tables.
Staging files for bulk copying.
All Commands (Alphabetical) — alphabetical list of all the commands.
Commands categorized by the type of objects and operations they control, includng:
General account-level objects (accounts, users, roles, securty policies, integrations, etc.) and operations (failover & recovery, etc.).
Session-based operations (session context, queries, variables, transactions, etc.).
Virtual warehouses (for loading data and performing queries) and resource monitors (for controlling credit usage).
Databases, schemas, tables, and other schema-level objects (views, sequences, etc.).
Snoflake extensions and application development (user-defined functions, stored procedures, scripting, etc.).
Objects for sharing data (shares, listings, etc.).
Objects for classifying, protecting, and governing data (masking polcies, row-access polcies, tags, etc.).
SQL Function Reference¶
Summary of Functions — combined summary of all system-defined functions. Can be used as a quick-reference.
All Functions (Alphabetical) — alphabetical list of all system-defined functions (scalar, aggregate, table, etc.).
Scalar Functions — functions that take a single row/value as input and return a single value:
String Functions (Regular Expressions) — regular expression (search) functions
Aggregate Functions — functions that take multiple rows/values as input and return a single value.
Window Functions — subset of aggregate functions that can operate on a subset of rows.
Table Functions — functions that return results in tabular format.
System Functions — functions that perform control operations or return system-level information.
API Reference¶
Connector / Driver / Client API |
Resources |
---|---|
Go Driver |
|
JDBC Driver |
|
.NET Driver |
|
Node.js Driver |
|
ODBC Driver |
|
PHP PDO Driver |
|
Snowflake Connector for Kafka |
|
Snowflake Connector for Python |
|
Snowflake Connector for Spark |
|
Snowflake SQL API |
Extensibility Feature |
Resources |
---|---|
User-Defined Functions (UDFs) |
|
Snowpark for Scala |
|
Snowpark for Java |
|
Snowpark for Python |
|
External Functions |
|
Stored Procedures |
Appendices¶
-
Notational conventions used in the Snowflake documentation.
-
List of words reserved for Snowflake SQL.
