Skip to main content

Memory Mapped / Shared Memory Database with S3 repository

Project description

SharedData

A comprehensive ultrafast Python library for financial data.

๐Ÿ“– Table of Contents

๐Ÿ—๏ธ Core Features

SharedData provides a comprehensive set of features for high-performance financial data management:

  • ๐Ÿ—ƒ๏ธ Database Schema & Indexing - Optimized schemas for financial data types
  • ๐ŸŒ Storage & Integration - Multi-storage support (Local, S3, MongoDB, Redis)
  • ๐Ÿ“ˆ Performance & Scalability - Parallel processing and advanced querying
  • ๐Ÿ“Š Data Containers - Tables, Collections, Time Series, Streams, Cache, Metadata
  • โšก Multiprocessing & Parallel Computing - Sophisticated parallel processing library
  • ๐Ÿค– Distributed Worker System - Automated task execution and job scheduling
  • ๐Ÿ“‹ Comprehensive Logging System - Enterprise-grade logging with multiple destinations
  • ๐ŸŒ Remote API Client - REST API for remote data access and operations

๐Ÿ“š Read the complete Core Features guide โ†’

โšก Quick Start

Get up and running with SharedData in minutes:

Installation

# Create virtual environment
python -m venv venv
source venv/bin/activate

# Install SharedData
pip install -r requirements.txt
pip install -e .

Basic Usage

import pandas as pd
from SharedData.SharedData import SharedData

# Initialize SharedData
shdata = SharedData(__file__, user='master')

# Quick example - Tables
dates = pd.date_range('2025-01-01', '2025-01-10', freq='D')
symbols = ['AAPL', 'GOOGL', 'MSFT']
idx = pd.MultiIndex.from_product([dates, symbols], names=['date', 'symbol'])
df = pd.DataFrame({'price': 100, 'volume': 1000}, index=idx)

# Write and read data
tbl = shdata.table('MarketData', 'D1', 'TEST', 'PRICES', value=df)
tbl.write()
data = tbl.loc['2025-01-05':, 'AAPL']  # Fast symbol lookup
print(f"Retrieved {data.shape[0]} rows")

๐Ÿ“š Read the complete Quick Start guide โ†’

๐Ÿ”ง Configuration

Configure SharedData with environment variables for your specific needs:

# Required Variables
SHAREDDATA_SECRET_KEY="your-secret-key"
SHAREDDATA_TOKEN="your-auth-token"
AWS_ACCESS_KEY_ID="your-aws-access-key"
S3_BUCKET="s3://your-bucket-name"
MONGODB_HOST="your-mongodb-host"
SHAREDDATA_ENDPOINT="http://your-server:port"

๐Ÿ“š Read the complete Configuration guide โ†’

๐Ÿš€ Advanced Usage

For power users and complex scenarios:

  • Advanced Data Operations - Complex queries and aggregations
  • Performance Optimization - Memory management and parallel processing
  • Distributed Computing - Worker pools and distributed data processing
  • Custom Extensions - Custom data containers and worker types
  • Production Deployment - High availability and monitoring
  • Monitoring & Debugging - Performance profiling and health checks

๐Ÿ“š Read the complete Advanced Usage guide โ†’

๐Ÿ”„ Development & Documentation

For developers contributing to SharedData:

Building Documentation

# Generate documentation from docstrings
make gitea

# Alternative methods
python generate_docs.py
python update_docs.py
make all

Running Tests

python -m pytest tests/

๐Ÿ“š Read the complete Development guide โ†’

๐Ÿ“„ License

See LICENSE file for details.

๐Ÿค Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Update documentation: make gitea
  5. Submit a pull request

๐Ÿ“š Read the complete Contributing guide โ†’


๐Ÿ“š Documentation Index


โฌ†๏ธ Back to top

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

shareddata-6.83.4.tar.gz (345.7 kB view details)

Uploaded Source

Built Distribution

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

shareddata-6.83.4-py3-none-any.whl (349.9 kB view details)

Uploaded Python 3

File details

Details for the file shareddata-6.83.4.tar.gz.

File metadata

  • Download URL: shareddata-6.83.4.tar.gz
  • Upload date:
  • Size: 345.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for shareddata-6.83.4.tar.gz
Algorithm Hash digest
SHA256 27116d1e5adcf7af3eefec6f1ce4ddf7d6b803804d7877a6d80a1f4dd2afcd4c
MD5 3bcc4a39234bfd5df5f648ba25a47701
BLAKE2b-256 b19bc9fa6b153d5621905ebcba1b928f21e63446a948a094ae7b25fa818269bb

See more details on using hashes here.

File details

Details for the file shareddata-6.83.4-py3-none-any.whl.

File metadata

  • Download URL: shareddata-6.83.4-py3-none-any.whl
  • Upload date:
  • Size: 349.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for shareddata-6.83.4-py3-none-any.whl
Algorithm Hash digest
SHA256 339f7e0f307c11127289ce145d670d9487f67f7427517bf11956a33036c6db7b
MD5 333598ff0411f8a51cd45aecf8ff41cb
BLAKE2b-256 fc9bfa6d76bc22411f8d0e74e759158cbf209f0a930b6920381d5d76efdb77ac

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