Des.Lim
Des.Lim

Reputation: 41

Data Modelling Best Practice in Snowflake

This question may have been asked multiple times and in multiple ways. And I've not been able to find a satisfactory answer.

Given that data in Snowflake is organised in a columnar format and regardless of Data Modelling approach (3NF, Dimensional, Data Vault), what is the best practice when designing data model in Snowflake?

Any recommendation or suggestion of online resource on this topic is appreciated.

Thanks!

Upvotes: 1

Views: 5871

Answers (2)

Anil Dhakal
Anil Dhakal

Reputation: 114

The question you have asked is itself tricky. For agility, flexibility, and scalability I would choose Data Vault. Please follow the link and follow Kent Graziano. https: https://www.snowflake.com/blog/support-multiple-data-modeling-approaches-with-snowflake/

If my answer helps you please mark this answer is useful.

Upvotes: 0

Des.Lim
Des.Lim

Reputation: 41

Given that Snowflake is largely a MPP Columnar Store (but yes - with a twist), the content of this paper should largely hold true. And credit to its author (Sudershan Srinivasan), it is very well-written.

https://docplayer.net/2885379-Data-modeling-applying-relevant-data-modeling-techniques-to-mpp-columnar-stores-a-point-of-view-author-sudershan-srinivasan.html

Although it covers mostly dimensional modelling technique, some suggestions such as denormalizing instead of building snowflake dimensions / centipede facts would apply in DV and 3NF. That is, rethink your need to normalize if your objective is to avoid repeated data and thereby reduce storage consumption.

But if anyone has any other resource or thoughts to share, pls do share them.

Upvotes: 3

Related Questions