R. Avnur, J. Hellerstein, "Eddies: Continuously Adaptive Query Processing", SIGMOD 2000
Group Comments
.. to be written..
...to be written...
... to be written...
Nesime's Comments:
1. The level of granularity: tuple-by-tuple. Is it the right level?
2. The approach relies on the abundance of moments of symmetry and
absence of synchronization barriers in a query execution which is hard
to achieve with most of the join algorithms.
3. Window length used in lottery approach is important. How is it determined?
Maybe it should be dynamically adjustable, too. (may need to use learning
techniques)
4. It does not consider buffer restrictions. Does the state info to
be kept ever cause buffer problems? How is it handled?
5. The effect of static pre-optimization decisions has to be analyzed.
The approach probably adapts, but may take longer if the pre-opt. query
plan is very bad.
6. It is not clear to me how does an eddy decide to take in new inputs
from outside?
7. Page 6: Bits should be ANDed, not ORed??
Experimentation Methodology:
1. naive eddy with fluid dynamics
two selections with constant and equal selectivity
cost of one of them is varying in time
eddy can adapt to doing the cheaper first
2. fast eddy with lottery mechanism which learns the change in selectivities
two selections with constant and equal cost
selectivity of one of them is varying in time
naive eddy can not adapt since fluid dynamics does not
work
lottery eddy can adapt by prioritizing selections according
to how fast they consume and produce result
3. performance of joins (two relations, three relations)
comparison with all possible orderings
4. dynamic fluctuations
rate of input from sources are changing (slow and fast
mode)
5. measure delay in delivery, compare with static plans