Skip to content
Key Value storage based on Ranged LSM tree
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
docs
.gitignore
LICENSE
README.md
compaction.go
compaction_test.go
db.go
db_test.go
helper.go
inmemory.go
inmemory_test.go
iterator.go
iterator_test.go
l1policy.go
l1policy_test.go
level_handler.go
manifest.go
merge_builder.go
merge_builder_test.go
options.go
table.go
table_test.go
tree.go
tree_test.go

README.md

Aran

Aran is an embedded key value storage based on new research paper Efficient Key-Value Stores with Ranged Log-Structured Merge Trees

Usage

 	opts := aran.DefaultOptions()
	db, err := aran.New(opts)
	if err != nil {
		panic(err)
	}
	defer db.Close()
	db.Set([]byte("hello"), []byte("schoolboy"))
	val, exist := db.Get([]byte("hello"))
	if !exist {
		panic("value not exist")
	}
	fmt.Println(string(val))

Note

Don't forget to close the db, otherwise some data will be lost.

Supported API

  • Get
  • Set

MileStones

  • Transaction API
  • WAL support
  • Loadbalancing small files

Contribution

Don't think too much. just send a PR, if you need any feature or if you find any bug.

Raising an issue is also a kind of help, so feel free to raise an issue if you find any bug.

Why another embedded KV store if badger already exist?

I was bored so I wrote this on my weekend. And, Go is awesome. btw I like Rust too.

Acknowledgments

About Me

I go with the name schoolboy and I do Go and little bit Rust. If you're looking for someone to collaborate with an open source project or to fill any junior dev position. You can DM me at @hi_balaji

அரண்

அரண் என்பது புதிய ஆராய்ச்சியின்படி எழுதப்பட்ட ஒரு தகவல் சேமிப்பு நிரல்.

பயன்பாட்டு முறை

 	opts := aran.DefaultOptions()
	db, err := aran.New(opts)
	if err != nil {
		panic(err)
	}
	defer db.Close()
	db.Set([]byte("வாழ்க"), []byte("மனிதாபிமானம்"))
	val, exist := db.Get([]byte("வாழ்க"))
	if !exist {
		panic("தகவல் கிடைக்கவில்லை")
	}
	fmt.Println(string(val))

குறிப்பு

close அழைக்கவும், இல்லையென்றால் தகவல்களை இழக்க நேரிடும்

பங்குஅளிப்பாளர் குறிப்பு

நீங்க கண்ணா மூடிக்கிட்டு கவலைபடாம PR அனுப்பலாம்

ஒப்புகை

  • ஆய்வு கட்டுரையை பதிவு இரக்கம் செய்ய உதவிய sci-hub'கு நன்றி
  • எடுத்துக்காட்டாக இருந்த badger'கு நன்றி
  • ஆய்வு கட்டுரை எழுதிய ஆசிரியர்க்கு நன்றி Efficient Key-Value Stores with Ranged Log-Structured Merge Trees

என்னை பற்றி

எனது பெயர் பாலாஜி ஜின்னா. நான் ஒரு பொறியியல் கல்லூரி மாணவன். உங்களுக்கு சந்தேகம் அல்லது ஒரு புதிய நட்பை உருவாக்க விரும்பினால் நீங்கள் எனது கிச்சாக முகவரிக்கு செய்தி அனுப்பலாம்

You can’t perform that action at this time.