zippy_data

Crates.iozippy_data
lib.rszippy_data
version0.1.2
created_at2025-12-14 10:44:24.152599+00
updated_at2025-12-15 00:49:14.7321+00
descriptionCore engine for ZDS (Zippy Data System)
homepage
repository
max_upload_size
id1984214
size201,495
Omar Kamali (omarkamali)

documentation

README

zippy_data

Core Rust engine for the Zippy Data System (ZDS) — a high-performance, multi-language dataset storage format. The crate powers the Python, Node.js, and CLI bindings and is optimized for fast ingestion and random access over JSONL-style datasets.

Features

  • Fast ingestion: Append JSON documents via FastStore with mmap-backed indexing
  • Random + sequential access: Use the Engine API to fetch docs by id or scan with predicates/projections
  • Pack/Unpack: Turn a store into a portable .zds archive (and back) with zippy_data::container
  • Schema/index helpers: Manage schema registry, layout helpers, and journaled transaction log
  • Zero-copy friendly: Uses SIMD JSON parsing and memory-mapped files for throughput

Install

cargo add zippy_data
# optional helpers
cargo add serde_json

Requires Rust 1.75+.

Example

use serde_json::json;
use zippy_data::{FastStore, Result};

fn main() -> Result<()> {
    let mut store = FastStore::open("./data", "train", 1000)?;
    store.put("doc_001", json!({"text": "hello", "label": 1}))?;
    store.flush()?;

    let doc = store.get("doc_001")?;
    println!("{}", doc["text"]);
    Ok(())
}

See AGENTS.md for a deeper guide, patterns, and troubleshooting tips.

Commit count: 0

cargo fmt