
3.2. Evaluated Approaches
In order to keep its interactivity, ForeCache uses prefetching to dynamically load chunks
of data. It therefore works with multiple models to predict which chunks to fetch and in
which order. The first model is the momentum model, which assumes that a user is likely
to continue its operation in the spatial view. ATLAS uses a similar assumption [Chan et al.
2008]. Secondly, ForeCache integrates the hotspot model. This model uses tracking data
of past user sessions and identifies popular chunks of data that were queried more often
than others. Using this data, a hotspot data chunk to the right of the current view could be
fetched earlier than a data chunk below of the current view, even if the momentum of the
operation points downwards.
As a third model, ForeCache applies the n-gram model. It tries to identify probable
interaction patterns by storing and analyzing past interactions as word sequences, or
n-grams. ForeCache currently uses 2-length and 3-length n-grams, which could be ("down",
"right") and ("down", "down", "right") respectively. Note that ForeCache is built to handle
spatial data, which is why the directions represent the directions of panning in the data.
The n-gram model thus tries to predict popular interaction patterns and load chunks of
data accordingly.
Two more models used by ForeCache are the normal model and the histogram model.
Their goal is to predict how users can move between clusters of chunks, which is not fully
handled by the previous models. Both of them use statistical methods to achieve this goal.
We will not discuss those models in detail because they specifically aim at spatial data and
not at time series data.
Which chunks are prefetched at a specific point of time is determined by combining the
results of all five prediction models. Each model ranks the possible chunks to load in a list.
These lists then get merged into a final ranking, which determines the chunks to be loaded
from the backend. Users may assign weights to the models, which specify their impact on
the final ranking. Thus, the system provides functionality to modify the prefetch process
based on personal experience.
3.2.4 The Customized D3-Wrapper CanvasPlot
CanvasPlot is introduced in Section 2.5. The scope of the following text is to evaluate it
based on the criteria described above.
Users can navigate in the displayed time series charts. Zooming by mouse wheel allows
them to analyze different temporal resolutions of data, however, data is not dynamically
fetched based on the zoom level. It also enables semantic zooming like LiveRAC (see
Section 3.2.1). In this case, CanvasPlot shows boxes with detail information on each data
point, whenever there are very few data points displayed. If there are too many data points
displayed to show detail boxes on each point, then those boxes disappear. Panning left and
right helps to navigate within one specific temporal resolution level.
Real-time functionality is added by another wrapper, built into the Titan Control Center.
The Wrapper is requesting the latest data from the server in constant intervals. This interval
is currently set to 1000 milliseconds. If new data points are available they are inserted into
17