Bonobo is an Extract Transform Load (or ETL) framework for the Python (3.5+) language.

It works by streaming data through a directed acyclic graph of python callables, one row at a time.

It is targeting small scale data (as in “not big data”), allowing it to be quick and easy to install (no client-server, no daemon, lightweight requirements, no surprises).

Most common file formats (XML, CSV, JSON, Excel, ...) and basic services (SQL databases, REST web services, ...) can be worked with using the built-in or extension libraries, other services can benefit the richness of PyPI.

In short, Bonobo contains the logic to execute efficiently an ETL process, the glue to use plain old python ojects and common operations, readers and writers. For the rest, it's just python!

Bonobo is currently released as alpha version. Expect some APIs to change.

Documentation

Table of contents