DEV Community

Discussion on: Hacktoberfest 2021 is Here 🎃

Collapse
 
johanneslichtenberger profile image
Johannes Lichtenberger

You're invited to work on a database system, tailored to store and query the full history of your data. The system stores a huge persistent tree of index trees in a log-file, but we also plan to store databases in a distributed log as for instance Apache Kafka or Apache Bookkeeper.

Any help is greatly appreciated. You don't have to be a database expert. You can also work on several smaller issues as well as on custom made SieixDB HTTP clients for different languages.

GitHub logo sirixdb / sirix

SirixDB is a temporal, evolutionary database system, which uses an accumulate only approach. It keeps the full history of each resource. Every commit stores a space-efficient snapshot through structural sharing. It is log-structured and never overwrites data. SirixDB uses a novel page-level versioning approach called sliding snapshot.

An Evolutionary, Accumulate-Only Database System

Stores small-sized, immutable snapshots of your data and facilitates querying the full history

Tweet

Follow

Download ZIP | Join us on Slack | Community Forum

Working on your first Pull Request? You can learn how from this free series How to Contribute to an Open Source Project on GitHub and another tutorial: How YOU can contribute to OSS, a beginners guide

"Remember that you're lucky, even if you don't think you are, because there's always something that you can be thankful for." - Esther Grace Earl (tswgo.org)

SirixDB uses a huge persistent (in the functional sense) tree of tries, wherein the committed snapshots share unchanged pages and even common records in changed pages. The system only stores page-fragments instead of full pages during a commit to reduce write-amplification. During read operations, the system reads the page-fragments in parallel to reconstruct an in-memory page.

SirixDB currently…