First, please allow me to explains our business setup as below:
HQ <------> Regional Head Offices <------> Branch offices
HQ has a group level consolidated database that contains all branch offices data.
Regional Head Offices has a consolidated database that contains all branch offices data within the region.
Branch office has a single database contains some master data and transactional data that belong to the branch office, and the branch office has unstable or unreliable internet connectivity.
Now, I have a requirement to
- replicate/push master data from HQ to all the branch offices only when required.
- replicate/push branch’s transactional data from HQ to an individual branch office only when required.
- replicate/push transactional data from branch offices back to HQ every day.
Should I use Couchbase server or Couchbase lite at branch offices?
What is the method of replication?
I am welcome for any recommendation.
The branch offices with their intermittent connectivity will each need their own Couchbase Server cluster. Couchbase Lite is for mobile devices – you would use that if you were writing native Android or iOS applications.
The regional offices and HQ could share a Couchbase Server cluster, assuming regional office connectivity is okay. I’d start there if possible and see if it meets your performance requirements.
Data replication can happen as follows:
Master data: HQ --> local branches
Transaction data: local branches --> HQ
The replication can always be active, but you can enable or disable it as needed through scripting.
Thank you very much for your promptly replied.
In term of XDCR replication, can Couchbase enterprise edition (at HQ) replicate to community edition (at branch offices) with filtering capabilities? The reason is branch office only store subset of HQ records.
I am evaluating whether Crunchbase can fulfill the business requirement in term of functionality and cost-effectiveness.
Couchbase Enterprise Edition does have XDCR with filtering, so you can use that to control what data is replicated from HQ to local branches in your case.
Maybe others in the community can speak to operating with different versions of Couchbase Server. XDCR between clusters running different versions is possible as that is one of the Upgrade Options, but I don’t have experience running like that for an extended period of time.