Skip to content

stchris/database-as-code

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 

Repository files navigation

The "Database as Code" Manifesto

  • Treat your database or other storage system as a code
  • All changes and operations with the database and all queries (ideally) against the database should be expressed as a plain old code
  • Git (or anything else VCS) is a single source of truth for database code
  • SQL actually is a main database language supported by almost all DBMS
  • SQL is not a bytecode for your data and your database, it's a normal human-oriented program language (why)
  • SQL is designed not only for data, but also for metadata
  • Database code is not only DDL and other migration scripts, DML and all kinds of SQL scripts too
  • Database code is a normal code, and it also needs static analysis, code review (especially by DBA, analysts and business people) , tests and automation of it all
  • DBAs and data people should be integrated with Dev and Ops
  • Ability to release on demand.

Resources:

Talks:

Tools:

  • Bytebase - web-based, zero-config, dependency-free database schema change and version control management tool for developers and DBAs.
  • dbt - enables data analysts and engineers to transform their data using the same practices that software engineers use to build applications.
  • HugSQL - a Clojure library for embracing SQL, creating a clean separation of Clojure and SQL code.
  • Yesql - a Clojure library for using SQL. Keep the SQL as SQL.

About

The "Database as Code" Manifesto

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors