Using Git as a NoSql Database
summary
Claim: Git can serve as a NoSQL store by using deduplicated blobs and built-in history for versioned data. Implementation details: a C# layer using libgit2sharp (libgit2 underneath), an optional HTTP front end, and a CQRS + Elasticsearch read side for queries. Measured behavior: baseline about 125 writes/sec, nesting trees doubles throughput to ~250/sec; backups/replication become simple pushes; supports short and long-lived transactions. Works for content-heavy, low-write workloads; not for high-frequency trading or strict immediate consistency.
AI-written summary · about
chapters (29)
- 0:00Introduction
- 0:30What is IP Parking
- 2:20Structure of the talk
- 2:41Disclaimers
- 3:16Using Git as a Database
- 4:08Git Repository
- 5:13Git Data Model
- 7:05Git Commands
- 7:50Git as NoSql Database
- 8:01Git as a Key Value Store
- 10:50Update
- 13:34Build Git Database
- 18:07HTTP Layer
- 18:30Scheme Alice
- 19:14Get Specific
- 20:31Diff
- 21:26Backup and Replication
- 23:28Transactions
- 25:47Tooling
- 26:34Problems
- 26:51Querying
- 27:37CQRS
- 28:34Concurrency
- 30:28Performance
- 34:41Multiple Repository
- 35:07Sharding
- 36:09Merge conflicts
- 36:47Merge tools
- 37:33Summary
related talks
48mUsing Git as a NoSql Database
39mGit the NoSQL Database
35mGit: the stupid NOSQL database
27mB How GitLab scaled Git access with Go and what we gained from it
34mSponsored Session: Sustaining Git Performance Under Heavy Workloads
25mManaging changes to your data with dat
22mDat
55mUnderstanding Git — Behind the Command Line
