Database Replication System Design