- Multi-cluster, shared-data architecture
- Snowflake's name for its design: multiple independent shared-nothing compute clusters that all read the same shared data in a blob store, with local disk used only for caches and temporary data. It preserves shared-nothing execution efficiency while decoupling it from data ownership.
- Virtual warehouse (VW)
- A cluster of EC2 worker nodes presented to a single user in abstract T-shirt sizes from X-Small to XX-Large. It is pure compute, can be created, resized or destroyed at any time without touching database state, and each query runs on exactly one VW.
- Table file
- The unit of storage: a large, immutable file into which a table is horizontally partitioned, equivalent to a block or page in a traditional database. Writes never modify one; they produce a new table version by adding and removing whole files.
- PAX / hybrid columnar
- The layout inside a table file, in which the values of each column are grouped together and heavily compressed, with the header recording each column's offset. Combined with S3 range GETs, it lets a query download only the columns it references.
- Pruning
- Using per-file min-max metadata (also known as small materialized aggregates, zone maps or data skipping) to decide that a file cannot satisfy a predicate and skip it entirely. In Snowflake it replaces indices as the sole data-access-limiting mechanism, requiring no user input.
- File stealing
- The skew-handling technique in which a worker process that has finished scanning its input files asks peers for more, and a peer with many files left transfers ownership of one for the scope of the current query. The requester downloads that file from S3, not from the peer, so straggler nodes get no extra load.
- VARIANT
- A SQL type that can hold any native SQL value, a variable-length ARRAY, or an OBJECT map from strings to VARIANTs, all in one self-describing compact binary encoding. Because the encoding supports fast lookup, type tests, comparison and hashing, VARIANT columns work as join, grouping and ordering keys.
- Optimistic conversion
- Converting string-encoded values such as dates to their real SQL type at write time, while keeping the original string in a separate column unless the conversion is fully reversible. It buys read-time speed and pruning metadata for dates without risking information loss on values that only look like dates or numbers.
- Time travel
- Reading an earlier version of a table, schema or database using AT or BEFORE with an absolute time, a relative offset or a prior statement ID. It works because files removed by a new version are retained for a configurable period, currently up to 90 days, and it is also what makes UNDROP possible.