はじめに 今回は、Apache Hadoop上で動作する並列データ処理系Apache Tezについて解説します。 MapReduceの制約 本連載第13回で述べたように、Hadoop MapReduceは、MapとReduceからなる単純なインタフェースを有し、多くのデータ処理を記述できる汎用的な並列データ処理系(フレームワーク)である反面、その単純さによりいくつかの性能的な課題が存在すると考えられます。 たとえば、複雑なジョブをMapReduceで実行する場合、MapとReduceからなるMapReduceジョブを複数段連ねて実行する必要があります(図1)。当該ケースにおいては、MapReduceジョブの間において、分散ファイルシステムを介したデータの入出力が行われてしまい、当該入出力は、性能の観点においてはオーバーヘッドであるため、ジョブの実行時間を長くする原因の1つとなりえます。
![第16回 並列データ処理系 Apache Tez | gihyo.jp](https://cdn-ak-scissors.b.st-hatena.com/image/square/cd09bc83c4879217a10dcebdad73fce873ecd41d/height=288;version=1;width=512/https%3A%2F%2Fgihyo.jp%2Fassets%2Fimages%2FICON%2F2015%2F1379_howhadoopworks.png)