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, Videos & Other Resources¶
This topic provides links to assorted “how to” tutorials/labs and “best practices”, as well as videos, 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.
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:
Connectors & Drivers - Detailed instructions for installing, configuring, and using the Snowflake-provided drivers and connectors for Python, Spark, JDBC, ODBC, and other clients:
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.
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:
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.
Behavior Change Release Management
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¶
-
Overview of cost management in Snowflake.
-
Introduction to understanding your cost in Snowflake.
Developing Applications with Snowflake¶
Introduction to Developing Applications in Snowflake — Introduction to developing applications in Snowflake.
Overview of Connectors, Drivers, and Client APIs — Information about the connectors, drivers, and client APIs that you use to develop client applications that connect to Snowflake.
UDFs (User-Defined Functions) — Information about user-defined functions (UDFs), which you can use to extend the system to perform operations that are not available through the built-in, system-defined functions provided by Snowflake.
Snowpark — Information about Snowpark, which you can use to build applications that process data in Snowflake. The Snowpark API provides programming language constructs for building SQL statements and creating UDFs.
External Functions — Information about external functions, which you can use to access custom code that runs outside of Snowflake (e.g. API services that provide geocoding and machine learning models).
Stored Procedures — Information about stored procedures, which you can use to extend Snowflake SQL to include programming constructs such as branching and looping.
Snowflake Scripting — Information about the Snowflake Scripting language, which you can use to write procedural code in SQL.
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¶
Summary of Commands — combined list of all the commands and query syntax and operators. Can be used as a quick-reference.
All Commands (Alphabetical) — alphabetical list of all the commands.
DDL Commands — commands categorized by the type of objects they control:
DML Commands — commands for performing the following DML operations:
Inserting, deleting, updating, and merging data in Snowflake tables.
Bulk copying data into and out of Snowflake tables.
Staging files for bulk copying.
Query Syntax — structure of SQL queries in Snowflake.
Query Operators — arithmetic, logical, and other types of operators.
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.
