buffdb  by buffdb

Embedded database for AI model management over gRPC

Created 1 year ago
298 stars

Top 89.0% on SourcePulse

GitHubView on GitHub
Project Summary

BuffDB is a lightweight, high-performance embedded database designed for AI model management and edge computing, offering a gRPC network API and a compact Rust-based binary. It targets developers building offline-first applications or needing efficient data handling for machine learning models, providing a Machine-Oriented Database Management System (MODMS) that prioritizes Protocol Buffers for data serialization.

How It Works

BuffDB leverages Protocol Buffers for efficient, language-agnostic data serialization, reducing overhead compared to JSON. It supports both Key-Value and Blob storage, making it suitable for storing model weights and metadata. The architecture combines an embedded database backend (SQLite by default, with experimental DuckDB support) with a gRPC server, allowing clients in various languages to interact with the data over the network. This approach offers low latency for local operations and reduced bandwidth usage.

Quick Start & Requirements

  • Installation: cargo install buffdb or via Docker (docker run -p 9313:9313 ghcr.io/buffdb/buffdb:latest).
  • Prerequisites: protoc (Protocol Buffers compiler). macOS users may need protobuf and sqlite via Homebrew.
  • Setup: Minimal setup time, binary size is under 2MB.
  • Docs: https://github.com/buffdb/buffdb

Highlighted Details

  • ML Model Storage: Optimized for storing and serving ML models with metadata and weights.
  • Secondary Indexes: Supports Hash and B-tree indexes for efficient value-based queries.
  • Raw SQL Queries: Allows direct SQL execution on the underlying SQLite database.
  • Hugging Face Integration: Can act as a caching layer for Hugging Face models.

Maintenance & Community

The project is actively developed, with contributions acknowledged. Community interaction channels are not explicitly listed in the README.

Licensing & Compatibility

Licensed under the Apache License, Version 2.0, which is permissive and generally compatible with commercial and closed-source applications.

Limitations & Caveats

The DuckDB backend is experimental and may have platform-specific linking issues, particularly on macOS. For production use, the stable SQLite backend is recommended.

Health Check
Last Commit

2 months ago

Responsiveness

Inactive

Pull Requests (30d)
0
Issues (30d)
0
Star History
1 stars in the last 30 days

Explore Similar Projects

Starred by Assaf Elovic Assaf Elovic(Cofounder of Tavily), Chip Huyen Chip Huyen(Author of "AI Engineering", "Designing Machine Learning Systems"), and
3 more.

airweave by airweave-ai

1.4%
4k
Semantic MCP server for AI agents
Created 10 months ago
Updated 13 hours ago
Feedback? Help us improve.