Study how to develop flexible programming systems for data-intensive Cloud applications.
To process large data sets, it is attractive to use both local resources (PCs, clusters) and external clouds, which are ideally suited for handling peak loads. Because cloud users pay per resource use, applications should not just be able to scale up, but rather they should adapt themselves to whatever scale is most cost- effective, including scaling down to fewer resources. This is called ``elastic scalability’’. We propose to develop programming systems that allow applications to scale elastically between varying numbers of localand cloud resources.
Develop a set of programming systems for elastic computing environments, based on Ibis (which supports malleability through Satin, JEL, and Zorilla). Implement applications such as distributed reasoning (with P23) and N-body simulations (astronomy). Extend the work beyond scientific applications by also applying it to mobile systems, for example offloading work from smart phones to Clouds. Do controlled performance experiments on DAS-4 and larger-scale experiments on other grids and cloud systems, taking (a.o.) scalability, efficiency, network stress, ease-of-use, and energy consumption into account.