Skip to content

DavisRayM/cryo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Cryo State: Not Runnable

Cryo is a WIP database system. It's composable, meaning components are built to be plug-and-play, so new pieces can be added later with minimal friction.

This is a hobby project, and I'm learning as I go. Correctness reflects my current understanding of each topic and will improve over time. What I prioritize most is configurability, so I can experiment with different mechanics, and observability, so I can see what's happening under the hood and debug effectively. Performance and storage efficiency take a back seat to both.

Progress

Storage

  • Define a page structure on disk
  • Software managed cache 🚧
    • Page latching and locks
    • Page cache (Clock algorithm)
    • Controlled page access
    • Pluggable flush/allocate/mutate guards 🚧
    • Tracked page access: all writes through mutable page APIs should be tracked and reported to any party guarding that activity (design not finalized)
    • Pool manager should attempt to open the file handle with O_DIRECT 🚧

Recovery

Transaction management 🚧

  • ...

Storage server / execution engine 🚧

  • Usable server/client binaries

Resources / Good reads

About

WIP Datbase system

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages