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.
- 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
- Clone the repository:
git clone https://github.com/dunderlab/python-django-timescaledbapp.git
cd python-django-timescaledbapp- Install the required dependencies:
pip install -r requirements.txt- Configure your database settings in the
settings.pyfile:
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',
}
}- Add the required apps to
INSTALLED_APPSin thesettings.pyfile:
INSTALLED_APPS = [
'django_extensions',
'rest_framework',
'dunderlab.django.timescaledbapp.apps.TimeScaleDBConfig',
]- Include the TimeScaleDB App URLs in your project's
urls.pyfile:
urlpatterns = [
path("timescaledbapp/", include('dunderlab.django.timescaledbapp.urls')),
]- Apply the migrations:
python manage.py migrate- Start the development server:
python manage.py runserverYou can now access the TimeScaleDB App API at http://localhost:8000/.
/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
If you'd like to contribute to TimeScaleDB App, please follow these steps:
- Fork the repository
- Create a new branch for your feature or bugfix
- Commit your changes to your branch
- Push your branch to your fork
- Submit a pull request with a detailed description of your changes
We appreciate your contributions and will review them as soon as possible.
TimeScaleDB App is released under the MIT License.
