Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor