page33
13
While data sharing and replication may not be used ubiquitously, for those who do
use them, replication costs can far exceed the warehouse runtime costs to generate the
original data sets. Optimizing data transfer will reduce replication costs; I show you how
to do this later. For a taste of things to come, by redesigning your approach to storing
data, it is possible to significantly reduce both storage and replication costs.
Tune the Design
Regardless of whether you migrate an application or are delivering a greenfield
development, you must tune your design and adopt an approach that has the best
chance of success. Various studies have shown that between 66 percent and 85 percent
of all application deliveries fail. How you set out is a key determinant for success or
failure.
Operating in a high-pressure, delivery-focused environment can lead you to ignore
the importance of tuning your design. As your projects progress, the incremental cost
of refactoring your design increases, so you must approach any new delivery with
caution. Take the time to validate your approach and seek wisdom from those who
have successfully implemented Snowflake applications, recognizing there are not many
people who have done this.
Tuning Snowflake designs is dependent upon fully understanding the underlying
Snowflake platform architecture. Sadly, there are plenty who understand enough to
treat the symptoms but not enough to address root-cause issues. As my good friend
Andy McCann says, “Good practice travels far,” but note the pace of change of Snowflake
delivery is accelerating, and what was considered a best practice a year ago may not
stand the test of time now.
For those with deeper pockets and appetite, I strongly advocate that Snowflake PS
is engaged at the earliest opportunity to validate and identify optimally performant
patterns. You can find further information on Snowflake PS at
https://www.snowflake.
com/snowflake-professional-services/
.
Snowflake training that may lead to certification will accelerate learning. Depending
upon your current RDBMS knowledge and career aspirations, different courses will
appeal. You can find further information at
http://learn.snowflake.com/en/
.
An alternative but slower route to success for those without a strong RDBMS
background is via Snowflake University, where an introduction to Snowflake
development course is available. This course is free and self-paced, and Snowflake trial
ChaptEr 1
tuning thE SnowFlakE Data ClouD