Skip to main content

High-performance JSON serialization and deserialization library with efficient binary storage format. JSDFile combines msgspec speed with LZ4 compression for applications that need to store and retrieve JSON data rapidly while minimizing storage requirements.

Project description

🚀 JSD (JSON Database)

The next-generation JSON storage format for Python

Python Version License Format


🌟 Overview

JSD revolutionizes JSON storage by combining cutting-edge compression techniques with lightning-fast serialization. Built for performance-critical applications, JSD delivers unmatched read speeds and exceptional storage efficiency.

✨ Key Features

  • 🏃‍♂️ Blazing Fast Reads: Up to 5x faster than traditional JSON libraries
  • 💾 Superior Compression: Up to 70% reduction in storage footprint
  • 🧠 Memory Efficient: Optimized memory utilization during operations
  • 🛠️ Modern Architecture: Leverages cutting-edge Python technologies
  • 📊 Rich Analytics: Comprehensive benchmarking and visualization suite

🚀 Quick Start

Installation

# Create and activate virtual environment
python -m venv .venv
source .venv/bin/activate  # Linux/Mac
.venv\Scripts\activate     # Windows

# Install dependencies
pip install -r requirements.txt

Basic Usage

🏗️ Architecture

JSD employs a sophisticated multi-layer architecture:

  1. Binary Serialization 🔄

    • Powered by msgspec for maximum performance
    • Custom-optimized binary format
    • Intelligent type handling
  2. Compression Layer 📦

    • LZ4 frame compression
    • Adaptive compression levels
    • Optimized for both speed and size
  3. Storage Format 💾

    • Custom binary format with magic bytes
    • Fixed-size header for fast seeking
    • Versioned format support

📈 Performance

JSD delivers exceptional performance metrics:

Operation vs orjson vs msgspec File Size Reduction
Read (10k) 4.5x faster 4.2x faster 71% smaller
Write (10k) 1.1x faster 1.0x faster 71% smaller

For detailed benchmarks, see BENCHMARK.md

🛠️ Development Tools

Included Utilities

  • 📊 Benchmark Suite: Comprehensive performance testing
  • 📈 Visualization Tools: Advanced performance analytics
  • 🔧 Data Generators: Sophisticated test data creation
  • 🧪 Test Suite: Extensive unit and integration tests

🤝 Contributing

We welcome contributions! Here's how you can help:

  1. 🍴 Fork the repository
  2. 🌿 Create your feature branch
  3. 💻 Commit your changes
  4. 🚀 Push to the branch
  5. 🎉 Open a Pull Request

📜 License

MIT License - see LICENSE for details

🙏 Acknowledgments

  • LZ4 - Exceptional compression library
  • msgspec - Ultra-fast serialization
  • Python - The foundation of it all

Benchmarks

Made with ❤️ by Alaamer

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

jsdfile-0.1.0.tar.gz (22.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

jsdfile-0.1.0-py3-none-any.whl (19.9 kB view details)

Uploaded Python 3

File details

Details for the file jsdfile-0.1.0.tar.gz.

File metadata

  • Download URL: jsdfile-0.1.0.tar.gz
  • Upload date:
  • Size: 22.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.6

File hashes

Hashes for jsdfile-0.1.0.tar.gz
Algorithm Hash digest
SHA256 77111ffa97926437a467f646e7cd6de8bceed356f8414dc96f3e16df577d8088
MD5 c449177fa1bae29dc3d42def18e17232
BLAKE2b-256 72b31b5c86ac116d706443dfa205c7d3d303be66e3d488153e78a7ccfea66f04

See more details on using hashes here.

File details

Details for the file jsdfile-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: jsdfile-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 19.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.6

File hashes

Hashes for jsdfile-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 59d8b8a9d2962b8f2d7ebd4b0210e27009cfbfaa3226b7a3d6d9b9f969bd1a2b
MD5 cb6278598a6954e16f4fb8d0084aac84
BLAKE2b-256 85ed61184644363917bceafc965769d6441a2a445d476584d46428a9c65d848a

See more details on using hashes here.

Supported by

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