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.12.tar.gz (349.4 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.12-py3-none-any.whl (354.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: shareddata-6.83.12.tar.gz
  • Upload date:
  • Size: 349.4 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.12.tar.gz
Algorithm Hash digest
SHA256 666fa0cce1a3635f3b76509f77f39820a8b1634ab18ec1ab2f1ed3442c4593e1
MD5 45f5d291eda496a4c840e62a59ba3a74
BLAKE2b-256 109b55fc780180221b24d7fea3f9e35c5ca5bb5c5b660b4914d9c312921ad02d

See more details on using hashes here.

File details

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

File metadata

  • Download URL: shareddata-6.83.12-py3-none-any.whl
  • Upload date:
  • Size: 354.2 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.12-py3-none-any.whl
Algorithm Hash digest
SHA256 ad5ef651fab8fd34f59a81a4336dab1eb3a4c13a75cab3665c0bdf9aa5990361
MD5 df69802076a5966cbaf2e8e57f456b6b
BLAKE2b-256 e1113e2082b1bef55afa0e2a73b035570d16cc48deba3fe53e11e6185925ae64

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