The power of UNIX, bash, and git combine to create a (very) rudimentary DBMS.
Any functional SQL-ish DBMS needs a few things:
- Code to handle disk and cache management
- Logic to stream records through a query plan
- A means by which to support concurrent access to tables
What does a standard Linux installation give us?
- An Operating System (basic disk and cache management)
- Some sweet UNIX piping possibilities (basic streaming)
- Git (concurrent access control)
All the tools of database management are right there. All that was needed was someone with some spare time and a tendency to understand things by drawing abstract anaologies.
So yes, the goal of GitDB is to come close to something of a DBMS, featuring the ability to create and drop tables, insert and remove records, join and compare tables, and filter out results based on searches.
- A replacement for your PostgreSQL setup
- Practical in nearly every scenario
- An officially sanctioned implementation of SQL standards, nor is it trying to be
- Complex
It was a fun PoC, but it's dead at this point :)