# Design question -- which DB solution is best

**URL:** <https://forums.percona.com/t/design-question-which-db-solution-is-best/6038>\
**Category:** Other MySQL® Questions\
**Created:** [November 30, 2017, 1:38pm UTC](https://forums.percona.com/t/design-question-which-db-solution-is-best/6038 "2017-11-30T13:38:23Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![Bob565656](https://avatars.discourse-cdn.com/v4/letter/b/85e7bf/32.png) [@Bob565656](https://forums.percona.com/u/Bob565656)\
**Post date:** [November 30, 2017, 1:38pm UTC](https://forums.percona.com/t/design-question-which-db-solution-is-best/6038/1 "2017-11-30T13:38:23Z")

</div>

Hello,

I currently have a 3-node MariaDB Galera cluster, servicing an application. We are looking to have this application active in four DCs. The following are the requirements of the new setup  
[LIST]  
[_]each site may be independently active  
[_]all DB data is to be available on every cluster at each DC  
[_]if replication (or sync) fails between one DC and another, both DCs shall continue to operate independently until replication is able to start up again (ie no split brain)  
[_]self sustained (no manual intervention required at any time)  
[_]ideally would like to have automatic collision handling  
[_]ideally would like an RDBMS solution (as we’re using jOOQ for Java)  
[/LIST] Things we can tolerate  
[LIST]  
[_]slave lag is acceptable  
[_]ACID not required  
[\*]as long as the data “syncs at some point”, it’s good enough  
[/LIST]Glossary  
3NC = 3 node cluster  
DC = data center

Research done so far:  
[LIST]  
[_]MYSQL group replication  
[LIST]  
[_]closest thing to what I need, however, it’s not recommended for WAN  
[_]only supports 9 nodes  
[/LIST]  
[_]MariaDB Galera (3NC at each DC, part of one global cluster)  
[LIST]  
[_]synchronous replication between 4 DCs is out of the question  
[_]if a DC drops out, it’s unusable  
[/LIST]  
[_]MariaDB Galera (independent 3NC at each DC, using bidirectional MYSQL replication between each DC)  
[LIST]  
[_]difficult to deal with auto increments and offsets, especially when adding new DCs or nodes  
[_]if there is any problem (like collision), replication fails and becomes a pain to start again  
[/LIST]  
[_]MYSQL NDB Cluster  
[LIST]  
[_]engine change from InnoDB, would rather not do that  
[_]downed data nodes may have to be brought up manually, the backup mechanism seems like a pain  
[_]on paper, geographical replication would work best for my requirements  
[/LIST]  
[_]Percona XtraDB Cluster  
[LIST]  
[\*]from what I can tell, it doesn’t support what I’m trying to do  
[/LIST]  
[/LIST] Do other SQL setups have a solution, maybe PostgreSQL?
