Skip to content

Learning project to understand LSMTrees and BTrees, loosely inspired by Designing Data Intensive Applications - Chapter 3 Storage

Notifications You must be signed in to change notification settings

PeopleMakeCulture/go-db-tutorial

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

A toy database following this blog, repo

TODOS: [x] def a pager [x] change new_table() to db_open() [] db_open calls pager_open() [x] opens db file [x] inits page cache as nulls [] do we want for now to have it write all the data from file into the table?

[] create get_page() [] it should write a page from file to pager.pages

[] select [] it should handle a "cache miss" [] it should also write the data from file into the new table???? [] insert [] should add a row to table [] should increase rowCount++

[] create db_close() [] flushes page cache to disk (??) [] closes bd file [] frees memory for Pager and Table

About

Learning project to understand LSMTrees and BTrees, loosely inspired by Designing Data Intensive Applications - Chapter 3 Storage

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Go 100.0%