June 3, 2024

What are Snowflake’s Top Features?

By Justin Delisi

Snowflake AI Data Cloud has become a premier cloud data warehousing solution. But you may be asking yourself, what sets it apart from the other options out there? Maybe you’re just getting started looking into a cloud solution for your organization, or maybe you’ve already got Snowflake and are wondering what features you’re missing out on.

In this blog, we will take you through Snowflake’s top features, what they can do for you, and how to get the most out of your Snowflake account.

What are Snowflake’s Top Features?

Elasticity and Scalability

The best benefit of having your data on Snowflake’s cloud-based platform is its elasticity and scalability. Snowflake allows you to scale up and out with near-zero maintenance on your part. 

Right Size Compute

With Snowflake, you can pick how many computing resources you need and change them up or down anytime within seconds. You can provision and de-provision virtual warehouses used for computing whenever you need (or don’t need) them. No worries about over-provisioning and paying for something you’re not using. 

Also, since you can set auto-scaling within your account, you can even have Snowflake provide for you when needed without any human intervention.

(Practically) Unlimited Storage

Unlike an on-premises solution, there is (essentially) no limit to the amount of storage space you can use in Snowflake. You only pay for the storage you are using, so again, there are no worries about buying more storage than you need.

Security

Having your data on the cloud can make any business nervous. Your clients trust that you will keep their data secure, and Snowflake has industry-leading features to ensure the highest levels of security for your account and the data you keep. 

End-to-End Encryption

Snowflake utilizes end-to-end encryption, which stops third parties from reading data going into or coming out of Snowflake when your data is at rest. This ensures that your data is always encrypted and safe from anyone trying to attack Snowflake to steal it. Optionally, Snowflake also allows users to encrypt their data on the client side before it even reaches their Snowflake account.

Networking and Private Connectivity

Networking policies can be implemented in Snowflake to whitelist or blacklist IP addresses from accessing your account. You can easily block anyone outside your network from accessing your Snowflake account.

Taking it one step further, if you don’t want your data traversing the public internet, you can implement one of the private connections available from the cloud provider your Snowflake account is created on, i.e., Azure Private Link, AWS Privatelink, or Google Cloud Service Private Connect.

Time Travel, Fail Safe, and Zero-copy Cloning

Definitely, some of Snowflake’s coolest features that set it apart from the rest are Time Travel, Fail Safe, and Zero Copy Cloning.

Time Travel

Time Travel literally allows you to query data in the past. When data in a table is modified, including deletion of data or dropping an object containing data, Snowflake preserves the state of the data before the update. How long they keep it depends on the Data Retention Period you set for your account. This allows you to query a table AT or BEFORE a certain time. 

For example, you can query the table as it was 5 minutes ago:

				
					SELECT *
FROM PHDATA_EMPLOYEES_TABLE AT(OFFSET => -60*5)
WHERE FIRST_NAME = 'JUSTIN';

				
			

Or before a specified time:

				
					SELECT *
FROM PHDATA_EMPLOYEES_TABLE AT(TIMESTAMP => 'Fri, 01 May 2024 15:00:00 -0500'::timestamp);
WHERE FIRST_NAME = 'JUSTIN';
				
			

Or even UNDROP a table that was dropped accidentally:

				
					UNDROP TABLE PHDATA_EMPLOYEES_TABLE;
				
			

This is a massive advantage because you can fix any mistakes that happen in your account or simply compare results after an update to a table.

Fail Safe

After the Data Retention Period is over, your data is moved into Fail Safe. Fail Safe doesn’t allow you to query the data within it; it is simply there to protect your data from catastrophic failure. The Snowflake team can use Fail Safe to restore your data in the event of an extreme operational failure, giving you even more peace of mind.

Zero Copy Cloning

