Skip to content
rgwch edited this page Feb 23, 2015 · 3 revisions

SQL databases were great when Elexis was initially developed. They are fast and reliable. But there are some drawbacks.

  • Backup takes time and ist not done frequently, because it slows down the work of the running clients
  • Mirroring ist difficult and expensive
  • Since Elexis is an extensible system, there is frequently need for additions to the database or modifications of the layout. Such things are difficult and error prone.
  • Scaling is difficult
  • Moving data from one system to another is difficult. Combining of two ore more databases is almost impossible without manual modifications.
  • The SQL way to access our kind of data is somewhat "unnatural": An electronic medical record is a "document" with a number of enclosed subdocuments. SQL enforces us to scatter it over a number of tables and rows. This makes sharing of data and enforcing different access rights difficult.

NoSQL Databases, on the other hand

  • Treat documents as documents: Collections of different data, not necessarily the same data types in all documents.
  • Can easily adapt to changes in the data model.
  • Can mirror easily one or many times
  • can load balance requests between different instances
  • Moving data from one system to another ist easy. Combination of two or more databases is easy and can be done automatically.