Presented by:

4327055f5cebef343e46341d95f944af

Abbas Butt

EnterpriseDB

Abbas Butt (abbas.butt@enterprisedb.com) is a Senior Software Architect at EnterpriseDB.

  • Currently working on
    • Migration Portal for online schema migration from Oracle to PostgreSQL
    • xDB Replication Server
  • Previously worked on
    • XA Compliance for PostgreSQL
    • Porting a Telecom operator's Tuxedo based application from Oracle to PPAS
    • Postgres-XC
    • Packages for IBM DB2
      • UTL_ENCODE
      • UTL_TCP
      • UTL_SMTP
      • UTL_MAIL
    • Hospital Management System
    • Tele-medicine & Video Conferencing
    • Electronic Stethoscope
    • Accounts Management System
    • Payphone Management System
    • IVR based Telecom Billing System
    • Voice Communication System
    • Mobile Observer Unit Automation
    • 8051 micro controller based payphone

https://pk.linkedin.com/in/abbasbutt

No video of the event yet, sorry!

#Replication in PostgreSQL - Deep Dive

The objective of this tutorial is to familiarize the participants with replication in PostgreSQL. Specifically this tutorial will focus on what approaches are available and how to use them. For each replication approach that is available in PostgreSQL the participants will learn how to configure a two node cluster using that approach and how to perform failover in case of a failure. The participants will also learn which approach will suite their particular use case while deploying PostgreSQL in their organization.

The tutorial will cover the following topics:

  • 1. What is Replication
  • 2. Why use Replication
  • 3. Models of Replication (Single Master & Multi Master)
  • 4. Classes of Replication (Unidirectional, Bidirectional)
  • 5. Modes of Replication (Asynchronous & Synchronous)
  • 6. Types of Replication (Physical & Logical)
    1. Methods Of Replication
    • 7.1 Disk Based Replication
      • 7.1.1 Setup
      • 7.1.2 Configuring PostgreSQL Replication using NAS with RAID-1
      • 7.1.3 Steps to perform Failover
    • 7.2 File System Based
      • 7.2.1 Setup
      • 7.2.2 Configuring PostgreSQL Replication using DRBD with Protocol C
      • 7.2.3 Steps to perform Failover
    • 7.3 Trigger Based
      • 7.3.1 Introduction to Slony-I
      • 7.3.2 Advantages and Disadvantages of Trigger Based Method
      • 7.3.3 Setup
      • 7.3.4 Configuring PostgreSQL Replication using Slony-I
    • 7.4 Introduction to WAL
      • 7.4.1 What is WAL and Why is it required
      • 7.4.2 Structure of WAL
      • 7.4.3 Layout of WAL Segments
      • 7.4.4 WAL Writing
      • 7.4.5 Checkpoint Processing
      • 7.4.6 WAL Segment File Management
      • 7.4.7 Replication Slots
      • 7.4.8 Configuration parameters related to WAL & Replication
      • 7.4.9 System Administration Functions related to WAL & Replication
    • 7.5 Log Shipping Based - File Level
      • 7.5.1 Continous Archiving
      • 7.5.2 Setup
      • 7.5.3 Configuring PostgreSQL Replication using WAL Shipping or Continous archiving
      • 7.5.4 Steps to perform Failover
    • 7.6 Log Shipping Based - Block Level
      • 7.6.1 Physical Streaming Replication
      • 7.6.2 Physical Replication Slots
      • 7.6.3 Useful System Administration Functions
      • 7.6.4 WAL Sender & WAL Receiver
      • 7.6.5 WAL Streaming Protocol Details
      • 7.6.6 Setup
      • 7.6.7 Configuring PostgreSQL Replication using WAL Streaming
      • 7.6.8 Steps to perform Failover
    • 7.7 Logical Decoding Based
      • 7.7.1 Logical Replication Slots
      • 7.7.2 Role of plugin and slots
      • 7.7.3 test_decoding and pg_recvlogical
      • 7.7.4 Other decoders & consumers
      • 7.7.5 Publication & Subscription
      • 7.7.6 Setup
      • 7.7.7 Configuring PostgreSQL Replication using Logical Decoding
      • 7.7.8 Comparison of Physical and Logical Replication
    • 7.8 Statement Based
      • 7.8.1 Introduction to pgpool-II
      • 7.8.2 Setup
      • 7.8.3 Configuring PostgreSQL replication using pgpool-II
    • 8. Other possibilities

Date:
2019 March 19 13:00
Duration:
3 h
Room:
Sutton Place
Conference:
Postgres Conference
Language:
Track:
Ops and Administration
Difficulty:
Medium