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

Uploaded Python 3

File details

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

File metadata

  • Download URL: shareddata-6.83.7.tar.gz
  • Upload date:
  • Size: 344.2 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.7.tar.gz
Algorithm Hash digest
SHA256 959278688e66c1b85097c47323a3875f39441a67b3ab75f8efc135a9a64e959d
MD5 4a65f03207b47edad6f75215234a5059
BLAKE2b-256 414583afc980b6dd45982a7c0505156f50d85f73b65230a21fafae06962abcae

See more details on using hashes here.

File details

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

File metadata

  • Download URL: shareddata-6.83.7-py3-none-any.whl
  • Upload date:
  • Size: 348.5 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.7-py3-none-any.whl
Algorithm Hash digest
SHA256 f536ed10d320e6fb08857a34b8a63fd46fd557ac020bbfaf0d0a60753ead5624
MD5 2d87009d797e1d49ed79daa93e4bf3bd
BLAKE2b-256 c39be54ff4b0be9a30f344482a610e26ef995b08af405cd58dd0e1e322c52af8

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