2 unstable releases
0.2.0 | Jul 24, 2022 |
---|---|
0.1.1 | Jul 18, 2022 |
#16 in #write-ahead-log
45KB
1K
SLoC
WAL-S
Implementation of write-ahead log based storage.
Features
- Write-Ahead Log
- Read snapshots
- Write batching
- Metadata support
- Stateless iterators
- Stateful iterators
- Sliding window
- Counter and time based identifiers
- Distance metrics
- Data exporting
Getting started
WALS::new("stream1", db)
.snapshot()
.iter()
.for_each(|record| {
let stream2 = WALS::from("stream2", db);
let result = process(record);
stream2.append(result);
})
stream
.flush()
.snapshot()
.unwrap()
.window(10, &StreamID::default())
.for_each(|batch| {
println!("size={}", batch.len());
assert_eq!(batch.len(), 10);
counter += 1;
});
Docs
TBD
Dependencies
~28MB
~567K SLoC