Skip to main content

SDK for interacting with the PVSite database

Project description

pvsite-datamodel

Database schema specification for PV Site data.

Repository structure

pvsite_datamodel:
  read: # Sub package containing modules for reading from the database
  write: # Sub package containing modules for writing to the database
  - connection.py # Class for connecting to the database
  - sqlmodels.py # SQLAlchemy definitions of table schemas
tests: # External tests package

Top-level functions

Classes specifying table schemas:

  • SiteSQL
  • GenerationSQL
  • ForecastSQL
  • ForecastValueSQL
  • ClientSQL
  • StatusSQL

Database connection objects:

  • DatabaseConnection

Read package functions

Currently available functions accessible via from pvsite_datamodel.read import <func>:

  • get_pv_generation_by_client
  • get_pv_generation_by_sites
  • get_site_by_uuid
  • get_site_by_client_site_id
  • get_site_by_client_site_name
  • get_all_sites
  • get_latest_status
  • get_latest_forecast_values_by_site

Write package functions

Currently available write functions accessible via from pvsite_datamodels.write import <func>:

  • insert_generation_values

Install the dependencies (requires poetry)

poetry install

Coding style

Format the code in place.

make format

Lint the code

make lint

Running the tests

make test

Database migrations using alembic

./alembic

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

pvsite_datamodel-0.1.35.tar.gz (9.8 kB view hashes)

Uploaded Source

Built Distribution

pvsite_datamodel-0.1.35-py3-none-any.whl (12.5 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page