Abstract | ||
---|---|---|
We present an approach to declaratively manage run-time errors in data-intensive applications. When large volumes of raw data meet complex third-party libraries, deterministic run-time errors become likely, and existing query processors typically stop without returning a result when a run-time error occurs. The ability to degrade gracefully in the presence of run-time errors, and partially execute jobs, is typically limited to specific operators such as bulkloading. We generalize this concept to all operators of a query processing system, introducing a novel data type "partial result with errors" and corresponding operators. We show how to extend existing error-unaware operators to support this type, and as an added benefit, eliminate side-effect based error reporting. We use declarative specifications of acceptable results to control the semantics of error-aware operators. We have incorporated our approach into a declarative query processing system, which compiles the language constructs into instrumented execution plans for clusters of machines. We experimentally validate that the instrumentation overhead is below 20% in microbenchmarks, and not detectable when running I/O-intensive workloads. |
Year | DOI | Venue |
---|---|---|
2012 | 10.1145/2213836.2213860 | SIGMOD Conference |
Keywords | Field | DocType |
declarative specification,robust data-intensive application,declarative error management,partial result,novel data type,error reporting,acceptable result,deterministic run-time error,run-time error,declarative query processing system,query processing system,query processor,fault tolerant,exception handling,fault tolerance,big data,error handling,data type,side effect | Data mining,Computer science,Exception handling,Language construct,Raw data,Data type,Fault tolerance,Operator (computer programming),Big data,Semantics,Database | Conference |
Citations | PageRank | References |
2 | 0.38 | 13 |
Authors | ||
2 |
Name | Order | Citations | PageRank |
---|---|---|---|
Carl-christian Kanne | 1 | 644 | 53.20 |
Vuk Ercegovac | 2 | 592 | 34.79 |