Postgres Training

Get trained by experts.

Advanced PostgreSQL Administration: Scalability and High Availability

Course Description:

This intensive course is designed for senior database administrators and engineers focusing on advanced PostgreSQL features for scalability, high availability, and efficient data management. It includes comprehensive coverage of tools like Citus for horizontal scaling, pg_partman for automated partitioning, Pgpool-II and PgBouncer for connection pooling, and strategies for failover and recovery.

Target Audience:

  • Senior Database Administrators
  • System Architects
  • IT professionals with experience in PostgreSQL looking to specialize in high availability and scalability

Prerequisites:

  • Solid understanding of PostgreSQL fundamentals
  • Experience with database administration and basic PostgreSQL performance tuning
  • Familiarity with Linux system administration

Course Duration:

  • 32 Hours (4 days, full-time)
  • Mode of Delivery: Online / In-Person / Part-Time

Course Outline: Advanced PostgreSQL Administration: Scalability and High Availability

Module 1: Introduction to PostgreSQL Scalability

  • Challenges of scaling relational databases
  • Overview of horizontal vs. vertical scaling
  • Introduction to sharding and partitioning concepts

Module 2: Advanced Data Partitioning

  • Deep dive into PostgreSQL's native partitioning
  • Automating partition management with pg_partman
  • Use cases and best practices for data partitioning

Module 3: Scaling with Citus

  • Introduction to Citus and its architecture
  • Setting up a Citus cluster
  • Distributing data and queries across nodes
  • Advanced Citus features for performance optimization

Module 4: Connection Pooling and Management

  • Overview of connection pooling: benefits and when to use it
  • Configuring and managing PgBouncer for connection pooling
  • Setting up Pgpool-II for high availability and load balancing
  • Comparing PgBouncer and Pgpool-II: use cases and best practices

Module 5: High Availability and Failover Strategies

  • Understanding high availability concepts in PostgreSQL
  • Configuring replication for high availability: streaming replication and logical replication
  • Implementing failover mechanisms and promoting replicas
  • Tools and strategies for automatic failover management

Module 6: Backup and Disaster Recovery

  • Planning and implementing backup strategies
  • Point-in-time recovery (PITR) techniques
  • Disaster recovery planning and best practices

Module 7: Performance Tuning for Large-Scale Systems

  • Advanced indexing strategies for large datasets
  • Query optimization techniques for distributed systems
  • Monitoring and tuning PostgreSQL in high-load environments

Module 8: Security Considerations for Scalable Systems

  • Securing PostgreSQL clusters
  • Managing access control in distributed environments
  • Encryption in transit and at rest

Course Conclusion and Next Steps

  • Recap of key concepts and advanced tools
  • Planning for scalability and high availability in PostgreSQL deployments
  • Resources for further learning and exploration

Learning Outcomes:

Participants will gain in-depth knowledge and hands-on experience in managing and optimizing PostgreSQL for scalability and high availability. They will learn how to implement Citus for horizontal scaling, manage connection pooling with PgBouncer and Pgpool-II, automate data partitioning with pg_partman, and ensure robust failover and recovery strategies. This course prepares administrators to design and maintain scalable, high-performance PostgreSQL environments that meet the demands of large-scale, mission-critical applications.

This course structure aims to provide a blend of theoretical knowledge and practical skills, ensuring participants are well-equipped to tackle advanced PostgreSQL administration challenges.

Contact Us

Please contact us for any queries via phone or our contact form. We will be happy to answer your questions.

3 Appian Place,373 Kent Ave
Ferndale,
2194 South Africa
Tel: +2711-781 8014 (Johannesburg)
  +2721-020-0111 (Cape Town)
ZA

Contact Form

contactform.caption

Contact Form