page320
408
Optimizing code, particularly where “lift and shift” from a legacy RDBMS has been
performed, is invasive. Colleagues must be educated on Snowflake-specific performance
requirements. Then the codebase must be refactored to take best advantage of
Snowflake optimizer preferences and structures.
You then investigated how to identify object dependencies and constraints before
examining how various objects are managed and differ from each other.
With a firm grasp of how to fix issues, you then investigated how to identify issues.
Having the correct tools in hand along with sufficient context, you learned where to look
and what to look for.
Your tuning approach should also be informed by the operating environment;
nonproduction environments may be able to tolerate warehouses operating in economy
mode, whereas production environments should implement warehouses operating in
standard mode.
I discussed Snowflake features with the caution to consider them after all other code
optimizations have been applied. Treat the root cause, not the symptoms!
Finally, I hope to have dispelled the myth of solely managing performance by
resizing warehouses. Applying best practices goes a long way to both preventing
performance issues from arising and facilitating reductions in warehouse size.
Afterword
Applying the knowledge gained from this book is a challenge I cannot prepare you for,
as each scenario will present itself differently. However, you now have the toolkit in your
hands to meet each challenge with confidence. Have confidence when investigating and
remediating issues, and improve your technical real estate while saving both costs and
time for your organization.
I conclude this book with the hope and expectation you have learned something
new. In fact, I did not realize how little I knew when setting out to write this book; the
journey has been enlightening to say the least.
With my very best wishes for your Snowflake journey, I look forward to seeing you at
Snowflake Summit and various speaking engagements and hearing how this book made
a difference.
ChapTer 10
OpTimizing perfOrmanCe