AQL Performance benchmarks in EHRBase

One of the problems that we observed in Ethercis was a rapid deterioration of performance, especially AQL as the number of compositions increased. Has this been addressed in EHRBase?

Has anybody done any performance benchmarks on EHRBase?

I think @pablo was working on EHRBase test cases, not sure if they covered performance

We did some great improvements on caching. Now, EHRbase directly scales along with postgres. Hence, if there is a need for performance optimization (e.g. setting additional indexes), this can be directly done on postgres level.

We don’t have a benchmark at the moment, but we definitely should make one.

I don’t know if anyone is doing it (or maybe everyone is), but my first design for an AQL processor (15y ago!) had a special index column containing archetype ids and possibly paths of each Composition (= Composition thumbnail) in the Composition table. If that is implemented correctly, most row visits result in no Composition retrieve, because the archetype ids and paths in the query can be checked against that index.

That can be taken further with hashing and other tricks used in high-performance text searching, and of course queries should be precompiled.

And that is before we even get to pipelined query sets, which IMO are a better approach than nested queries for iteratively processing result sets.