Skip to main content

Django TimeScale DB App

Project description

TimeScaleDB App

TimeScaleDB App is a Django-based web application that provides an API for managing and querying time-series data. This application utilizes RealTimeDB, a time-series database built atop PostgreSQL, for efficient storage and analysis of time-series data. With custom pagination classes and viewsets, the TimeScaleDB App delivers a powerful and flexible way to interact with Source, Measure, Channel, and TimeSerie models.

Features

  • API endpoints for managing and querying time-series data
  • Custom pagination classes for more efficient data retrieval
  • Custom viewset mixin enabling creation of multiple objects
  • Grouping and aggregation of TimeSerie objects by channel
  • Computation of various statistics for aggregated time-series data

Getting Started

Installation

  1. Clone the repository:
git clone https://github.com/dunderlab/python-django-timescaledbapp.git
cd python-django-timescaledbapp
  1. Install the required dependencies:
pip install -r requirements.txt

Configuration

  1. Configure your database settings in the settings.py file:
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql',
        'NAME': 'your_database_name',
        'USER': 'your_database_user',
        'PASSWORD': 'your_database_password',
        'HOST': 'your_database_host',
        'PORT': 'your_database_port',
    }
}
  1. Add the required apps to INSTALLED_APPS in the settings.py file:
INSTALLED_APPS = [
    'django_extensions',
    'rest_framework',
    'dunderlab.django.timescaledbapp.apps.TimeScaleDBConfig',
]
  1. Include the TimeScaleDB App URLs in your project's urls.py file:
urlpatterns = [
    path("timescaledbapp/", include('dunderlab.django.timescaledbapp.urls')),
]

Execution

  1. Apply the migrations:
python manage.py migrate
  1. Start the development server:
python manage.py runserver

You can now access the TimeScaleDB App API at http://localhost:8000/.

API Endpoints

  • /sources/: View or edit sources
  • /measures/: View or edit measures
  • /channels/: View or edit channels
  • /timeseries/: View or edit time series with custom behavior for listing and paginating time series data
  • /chunk/: Handle chunks

Contributing

If you'd like to contribute to TimeScaleDB App, please follow these steps:

  1. Fork the repository
  2. Create a new branch for your feature or bugfix
  3. Commit your changes to your branch
  4. Push your branch to your fork
  5. Submit a pull request with a detailed description of your changes

We appreciate your contributions and will review them as soon as possible.

License

TimeScaleDB App is released under the MIT License.

Database model

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

dunderlab-timescaledbapp-0.1.12.tar.gz (24.3 kB view details)

Uploaded Source

Built Distribution

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

dunderlab_timescaledbapp-0.1.12-py3-none-any.whl (28.9 kB view details)

Uploaded Python 3

File details

Details for the file dunderlab-timescaledbapp-0.1.12.tar.gz.

File metadata

File hashes

Hashes for dunderlab-timescaledbapp-0.1.12.tar.gz
Algorithm Hash digest
SHA256 9ee8fb70330dfec501dc910adf00954509decddf167da416868ba6ce627c53c7
MD5 e765f86b88d7237f9862e76d195a0c84
BLAKE2b-256 423ecbef788f612977c50537f22802e3fc6e7f7f70f7076546b2d6f102704410

See more details on using hashes here.

File details

Details for the file dunderlab_timescaledbapp-0.1.12-py3-none-any.whl.

File metadata

File hashes

Hashes for dunderlab_timescaledbapp-0.1.12-py3-none-any.whl
Algorithm Hash digest
SHA256 238688afd3860ae47201cae4926d371bd4dfd7c642e4088da410cfa8882e38bb
MD5 0702f3bac21154181ce8ee6d8b009684
BLAKE2b-256 1d936096a9a5a846e90588a044ac4f515b7947fc9fe3e60918c5e8fb09004118

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