Skip to main content

A fast and efficient key/value store or document database which can work as a drop-in replacement for DynamoDB or MongoDB.

Project description

GlowDB: A Vector Store with RPC API

GlowDB is a flexible and efficient vector store server that enables interaction with a variety of data through a WebSocket-based Remote Procedure Call (RPC) API. It supports storing, retrieving, scanning, and managing vector-based documents in a RocksDB-backed database.

Table of Contents

Features

  • WebSocket RPC API: Communicate with the vector store server over WebSocket using JSON-RPC requests.
  • Document Storage: Store, retrieve, and manage documents using vector embeddings.
  • Custom Models: Support for custom document models with the DocumentObject class.
  • Async Support: Fully asynchronous API for efficient data processing.
  • Retry and Timing Handlers: Includes decorators for retry mechanisms, timing measurement, and exception handling.
  • Singleton Pattern: Ensures single instances of classes where needed.
  • Flexible Configurations: Use decorators and functions to enhance the API as required.

Getting Started

Requirements

  • Python 3.8 or higher
  • Dependencies:
    • orjson
    • websockets
    • rocksdb
    • pydantic
    • typing-extensions

Installation

  1. Clone the repository:
    git clone https://github.com/yourusername/glowdb.git
    cd glowdb
    

Project details


Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page