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 Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

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

shareddata-6.79.1-py3-none-any.whl (415.9 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for shareddata-6.79.1-py3-none-any.whl
Algorithm Hash digest
SHA256 b8eebb371bec8c82ea05de2c42138486b5aacee0d5c72e256a3ad843c1d0d52f
MD5 452d434ba7bcd998ce9be39edc049854
BLAKE2b-256 8d3a283019a4828f2302aa0c6ae26ae76f3e7caef51130acdc17f29528f0e332

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