In this lesson we will:
- Introduce Snowflake;
- Describe some of it's key differentiators;
What Is Snowflake?
Snowflake is a modern Data Warehouse designed to take advantage of the cloud.
What Is A Data Warehouse?
Data Warehouses are large databases designed to combine data from many sources across a business into one central location.
Once data is combined, joined up, cleansed and organised in a central location, it can then be used for business intelligence purposes such as reports, dashboards or data science activities.
Data Warehouses are optimised for analytical use cases, so can scale to support large historical datasets and a high number of concurrent users with business intelligence type workloads. This is in contrast to databases such as MySQL or PostgreSQL which are designed to support real-time transactional workloads which usually require very fast access to relatively small datasets.
Key Differentiators Of Snowflake
Though Data Warehousing is a very mature field, Snowflake brings a modernised approach and a cloud native architecture which make it uniquely powerful versus legacy competition. This has led to rapid adoption in industry.
Software As A Service
Snowflake is delivered through an entirely Software-As-A-Service (SaaS) model, meaning there are no software or servers to run or configure. Servers are of course still there, they are simply managed transparently for you.
Snowflakes success with the SaaS deployment model is a notable innovation in the data space, as until now, enterprise customers have been reluctant to hand over their strategic data to a third party to such an extent. Snowflake was the first product compelling enough to overcome this objection.
Simplicity
In addition to the fully SaaS deployment model which minimises the amount of operational overhead, Snowflake is relatively simple to use and operate. For instance, there is less to do in terms of tuning parameters and management overhead in comparison with traditional databases such as Oracle or SQL Server that historically needed expert Database Administrators to run.
Usage Based Billing
Snowflake offers a genuine usage based billing model, whereby you pay by the second for the compute resources that you use, and by the byte for the storage that you consume. This means that businesses can get started with Snowflake cheaply, and there is no need for overprovisioning to support future workloads.
This pricing model is compelling compared to the traditional vendors who have high per CPU core billing models or require 24x7 server capacity to remain available even when not in use.
Performance
Snowflake makes a number of innovations around performance which for some benchmarks make it the most highest performing data warehouse on the market.
Innovative Architecture
Snowflake is based on a very innovative Cloud Native architecture, meaning that the attractive properties of Cloud infrastructure are reflected for users of Snowflake. This includes it's ability to rapidly scale up and down, it's high performance, and fully consumption based pricing. This architecture is covered in more detail in the next lesson.