Currently, generating map-markers visualizations for our largest studies is slow. The two parts of the algorithm that can be parallelized that I want to target initially are:
Reading data and de-serializing it from binary to java objects
Merging filtered data streams and mapping and mapping them up the tree (and everything else)
The reason for targeting number 1 is because concurrency can easily be added without modifying any of our interfaces. This can be done by asynchronously reading ID, Value pairs in FilteredValueIterator and buffering them in-memory before they are requested by upstream iterators.
Acceptance Criteria
FilteredValueIterator asynchronously computes Id, Value pairs and buffers them in memory before they are requested
Overview
Currently, generating map-markers visualizations for our largest studies is slow. The two parts of the algorithm that can be parallelized that I want to target initially are:
The reason for targeting number 1 is because concurrency can easily be added without modifying any of our interfaces. This can be done by asynchronously reading ID, Value pairs in
FilteredValueIterator
and buffering them in-memory before they are requested by upstream iterators.Acceptance Criteria