Replies: 3 comments 3 replies
-
@JohnL4 , SnowDDL is an open source version of a tool which I originally created for Bumble (NASDAQ: BMBL). This is a massive organization with hundreds of employees, 60 million users, dozens of mobile apps and a lot of complexity. I am not aware about the current stats, but I suspect Bumble holds at least ~500Tb of data in Snowflake and at least a few thousand tables. Also, I help to implement SnowDDL for various clients during my consulting endeavors. For example, currently I have access to unique Snowflake account holding data of multiple health tech startups. Each startup has its own set of schemas, users and warehouses. But we can easily run a cross-startup query if necessary. Config is partially auto-generated and fully managed by SnowDDL. You may also tell this is a relatively mature project just by looking at the level of detail regarding the specific object types. As far as I know, no other tool implements proper logic for ALTER / REPLACE table, detection of invalid views, role hierarchy, etc. In my view, it should be relatively easy and risk-free to test SnowDDL for your specific use case. You may create a separate "sandbox" account with CREATE ACCOUNT command and try the most common DDL transformations for your org. Also, there are a lot of built-in safety measures to prevent unintentional mistakes, such as:
In my view, SnowDDL is much safer compared to Terraform, which has no concept of "safe" and "unsafe" commands and does not see any difference between Finally, since SnowDDL is implemented in pure Python, you may always fork & change it if something goes wrong. No special skills required. Hope it helps! |
Beta Was this translation helpful? Give feedback.
-
@JohnL4, I'm using it in production at a large organisation. I originally looked at Terraform with the Snowflake connector (which is maintained by Snowflake Labs), but found the features that @littleK0i describes above make SnowDDL much safer and more convenient. |
Beta Was this translation helpful? Give feedback.
-
SnowDDL has been my primary Snowflake deployment tool integrated with Azure DevOps. @JohnL4 just like your company, we also started with schemachange and moved to SnowDDL since @littleK0i released his work to the public (Big Thanks!). |
Beta Was this translation helpful? Give feedback.
-
So... pardon the open, non-technical question, but... I'd like to include SnowDDL in our process to deploy updates from our declarative repo, but I'm running into a little resistance from a manager or two. They want to know who else is using SnowDDL, since they've apparently never heard of it.
Our current process is schemachange, but I'm pretty sure a lot of our devs (we're migrating from on-prem SqlServer) are going to be pretty unhappy writing ALTER scripts for all table changes, so I'm looking for a way to use SnowDDL to generate the ALTER scripts automatically so we can stay in declarative mode.
I haven't seen a huge amount of chatter on Reddit or StackOverflow, so I figure this is the best place to ask: how widely used is this tool? For those who use it in production, how has your experience been? How big is your org? (I ask that last because I might need evidence in a conversation and big orgs probably carry more weight in that conversation.)
Thanks, y'all!
John.
Beta Was this translation helpful? Give feedback.
All reactions