Talks
Speakers
Events
Topics
Sign in
Home
Talks
Speakers
Events
Topics
Leaderboard
Use
Analytics
Sign in
Suggest modification to this talk
Title
Description
Cheap code branches permeate our daily workflow, but the code we write is only half the story. Introducing data model changes into production can challenge developers and ops people alike, but how do we deal with these issues in our experimental phase? In this talk, we'll discuss using features provided by modern filesystems like ZFS & Btrfs to branch databases along with code, letting developers experiment and ops people model complex environments, all from the comfort of our laptops. Help us caption & translate this video! http://amara.org/v/FG91/
Date
Summarized using AI?
If this talk's summary was generated by AI, please check this box. A "Summarized using AI" badge will be displayed in the summary tab to indicate that the summary was generated using AI.
Show "Summarized using AI" badge on summary page
Summary
Markdown supported
In the video 'Microtalk: Take a picture, it'll last longer' presented by JD Harrington at GoRuCo 2013, the speaker discusses the integration of branching strategies from Git into database management to enhance development workflows. He emphasizes the challenges developers face when integrating data model changes into production during their experimental development phase. Key points discussed include: - **Importance of Branching**: JD highlights how Git has revolutionized branching, making it easier for developers to manage features and returns to stable versions, but notes that database changes complicate this process. - **Challenges in Database Management**: The speaker identifies specific issues when making incompatible database modifications, such as renaming columns or tables, which complicates the switching between branches. - **Potential Solutions**: Various approaches to creating database branches are discussed: - **Copying Database Files**: While this is simple, it can be inefficient, especially with large databases. - **Using Git for Database**: The concept of putting the database in a Git repository is presented, but this method still has overhead due to large file sizes. - **Introduction of ZFS**: JD explains ZFS, a filesystem that features efficient snapshotting and cloning, making it ideal for branching databases due to its copy-on-write nature, which saves disk space and time when creating new branches. - **Git Hooks for Automation**: To streamline the branching process, JD introduces the Git post-checkout hook, which can automate the association of database snapshots with Git branches, thereby minimizing manual effort with coding in Ruby. - **Application in Virtual Environments**: He mentions the development of a Vagrant plugin, vagrant-zfs, which enables rapid deployment of individual filesystems for different VMs, providing a practical application for testing environments. In conclusion, JD stresses the efficiency of using modern filesystems like ZFS to manage database changes alongside Git branching, resulting in a streamlined workflow for developers and operations teams. He encourages the audience to explore these technologies and suggests resources for implementation on Mac systems.
Suggest modifications
Cancel