TDBRepl - The Trivial DataBase Replication System

Architecture Overview

TDBRepl consists of three components, two of which are exposed to the user -
A multi-threaded daemon is used to process and service peer-to-peer database 
replication requests, a library that provides applications replicated database 
access through a published API in a seemless and opaque way and a thread-safe 
interface to tdb which is only used internally.

Read requests are serviced by a local database on disk for performance
reasons while write/modify/delete requests are sent to each node over
the network. If a node is unavailable, the request is placed into a
transaction log which is automatically replayed when the daemon detects
that the node has returned. An API function is also available to 
force a flush of the log.

The suite of software allows replication of databases to any number
of servers over TCP/IP. Access control for each database is provided
by a shared 'secret password' which is supplied with each database 
request to ensure only authorised nodes can modify/access data.

Architecture Diagram

architecture diagram


Last update: Thursday, 22-May-2008 01:24:07 UTC