llm-config-storage
Persistent storage backend for LLM Config Manager using embedded Sled database with encryption support.
Features
- Embedded Database: Zero-config Sled database for persistent storage
- Encryption at Rest: Automatic encryption of sensitive configuration data
- ACID Transactions: Atomic, consistent, isolated, durable operations
- Namespace Isolation: Separate storage for different configuration namespaces
- Version History: Store and retrieve historical configuration versions
- Backup & Restore: Built-in backup and restore capabilities
Usage
Add this to your Cargo.toml:
[]
= "0.5.0"
= "0.5.0"
Basic Example
use StorageBackend;
use CryptoManager;
async
Namespace Management
// Create namespace-specific storage
let namespace = storage.namespace;
namespace.put.await?;
Storage Format
- Key-Value Store: Simple and efficient key-value access
- JSON/Binary: Supports both JSON and binary value storage
- Compression: Optional compression for large values
- Encryption: Transparent encryption layer for sensitive data
Performance
Benchmarks on modern hardware:
- Read operations: ~10 µs per key
- Write operations: ~50 µs per key
- Batch writes: ~5000 ops/sec
Minimum Supported Rust Version
This crate requires Rust 1.75 or later.
License
Licensed under the Apache License, Version 2.0. See LICENSE for details.
Contributing
See CONTRIBUTING.md for contribution guidelines.