Zero Copy Cloning is another feature that’s as fun as handy. It allows you to CLONE an object (table, schema, or even an entire database) to make a complete copy of it. It’s really just a pointer to the original data, which means it does not incur any extra storage costs as long as the data in both copies is the same. It is fantastic for development to work to have a complete copy of production data without affecting production in any way. And like almost every feature in Snowflake, it’s extremely easy to use. 

For example, cloning an entire database is as easy as this:

				
					CREATE OR REPLACE DATABASE PHDATA_DEV_DB CLONE PHDATA_PROD_DB;
				
			

You can even throw clone statements like this into a stored procedure to run with a Snowflake Task daily so your development environment is always up to par with production. It can even simplify your CI/CD pipeline.

Native Semi-structured Data Support

Snowflake supports loading several formats of semi-structured data directly into a table and being able to query that data directly. The following formats can be loaded into Snowflake’s VARIANT data type:

  • JSON

  • Avro

  • ORC

  • Parquet

(XML can also be converted into an OBJECT data type and queried using PARSE_XML)

Here’s an example of a simple query of one attribute of a VARIANT column containing JSON data:

				
					SELECT EMPLOYEES:FIRST_NAME
FROM PHDATA_EMPLOYEES_TABLE
LIMIT 3;
+--------------------------+
| EMPLOYEES:FIRST_NAME     |
|--------------------------|
| "Justin"                 |
| "Frank"                  |
| "Don"                    |
+--------------------------+
				
			

This allows you to quickly and easily ingest semi-structured data and store it in the same data warehouse as the rest of your data. By combining both types of data, your organization will be able to derive insights efficiently and effectively. 

Up and Coming Features

Snowflake comes out with new features all the time. Along with the top features above, there are a few newer ones that we feel should be mentioned:

Snowflake Marketplace

Snowflake offers a Marketplace where you can buy and sell data, services, and native applications. With Marketplace, you can instant access to much-needed data to create trends and insights from or market your own data to make money off the data you’re already storing in Snowflake.

Snowpark

Snowpark is a fantastic feature from Snowflake that provides a library for querying and transforming data at scale in Python, Scala, or Java. Snowpark supports pushing down all operations to Snowflake, letting you work on data at any size without worrying about performance. 

Cortex

Want to use machine learning for deeper analytic insights but don’t have anyone with the expertise? Snowflake has you covered with Cortex. Using simple SQL commands, your data analysts can generate forecasts and identify outliers without a machine learning experience. On top of the pre-packaged machine learning, Cortex Large Language Model (LLM) functions let you easily extract insights from data in unstructured and semi-structured formats.

Getting the Most Out of Snowflake

As you can see, Snowflake has many features, and they always add more. Some features can save you money, get better performance, or create a more secure account. But how do you keep up with all these changes, and what are the best practices for your account? Well, you’re in luck because we here at phData used our extensive knowledge and expertise of Snowflake to create an application that can advise you on how your account is set up and if anything could be changed to improve it.

We aptly named it the Advisor Tool and offer it free for any customer of phData. With the Advisor tool, you can quickly and easily identify opportunities to improve the configuration, security, performance, and efficiency of your Snowflake environment. The Advisor tool comes with a pre-configured set of checks to identify opportunities and provide recommendations that ensure your Snowflake environment follows best practices and industry standards across various categories. 

The check results are provided in a rich interactive report for users to view and use to address them:

Closing

Snowflake Data Cloud offers a great solution for managing, storing, and analyzing your organization’s data. Snowflake’s unique features set it apart as the leader in cloud data warehousing.

By leveraging its capabilities for secure data sharing, streamlined workload management, and seamless cloud integration, you can gain valuable insights and make data-driven decisions that propel your business forward.

phData is here to help you maximize Snowflake’s potential. Whether you need assistance with implementation, optimization, or ongoing support, our team of experts is ready to guide you.

Data Coach is our premium analytics training program with one-on-one coaching from renowned experts.

Accelerate and automate your data projects with the phData Toolkit