Snowflake Builders Blog: Data Engineers, App Developers, AI/ML, & Data Science

Best practices, tips & tricks from Snowflake experts and community

Snowflake Unistore — Powered by Hybrid Tables

Unistore is the new Snowflake workload that delivers transactional and analytical data together in a single platform. This provides one place to get more value from your data while also benefiting from the many features of Snowflake, including unified data governance and security.

For years, transactional and analytical workloads have existed in separate systems that are designed to manage the primary needs of each type of data.

While these two databases have served their purpose for a long time, some common challenges arise when working across separate systems.

Unistore is a modern approach to working with transactional data and analytical data that brings both data types together in a single platform — Snowflake, resulting in high value proposition.

Hybrid Tables is the new feature that powers Unistore by enabling fast, single-row reads and writes in order to support transactional workloads. Hybrid Tables are another table type in Snowflake, making them familiar to use while maintaining the same simplicity to ensure everything just works.

A key design principle was the need to support the most common transactional capabilities that application developers have come to rely on. Performance is especially critical for any transactional application, especially for fast single-row operations. To help support that, Snowflake developed entirely new row-based storage. What’s especially powerful is that this storage layer leverages the exact same client, cloud services architecture, authorization and authentication, metadata, query processing layer, and more, as does the existing analytic store.

In addition, it’s not just about providing the transactional capabilities, but also delivering the query performance required. In order to provide excellent analytical query performance, Snowflake can continuously replicate data into the analytical store and as well in the background.

Hybrid Tables provide a single logical table, obfuscating this so you never need to worry about the type of query you’re running or what data store is the right fit. This is the magic of Hybrid Tables. Bringing this together as one single product and experience is a truly modern approach.

Using Hybrid Tables:

  • Primary keys to uniquely identify each row in a Hybrid Table, with indexes to support concise lookups. Every row must have a primary key value, and each table can have one primary key only.
  • Foreign keys for linking and cross-referencing data between tables.
  • Referential integrity constraints to validate data before it’s loaded into tables, which enforce the relationship between two tables and prevent actions that might destroy these links.
  • Secondary indexes to speed up searches and queries, as well as retrieve data from the database along dimensions that are not the primary key.
  • Join tables to enable Hybrid Tables to be combined with other Snowflake tables for a holistic view of transactional and analytical data, together. Data can also be loaded between tables with a single SQL statement, and it’s possible to atomically transact across different table types.

Hybrid tables features in comparison with other Snowflake table types -

While you should expect Snowflake standard tables to offer better performance on large analytical queries, hybrid tables allows for faster results on short-running operational queries. If your queries fit in one of the following models, hybrid tables may be the preferred choice for storing your data.

  • High concurrency random point reads versus large range reads.
  • High concurrency random writes versus large sequential writes.
  • Retrieval of a small number of entire records versus narrow projections with analytical functions.

Snowflake has revolutionized the way to access, integrate, analyze, collaborate, and build applications with data. With unified data, anything is possible. Isn’t it time to explore the possibilities?

References:

https://docs.snowflake.com/en/user-guide/tables-hybrid

https://www.snowflake.com/en/data-cloud/workloads/unistore/

Follow and Clap if you like the content and feel free to ask if you have any questions in the comments. I will be more than happy to assist and guide you.

--

--

Snowflake Wiki
Snowflake Wiki

Written by Snowflake Wiki

Snowflake Basics | Features | New releases | Tricks & Tips | SnowPro Certifications | Solutions | Knowledge Sharing | ~~~ By satitiru (Snowflake DataSuperHero)

Responses (1)