Abstract

Negotiating a downtime for a release can be difficult in this modern, 24x7 world. When downtime means lost revenue, the price of taking a downtime to deploy code can run up quickly. This talk will show you a way to reduce the cost of deployment by reducing or even eliminating required downtime for database code deployment. We will show how to release new database code, update existing stored procedures, refactor and restructure tables, and even perform systemic re-architecture with no downtime and minimal blocking. We will use as a case study one release in which we modified the primary key column on 180 tables and updated over 550 stored procedures without end users noticing a thing. If you want to hit that three nines (or better) service-level agreement, this talk will help get you on the road to reduced downtime.


Slides

The slides are available as a GitPitch slide deck.

The slides are licensed under Creative Commons Attribution-ShareAlike.


Demo Code

The demonstration code is available on my GitHub repository. This includes a set of Zeppelin notebooks which walk through our examples.

The source code is licensed under the terms offered by the GPL. The slides are licensed under Creative Commons Attribution-ShareAlike.


Links and Further Information

Approaching Zero: the Series

Overviews

Locks

Miscellaneous