I am working on an application that runs on multiple clients that talk to one main MySQL database. Additionally, we have a web application that uses the same MySQL database.
Due to latency issues, all clients will have to run their own local MySQL database which should be a copy of the main MySQL database. The web application remains to use the main MySQL database.
The clients only read from table A, and write to table B. The web application writes both to tables A and B.
How should I setup a replication scheme that ensures data consistency? It should be possible for clients to go offline for an extended period of time. Is this even possible using MySQL or am I better of having a look at something like CouchDB? CouchDB seems to support this explicitly according to the website:
it allows for users and servers to access and update the same shared data while disconnected and then bi-directionally replicate those changes later