Scientific Programming

Scientific Programming / 2005 / Article
Special Issue

Dynamic Grids and Worldwide Computing

View this Special Issue

Open Access

Volume 13 |Article ID 962135 |

Rob Pike, Sean Dorward, Robert Griesemer, Sean Quinlan, "Interpreting the Data: Parallel Analysis with Sawzall", Scientific Programming, vol. 13, Article ID 962135, 22 pages, 2005.

Interpreting the Data: Parallel Analysis with Sawzall

Received30 Dec 2005
Accepted30 Dec 2005


Very large data sets often have a flat but regular structure and span multiple disks and machines. Examples include telephone call records, network logs, and web document repositories. These large data sets are not amenable to study using traditional database techniques, if only because they can be too large to fit in a single relational database. On the other hand, many of the analyses done on them can be expressed using simple, easily distributed computations: filtering, aggregation, extraction of statistics, and so on. We present a system for automating such analyses. A filtering phase, in which a query is expressed using a new procedural programming language, emits data to an aggregation phase. Both phases are distributed over hundreds or even thousands of computers. The results are then collated and saved to a file. The design – including the separation into two phases, the form of the programming language, and the properties of the aggregators – exploits the parallelism inherent in having data and computation distributed across many machines.

Copyright © 2005 Hindawi Publishing Corporation. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

More related articles

 PDF Download Citation Citation
 Order printed copiesOrder

Article of the Year Award: Outstanding research contributions of 2020, as selected by our Chief Editors. Read the winning articles.