Book Image

PostgreSQL Replication, Second Edition

Book Image

PostgreSQL Replication, Second Edition

Overview of this book

Table of Contents (22 chapters)
PostgreSQL Replication Second Edition
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

Understanding sets


So far, the entire cluster has been used. Everybody was able to replicate data to everybody else. In many cases, this is not what is desired. BDR provides quite some flexibility in this area.

Unidirectional replication

BDR can perform not only bidirectional replication but also unidirectional replication. In some cases, this can be very handy. Consider a system that is just there to serve some reads. A simple unidirectional slave might be what you need.

BDR provides a simple function to register a node as a unidirectional slave:

bdr.bdr_subscribe(local_node_name,
  subscribe_to_dsn,
  node_local_dsn,
  apply_delay integer DEFAULT NULL,
  replication_sets text[] DEFAULT ARRAY['default'],
  synchronize bdr_sync_type DEFAULT 'full')

Of course, it is also possible to remove a node from unidirectional replication again:

bdr.bdr_unsubscribe(local_node_name)

The setup process is fairly simple and fits nicely into BDR's fundamental design principles.

Handling data tables

The beauty of...