Django Tutorial: Run Multi-Node Django for Time Series Data with TimescaleDB, Celery and more.

CodingEntrepreneurs July 10, 2024
Video Thumbnail
CodingEntrepreneurs Logo

CodingEntrepreneurs

@codingentrepreneurs

About

Learn, Build, and Earn. Coding Entrepreneurs is here to help you learn the skills you need to build the projects you want. Learn by doing everything we do step-by-step. Practical and hands-on. Let's do this. 💽 Code: https://github.com/codingforentrepreneurs 🚀 Enroll. Learn to code. Launch your project: https://cfe.sh/enroll 🚀

Video Description

Run many iterations of Django across Docker Compose or Raspberry Pis to handle large amounts of time series data. Topics: ✅ Python & Django ✅ Setup Django Project ✅ Integrate Self-Hosted TimescaleDB with Django ✅ Integrate Timescale.com Cloud with Django ✅ Use TimescaleDB with django-timescaledb ✅ Integrate Django & Celery ✅ Django Celery Task to Generate Fake Data ✅ Using a Beat Server to run tasks on a schedule (e.g. every 5 seconds) ✅ Learn how to use Celery Task Queues for Individual Worker Nodes ✅ Run multiple Django instances through Docker Compose to emulate a multi-node production environment ✅ Docker Compose Watch to Auto Refresh Django Container ✅ Multi-Node Django+Celery Running on Docker Compose ✅ Configure Raspberry Pi OS for local network connection ✅ Use Ansible to Configure Pi Cluster for Django ✅ Integrate Production TimescaleDB across Docker Compose, Raspberry PIs, and a local Django project. ✅ TimescaleDB Queries and API Responses ✅ Visualizing Data with TimescaleDB and Chart.js ✅ Customize Python Decouple for multiple dotenv Environment Variable files 💽 Code: https://github.com/codingforentrepreneurs/django-iot-with-timescaledb 🕹️ Links: - Blog Post for Dockerfile: https://cfe.sh/blog/deploy-django-on-railway-with-this-dockerfile/ - django-timescaledb package: https://github.com/jamessewell/django-timescaledb If you like this course, consider: - SaaS Foundations -- Learn about integrating Django with Stripe, User Permissions, GitHub Actions, and much more: https://youtu.be/WbNNESIxJnY - Build Full Stack Web Apps in Pure Python with Reflex - A great challenge would be to use Reflex as a replacement for Next.js: https://youtu.be/ITOZkzjtjUA Thank you to Timescale for sponsoring this course - sign up at https://www.timescale.com/?utm_source=cfe 🚀 Enroll now on https://cfe.sh/enroll 🚀 00:00:00 - Welcome 00:02:44 - Demo 00:07:12 - Requirements 00:10:15 - Setup Django Project 00:16:03 - Priority Dotenv Helper for Python Decouple 00:22:55 - TimescaleDB via Docker Compose 00:34:42 - Integrate TimescaleDB with Django 00:45:51 - Create a TimescaleDB model with django-timescaledb 00:53:17 - Running Code outside the Request Response Cycle with Django and Celery 00:57:33 - Integrate Django & Celery 01:04:50 - Django Celery Task to Generate Fake Data 01:13:45 - Auto Schedule Tasks with Celery Beat 01:19:12 - Celery Task Queues for Individual Worker Nodes 01:29:52 - Django Project within Docker Compose 01:41:54 - Docker Compose Watch to Auto Refresh Django Container 01:47:02 - Multi-Node Celery Running on Docker Compose 01:56:00 - Configure Raspberry Pi OS for your Pi Cluster 02:03:01 - Verify Pi Installation and Create Ansible Inventory File 02:09:42 - Using Ansible to Configure our Pi Cluster for Django 02:41:10 - Production TimescaleDB 02:52:24 - Timescale DB Queries and API Responses 03:05:11 - Additional TimescaleDatabase Queries 03:13:05 - Visualizing Average Temperature Over Time 03:17:18 - Visualizing Average Temperature Per Node Over Time 03:23:36 - Thank you and next steps