78 releases (35 stable)
1.5.2 | Oct 9, 2024 |
---|---|
1.5.1 | Jul 24, 2024 |
1.5.0 | Mar 6, 2024 |
1.4.7 | Dec 15, 2023 |
0.1.1 | Jun 11, 2017 |
#7 in Database implementations
5,706 downloads per month
Used in 26 crates
(10 directly)
695KB
18K
SLoC
Persy
Persy is a transactional storage engine written in rust.
Install
Add it as dependency of your project:
[dependencies]
persy="1.5"
Example
Create a new persy file save some data in it and scan it.
use persy::{Persy,Config};
//...
Persy::create("./open.persy")?;
let persy = Persy::open("./open.persy",Config::new())?;
let mut tx = persy.begin()?;
tx.create_segment("seg")?;
let data = vec![1;20];
tx.insert("seg", &data)?;
let prepared = tx.prepare()?;
prepared.commit()?;
for (_id, content) in persy.scan("seg")? {
assert_eq!(content[0], 1);
//....
}
Docs
Check the get started and the APIs look for all the version on crates.io
Compile The Source
Checkout the source code:
git clone https://gitlab.com/persy/persy.git
Compile and Test
cargo test
Contacts
Follow Persy on Mastodon for news and announcements, join the #persy_rs:matrix.org for have a chat.
Contributing
You can find the code on our Repository and report any issue in our Issues Tracker
If you want to have an active part on the Persy development, you can start from reviewing and suggesting API changes, jump directly to hacking the code or just playing a bit with docs. If you want a list of possibility you can start from the list of Good First Issue
Dependencies
~0.9–6.5MB
~42K SLoC