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.13.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.13-py3-none-any.whl (28.9 kB view details)

Uploaded Python 3

File details

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

File metadata

File hashes

Hashes for dunderlab-timescaledbapp-0.1.13.tar.gz
Algorithm Hash digest
SHA256 9a1f3b84dfde3c1e4b388c36df16950721324ca9396cf17922ae2ad3fd055073
MD5 e03118f49f5e1d7e5b088d5e1bad133b
BLAKE2b-256 f4c8553652e6e1991cfc39d07df9bf644e2c25867379541d628ec64e7916f2b3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dunderlab_timescaledbapp-0.1.13-py3-none-any.whl
Algorithm Hash digest
SHA256 ff909aa591b23b39aed5b908cdb0c86509323610364fb0c544ff6a0377c80c1a
MD5 c0f3ede0e5779e0a7b5dd2517d71c8fb
BLAKE2b-256 b875b64bfd1ab2c816a0b4c4bcdd181352a752743b55c145d9ef9bed70d294c0

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