Hadoop Vectored IO: your data just got faster!
06-20, 14:50–15:30 (Europe/Berlin), Maschinenhaus

We are introducing a new Hadoop Filesystem API called "vectored read" using which we can achieve significant speedups for all big data applications, especially in cloud storage like S3 and ABFS.


Since 2006 the world of big data has moved from terabytes to hundreds of petabytes, from local clusters to remote cloud storage, yet the original Apache Hadoop posix-based file APIs have barely changed.

It is wonderful that these APIs have worked so well, but we can do a lot better with remote object stores, by providing new operations which suit them better, targeted at columnar data libraries such as ORC and Parquet. Only a few libraries need to migrate to these APIs for significant speedups of all big data applications.

This talk introduces a new Hadoop Filesystem API called "vectored read", coming in Hadoop 3.4. An extension of the classic FSDataInputStream it is automatically offered by all filesystem clients.
The S3A connector is the first object store to provide a custom implementation, reading different blocks of data in parallel. In Apache Hive benchmarks with a modified ORC library, we saw a 2x speedup compared to using the classic s3a connector through the Posix APIs.

We will introduce the API spec, the S3A implementation, and the benchmarks, and show how to use it in your own applications. We will also cover our ongoing work on providing similar speedups with other object stores, and the use of the API in other applications.

See also: Slides (932.6 KB)

Steve Loughran is a developer at Cloudera where he focuses on Hadoop and Cloud Integration. Prior to joining Cloudera he was a research scientist at HP Laboratories, where he was involved in the early Ubiquitous Computing/Wearable Computing work. This is why the failure of the smart home is such a disappointment. For fun he falls off bicycles -which is why he spent December 2021 shouting at lightbulbs while waiting for his broken collarbone to heal.

This speaker also appears in: