OpenEMR high availability at the DB level

yaronbs wrote on Monday, December 05, 2016:

We are currently working on a large scale adaptation of OpenEMR. High availability concerns need to be addressed.
I was contemplating the use of Galera cluster over MariaDB, but have come accross several limitations, here are the main ones:

  • All tables must have primary keys (I know some do not, but htis can be fixed)
  • All tables must be based on innodb (almost all of them already are)
  • the system must tolorate auto increment fields that may produce non-sequential values
  • some unsupported explicit locking staements
    More details can be found here:
    https://mariadb.com/kb/en/mariadb/mariadb-galera-cluster-known-limitations.

There are more than a 100 tables with auto increment fields which appear many times in the codebase.
Does anyone have an idea whether or not these fields can tolerate non-sequential values?

Coming to the same issue from another angle, can anyone recommend a MySQL/MariaDB high availability solution that is relatively simple, up to date (such as Galera) and proven to work with OpenEMR in a production environment under a somewhat heavy load?
I was looking at GTID replication as an alternative that is less elegant but has less limitations that OpenEMR may stumble upon.

I would very much like to hear the community’s input on this issue.

visolveemr wrote on Tuesday, December 06, 2016:

Please find the link to download these documents from our website resources section: http://hc.visolve.com/#vi-resources

· Hardening OpenEMR in Cloud (AWS)

· Deploying OpenEMR with multiple instance in Cloud (AWS)

· High Availability of OpenEMR in Cloud (AWS)

In addition to this, we are also working on a Technical Document/Paper titled “ How to secure DATA at REST in Cloud (AWS) which we assume may be useful to you.

Thanks,

ViSolve OpenEMR Support Team
Email: services@visolve.com
Phone: 408 850 2243

yaronbs wrote on Tuesday, December 06, 2016:

Thanks for the reference. I see you decided to go with MySQL replication without multi-master if I understand correctly, which means just one server is active at any given time.
One question regarding file sycnhronization: if we use couchdb, this is not required, right?

Hello @yaronbs,

we are thinking the posibility to install openemr 5.0.2 with Galera cluster over MariaDB.
At the end, did you the installation with Galera cluster over MariaDB? Can you tell us your experiencies about this?

Thank in avanced.

@yaronbs any update?

Also it looks like the Visolve link was broken, here is a working link to what looks like the same docs: https://www.visolve.com/knowledge-hub/resources-healthcare-it.html