Flux Research Group / School of Computing

A Workflow-based Notebook Interface for Experiments in CloudLab and POWDER

Axe Tang

Bachelors Thesis , University of Utah. 2024.

areas
Languages, Testbeds

abstract

Notebooks, because of their interactive nature and portability, have been widely used in both academia and industry to build experimental processes, encode workflows for data analysis, and present results. Researchers have even used notebooks for conducting experiments on network testbeds. However, there are some limitations to this way of using notebooks. Although notebooks can encode workflows, the encoding is not flexible or capable of orchestrating complex experiments. Our hypothesis is that separating notebook workflow and experiment workflow allows users to better coordinate experiment steps, explore different procedures of an experiment, and benefit from the portability and reliability of workflow systems. To test our hypothesis, we built a novel workflow-based notebook interface for conducting experiments in CloudLab and POWDER. This interface, which incorporates a DSL for workflow description, an execution manager, and distributed execution engines, allows fine-grained control over experimental procedures, complex orchestration, and fault-recovery ability from a notebook. We demonstrate and evaluate our prototype by converting a selection of POWDER experiments to notebook-based experiments, and we present lessons learned.