Skip to content
Pooyan Jamshidi edited this page Aug 7, 2016 · 15 revisions


Bayesian Optimization for Configuration Optimization (BO4CO) is an extensible auto-tuning tool for Big Data systems. Big data applications typically are developed with several technologies (e.g., Apache Storm, Hadoop, Spark, Cassandra) each of which has typically dozens of configurable parameters that should be carefully tuned in order to perform optimally. BO4CO helps end users of big data systems such as data scientists or SMEs to automatically tune their systems.


The following figure illustrates components of BO4CO: (i) optimization component, (ii) experimental suite, (iii) and a data broker. The architecture of the tool is extensible in the sense that the optimization component can be enhanced with new search and optimization algorithms (currently we have implemented a novel method based on Bayesian Optimization with Gaussian Process prior, see references). Moreover, the experimental suite can be extended to support different technologies (currently the tool supports Apache Storm, Hadoop, Cassandra).

BO4CO architecture


If you notice a bug, want to request a feature, or have a question or feedback, please send an email to the tool maintainer:

Pooyan Jamshidi, Imperial College London,


The code is published under the FreeBSD License.