Related Roadmaps Find the detailed version of this roadmap
along with resources and other roadmaps
MongoDB Roadmap PostgreSQL
Backend Roadmap https://roadmap.sh
Important Note / Click here
What are Relational Databases?
RDBMS Benefits and Limitations
Introduction
PostgreSQL vs Other RDBMS
Queries
PostgreSQL vs NoSQL Databases
Data Types
Rows Columns Using Docker
Tables Schemas
Package Managers
Managing Postgres
Databases
Using `systemd`
Object Model Basic RDBMS Concepts Installation and Setup
Using `pg_ctl`
Using `pg_ctlcluster`
Connect using `psql`
Relational Model High Level Database Concepts
Deployment in Cloud
Domains Attributes ACID MVCC Transactions
Tuples Relations Write-ahead Log
Constraints NULL Query Processing Learn SQL Concepts
DDL Queries DML Queries
Resources Usage
For Schemas Querying Data
Reporting Logging and Statistics
Write-ahead Log
For Tables Filtering Data
Vacuums
Following postgres.conf Data Types Modifying Data
Configuring PostgreSQL
Replication
configurations and more
Joining Tables
Query Planner
Import / Export using `COPY`
Adding Extra Extensions
Checkpoints
Advanced Topics
Background Writer
Transactions CTE
Default Privileges
Subqueries Lateral Join
Grant / Revoke
Grouping Set Operations
Object Priviliges
Authentication Models
Roles pg_hba.conf Postgres Security Concepts
Logical Replication
SSL Settings
Streaming Replication
Advanced Topics
Replication
Row-Level Security
SELinux
PgBouncer
Resource Usage and Provisioning, Capacity Planning PgBouncer Alternatives
Develop Infrastructure Skills Connection Pooling
Kubernetes Deployment Cluster Management Upgrade Procedures Backup / Recovery Tools
Simple Stateful Setup Patroni Using `pg_upgrade` 3rd Party Builtin Tools
Helm Operators Patroni Alternatives Using Logical Replication
barman WAL-G pg_dump pg_dumpall
Anonymization Load Balancing & Service Discovery Monitoring
pgbackrest pg_restore
Prometheus Zabbix
HAProxy Consul pg_probackup pg_basebackup
PostgreSQL Anonymizer
check_pgactivity
KeepAlived Etcd Backup Validation Procedures
temBoard
check_pgbackrest
Learn to Automate Routines Application Skills Advanced Topics
Shell Scripts Migrations
Low Level Internals
Any Programming Language Practical Patterns and Antipatterns
Processes and memory architecture
Terraform liquibase, sqitch, Bytebase, ora2pg etc
Vacuum Processing
Migration Tools
Bu!er Management
Configuration Management Bulk Loading and Processing Data
Lock Management
Ansible Salt Chef Puppet Data Partitioning Sharding Patterns
Physical Storage and File Layout
Data Normalization / Normal Forms
System Catalog
Queues
Postgres System Views
Fine Grained Tuning
Practical Patterns and Antipatterns
pg_stat_activity
Per-user, Per-Database Settings
Skytools PGQ
pg_stat_statements
Storage Parameters
Postgres Tools
Workload-dependant tuning: OLTP, OLAP, HTAP
pgcenter
Operating System Tools
Advanced SQL
Query Analysis top sysstat iotop
PL/pgSQL Procedures and Functions
EXPLAIN Depesz Profiling Tools
Triggers Recursive CTE
PEV2 Tenser gdb strace ebpf
Aggregate and window functions
explain.dalibo.com perf-tools Core Dumps
Troubleshooting Methods Log Analysis
USE RED pgBadger pgCluu
Troubleshooting Techniques
Golden Signals awk grep sed
B-Tree Hash GiST
Schema Design Patterns / Anti-patterns
Indexes and their Usecases SQL Optimization Techniques SQL Query Patterns / Anti-patterns
SP-GiST GIN BRIN Mailing Lists
Get Involved in Development
Reviewing Patches
Writing Patches
Keep Learning