Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

938 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Storage algorithms in golang

GoDoc Go Report Card

Package storage implement a collection of storage algorithm and necessary tools and libraries. Applications wishing to use this package please checkout interfaces defined under api/.

As of now, two data structures are available for indexing key,value entries:

  • llrb in memory left-leaning red-black tree
  • bubt immutable, durable bottoms up btree.
  • bogn multi-leveled, lsm based, ACID compliant storage.

There are some sub-packages that are common to all storage algorithms:

  • flock read-write mutex locks across process.
  • lib collections of helper functions.
  • lsm implements log-structured-merge.
  • malloc custom memory alloctor, can be used instead of golang's memory allocator or OS allocator.

How to contribute

Issue Stats Issue Stats

  • Pick an issue, or create an new issue. Provide adequate documentation for the issue.
  • Assign the issue or get it assigned.
  • Work on the code, once finished, raise a pull request.
  • Gostore is written in golang, hence expected to follow the global guidelines for writing go programs.
  • If the changeset is more than few lines, please generate a report card.
  • As of now, branch master is the development branch.

Releases

Packages

Used by

Contributors

Languages