Skip to content
DataOps.live Professional EditionNEW
Purpose-built environment for small data teams and dbt Core developers.
DataOps.live Enterprise
DataOps.live is the leading provider of Snowflake environment management, end-to-end orchestration, CI/CD, automated testing & observability, and code management, wrapped in an elegant developer interface.
Spendview for Snowflake FREE

 

An inexpensive, quick and easy way to build beautiful responsive website pages without coding knowledge.
Getting Started
Docs- New to DataOps.liveStart learning by doing. Create your first project and set up your DataOps execution environment.
Join the Community
Join the CommunityFind answers to your DataOps questions, collaborate with your peers, share your knowledge!
#TrueDataOps Podcast
#TrueDataOps PodcastWelcome to the #TrueDataOps podcast with your host Kent Graziano, The Data Warrior!
Academy
DataOps AcademyEnroll in the DataOps.live Academy to take advantage of training courses. These courses will help you make the most out of DataOps.live.
Resource Hub
On-Demand Resources: eBooks, White Papers, Videos, Webinars

Learning Resources
A collection of resources to support your learning journey.

Customer stories
Events
Connect with fellow professionals, expand your network, and gain knowledge from our esteemed product and industry experts.
#TrueDataOps.org
#TrueDataOps.Org#TrueDataOps is defined by seven key characteristics or pillars:
Blogs
Stay informed with the latest insights from the DataOps team and the vibrant DataOps Community through our engaging DataOps blog. Explore updates, news, and valuable content that keep you in the loop about the ever-evolving world of DataOps.
In The News

In The News

Stay up-to-date with the latest developments, press releases, and news.
About Us
About UsFounded in 2020 with a vision to enhance customer insights and value, our company has since developed technologies focused on DataOps.
Careers

Careers

Join the DataOps.live team today! We're looking for colleagues on our Sales, Marketing, Engineering, Product, and Support teams.
DataOps.liveJan 18, 2021 6:20:00 PM1 min read

PART 3: The Challenges of Repeatable and Idempotent Schema Management: Conclusions

Over the previous 2 blog posts, we have seen that managing the lifecycle of database objects in an idempotent manner is impacted by the imperative nature of most SQL statements, which require a known initial state for changes to be applied repeatably.

Under certain conditions, notably for objects that carry no data (or whose data can be easily reloaded), maintain no state (or whose state is unimportant), simply dropping and recreating the object gives an idempotent approach to their management. Most CREATE statements provide an OR REPLACE modifier to achieve this in a single operation.

Additionally, many ALTER statements provide idempotent methods, such as SET, UNSET and RENAME, which enable repeatability in the automation of object management.

Grants can be applied in an automated manner without worrying about the specific action taken to create/update the object (or even if anything was done at all), as these operations are idempotent.

However, for objects where the above approaches are insufficient to meet the database model’s requirements, a more targeted method of change detection and specific alteration would be required. The various strategies, in particular imperative (and the different flavours of imperative) and declarative are discussed in our next series of blog posts.

RELATED ARTICLES