Crunch is a Java Library for MapReduce Pipelines that implements FlumeJava: Easy, Efficient Data-Parallel Pipelines. The FlumeJava model requires types at every stage.