Run-Time Adaptation in River
ACM TOCS '03
We present the design, implementation, and evaluation of run-time adaptation
within the River dataflow programming environment. The goal of the River
system is to provide adaptive mechanisms that allow database query-processing
applications to cope with performance variations that are common in cluster
platforms. We describe the system and its basic mechanisms, and carefully
evaluate those mechanisms and their effectiveness. In our analysis, we answer
four previously unanswered and important questions. Are the core run-time
adaptive mechanisms effective, especially as compared to ideal? What are the
keys to making them work well? Can applications easily use these primitives?
And finally, are there situations in which run-time adaptation is not
sufficient? In performing our study, we utilize a three-pronged approach,
comparing results from idealized models of system behavior, targeted
simulations, and a prototype implementation. As well as providing insight on
the positives and negatives of run-time adaptation both specifically in River
and in a broader context, we also comment on the interplay of modeling,
simulation, and implementation in system design.
Full paper:
PDF
Bibtex