Skip to content

sajjadghf/lectures-database

Repository files navigation

📚 DATABASE WORKSHOP — ZERO TO HERO (FOR DEVOPS ENGINEERS)

Complete course materials organized by module


📖 Course Structure

Module 1 — Fundamentals module-01-fundamentals.md

Section 1: Introduction to Databases

  • What Is a Database?
  • Why DevOps Engineers Need Database Knowledge
  • Common Database Use Cases
  • OLTP vs OLAP Systems
  • ACID Basics

Section 2: Types of Databases

  • Database Classification Overview
  • Relational Databases (RDBMS)
  • NoSQL Databases — Types & Use Cases
  • SQL vs NoSQL: When to Choose What
  • CAP Theorem

Section 3: Core SQL Concepts

  • Tables, Rows, Columns
  • Primary Keys & Foreign Keys
  • Understanding Indexes
  • Basic SQL Operations (CRUD)
  • Joins, Aggregations & Conditions
  • Transactions & Locking

Module 2 — PostgreSQL Practical Foundations module-02-postgresql-practical.md

Section 4: Running Databases Locally

  • Installing PostgreSQL (Optional)
  • Running PostgreSQL Using Docker
  • Connecting to PostgreSQL (CLI & GUI)
  • PostgreSQL Directory Structure
  • Using psql & Running Basic Queries
  • Creating Tables, Users & Databases
  • Basic Indexing & Query Plans
  • Lab: Build Your First Database

Module 3 — Storage & Infrastructure module-03-storage-infrastructure.md

Section 5: Storage Fundamentals

  • Filesystems for Databases (ext4, xfs, zfs)
  • IOPS, Throughput & Latency
  • SSD vs HDD for Databases
  • RAID Levels
  • WAL (Write-Ahead Log) Deep Dive
  • Persistence & Durability Guarantees

Section 6: Kubernetes & Containers

  • Stateless vs Stateful Applications
  • PVs, PVCs, StorageClasses
  • StatefulSets for Databases
  • Anti-Patterns to Avoid
  • PostgreSQL Operators
  • Lab: Deploy PostgreSQL on Kubernetes

Module 4 — High Availability & Replication module-04-high-availability.md

Section 7: High Availability Concepts

  • What Is High Availability?
  • HA vs Failover vs DR
  • Primary/Replica Architecture
  • Synchronous vs Asynchronous Replication
  • Understanding Replication Lag
  • Hot Standby & Read Scaling

Section 8: Replication & Cluster Management

  • PostgreSQL Replication Types
  • Physical vs Logical Replication
  • Sharding & Horizontal Scaling
  • Cluster Topologies
  • Load Balancing Database Traffic
  • Lab: Configure Primary–Replica Setup

Module 5 — Backup, Recovery & DR module-05-backup-recovery.md

Section 9: Backups

  • Logical Backups (pg_dump, pg_restore)
  • Physical Backups (pg_basebackup)
  • Continuous Archiving (WAL Archiving)
  • Backup Scheduling & Retention Policies
  • Verifying Backup Integrity
  • Off-Site Backups & Cloud Storage

Section 10: Recovery & DR

  • Point-In-Time Recovery (PITR)
  • Switchover vs Failover
  • Disaster Recovery Strategies
  • Multi-Region Database Deployments
  • Lab: Perform a PITR Recovery

Module 6 — Performance & Observability module-06-performance-observability.md

Section 11: Performance Tuning

  • Understanding Execution Plans (EXPLAIN)
  • Index Optimization (BTREE, HASH, GIN, GiST)
  • Query Optimization Techniques
  • PostgreSQL Memory Settings
  • Vacuum & Autovacuum
  • Connection Pooling (PgBouncer)

Section 12: Monitoring & Observability

  • Key PostgreSQL Metrics
  • Monitoring Locks, Wait Events & Sessions
  • Monitoring Replication
  • Prometheus Exporters
  • Grafana Dashboards
  • Alerting Best Practices
  • Lab: Build a Monitoring Dashboard

Module 7 — Security & Integrations module-07-security-caching.md

Section 13: Security & Hardening

  • Roles, Permissions & User Management
  • SSL/TLS in PostgreSQL
  • Secrets Management (Vault, K8s Secrets)
  • Encryption at Rest & in Transit
  • Security Best Practices Checklist

Section 14: Caching Systems

  • Why Caching Improves Performance
  • Redis vs Memcached
  • Caching Patterns (Write-Through, Write-Back, Write-Around)
  • Cache Invalidation Strategies
  • Using Redis for Sessions, Queues & Rate Limiting
  • Lab: Integrate PostgreSQL with Redis

Module 8 — Schema Management & Production module-08-schema-production.md

Section 15: Schema Management

  • Version-Controlled Schema Changes
  • Zero-Downtime Migrations
  • Using Flyway / Liquibase / Alembic
  • Migration Rollbacks & Safeguards

Section 16: Real Production Scenarios

  • Handling Slow Queries
  • Troubleshooting High CPU & I/O
  • Fixing Connection Storms
  • Solving Long-Running Transactions
  • Dealing With Replication Breaks
  • Deadlock Detection & Prevention
  • Incident Response Playbooks
  • Lab: Solve a Real Outage Scenario

Module 9 — Polyglot Persistence module-09-polyglot-persistence.md

Section 17: Modern Database Landscape

  • When to Choose PostgreSQL
  • When to Use NoSQL (MongoDB, Cassandra, DynamoDB)
  • Search Engines: Elasticsearch & OpenSearch
  • Analytical DBs: ClickHouse, BigQuery, Snowflake
  • Data Lakes vs Databases
  • Decision Framework

Module 10 — CAPSTONE PROJECT module-10-capstone-project.md

Section 18: From Zero to Hero Project

  • Design Production-Ready Architecture
  • Implement HA + Replication
  • Add Monitoring & Alerting
  • Integrate Caching System
  • Run Backup + Restore Drills
  • Optimize Queries & Indexes
  • Deliver Final Presentation

About

lectures-database

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors