Skip to main content

A Python client for Sucolo's database services.

Project description

Sucolo Database Services

A Python package providing database services for the Sucolo project, including Elasticsearch and Redis clients with additional utilities for data processing and analysis.

Features

  • Elasticsearch client integration
  • Redis client integration
  • Data processing utilities
  • H3 geospatial indexing support
  • Type-safe data handling with Pydantic

Requirements

  • Python 3.11
  • Poetry for dependency management

Installation

  1. Clone the repository:
git clone https://github.com/yourusername/sucolo-database_services.git
cd sucolo-database_services
  1. Install dependencies using Poetry:
poetry install
  1. Set up your environment variables in .env file:
# Example .env configuration
ELASTICSEARCH_HOST=localhost
ELASTICSEARCH_PORT=9200
REDIS_HOST=localhost
REDIS_PORT=6379

Development

Code Style

This project uses several tools to maintain code quality:

  • Black for code formatting
  • Flake8 for linting
  • MyPy for type checking
  • isort for import sorting

Run the following command to format and check the code:

make format

Testing

Run tests using pytest:

make test

Project Structure

sucolo_database_services/
├── elasticsearch_client/  # Elasticsearch client implementation
├── redis_client/         # Redis client implementation
├── utils/                # Utility functions and helpers
├── tests/                # Test suite
└── db_service.py         # Main database service implementation

Dependencies

Main dependencies:

  • elasticsearch
  • redis
  • pandas
  • geopandas
  • h3
  • pydantic
  • python-dotenv

License

[Add your license information here]

Contributing

[Add contribution guidelines here]

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

sucolo_database_services-0.1.1.tar.gz (14.7 kB view details)

Uploaded Source

Built Distribution

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

sucolo_database_services-0.1.1-py3-none-any.whl (18.5 kB view details)

Uploaded Python 3

File details

Details for the file sucolo_database_services-0.1.1.tar.gz.

File metadata

  • Download URL: sucolo_database_services-0.1.1.tar.gz
  • Upload date:
  • Size: 14.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.3.2 CPython/3.9.13 Linux/5.15.90.1-microsoft-standard-WSL2+

File hashes

Hashes for sucolo_database_services-0.1.1.tar.gz
Algorithm Hash digest
SHA256 eec469b438b059f4f404f4d94fbf9369502a8fd43b6f48d7f9baa3ed0f9c8f7b
MD5 c5bce3a22de6c3c0b9f002f4b94d293b
BLAKE2b-256 59a49b055c4094e301bb042de247583c0993665aab00e18da51e1b404e791bac

See more details on using hashes here.

File details

Details for the file sucolo_database_services-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: sucolo_database_services-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 18.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.3.2 CPython/3.9.13 Linux/5.15.90.1-microsoft-standard-WSL2+

File hashes

Hashes for sucolo_database_services-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 cc234ce0dce37e3d6a76e98aef0e99e7656e11a8d782a0c552f2a6f8c6a35cab
MD5 50d0fe2169f21dffb3afe473e693fbb0
BLAKE2b-256 e7c3965ad0ed3e6270357d07cacdca6d225e8b9298378f6acd324fbcbeafca73

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