Snowflake - overview Flashcards
What is Snowflake?
Snowflake’s Data Cloud is powered by an advanced data platform provided as Software-as-a-Service (SaaS). Snowflake enables data storage, processing, and analytic solutions that are faster, easier to use, and far more flexible than traditional offerings.
What does it mean that Snowflake is a true SaaS offering?
It means that:
There is no hardware (virtual or physical) to select, install, configure, or manage.
There is virtually no software to install, configure, or manage.
Ongoing maintenance, management, upgrades, and tuning are handled by Snowflake.
Can Snowflake be run on-premises?
Snowflake’s architecture is a hybrid of traditional shared-disk and shared-nothing database architectures. Similar to shared-disk architectures, Snowflake uses a central data repository for persisted data that is accessible from all compute nodes in the platform. But similar to shared-nothing architectures, Snowflake processes queries using MPP (massively parallel processing) compute clusters where each node in the cluster stores a portion of the entire data set locally. This approach offers the data management simplicity of a shared-disk architecture, but with the performance and scale-out benefits of a shared-nothing architecture.
Indicate three layers of Snowflake architecture.
Snowflake’s unique architecture consists of three key layers:
Database Storage
Query Processing
Cloud Services
Indicate Snowflake pricing plans (editions).
Snowflake offers four different Editions, each providing progressively more features.
STANDARD (On-Demand Storage)
ENTERPRISE (On-Demand Storage)
BUSINESS CRITICAL (Capacity Storage)
VIRTUAL PRIVATE SNOWFLAKE (VPS) (Capacity Storage)
How Snowflake charges for storage?
A monthly fee for data stored in Snowflake is calculated using the average amount of storage used per month, after compression, for data ingested into Snowflake. Depending on file types, compression can reduce the total storage needs substantially.
How Snowflake charges for computing?
A virtual warehouse is one or more compute clusters that enable customers to load data and perform queries. Customers pay for virtual warehouses using Snowflake credits.
How Snowflake charges for Cloud Services?
The cloud services layer provides all permanent state management and overall coordination of Snowflake. Customers pay for cloud services using Snowflake credits.
WHAT IS A SNOWFLAKE CREDIT?
Snowflake credits are used to pay for the consumption of resources on Snowflake. A Snowflake credit is a unit of measure, and it is consumed only when a customer is using resources, such as when a virtual warehouse is running, the cloud services layer is performing work, or serverless features are used.
What are Cloud Services and how Snowflake charges for them?
Cloud services resources are automatically assigned by Snowflake based on the requirements of the workload. Typical utilization of cloud services (up to 10% of daily compute credits) is included for free, which means most customers will not see incremental charges for cloud services usage.
Indicate Snowflake Serverless features.
Snowpipe
Database Replication
Materialized Views Maintenance
Automatic Clustering
Search Optimization Service
What is Snowpipe?
Rapidly ingests streaming data
Is an automated service
Requires no virtual warehouses
Uses Snowflake-managed compute resources, which are paid for with Snowflake credits and are billed per second, plus incurs a fixed Snowflake credit charge per file
What is Database Replication?
Seamlessly replicates data across regions and cloud platforms
Requires no virtual warehouses
Uses Snowflake-managed compute resources, which are paid for with Snowflake credits and are billed per second, plus incurs standard storage and data transfer costs
What is Materialized Views Maintenance?
Automatically syncs materialized views with underlying base tables
Requires no virtual warehouses
Uses Snowflake-managed compute resources, which are paid for with Snowflake credits and are billed per second
What is Automatic Clustering?
Maintains optimal clustering state using defined cluster keys
Applies to tables and materialized views
Uses Snowflake-managed compute resources, which are paid for with Snowflake credits and are billed per second