Abstract

Intra-query fault tolerance has increasingly been a concern for online analytical processing, as more and more enterprises migrate data analytical systems from mainframes to commodity computers. Most massive parallel processing (MPP) databases do not support intra-query fault tolerance. They may suffer from prolonged query latency when running on unreliable commodity clusters. While SQL-on-Hadoop systems can utilize the fault tolerance support of low-level frameworks, such as MapReduce and Spark, their cost-effectiveness is not always acceptable. In this paper, we propose a smart intra-query fault tolerance (SIFT) mechanism for MPP databases. SIFT achieves fault tolerance by performing checkpointing, i.e., materializing intermediate results of selected operators. Different from existing approaches, SIFT aims at promoting query success rate within a given time. To achieve its goal, it needs to: (1) minimize query rerunning time after encountering failures and (2) introduce as less checkpointing overhead as possible. To evaluate SIFT in real-world MPP database systems, we implemented it in Greenplum. The experimental results indicate that it can improve success rate of query processing effectively, especially when working with unreliable hardware.

Highlights

  • Massive parallel processing (MPP) databases are popular data platforms for enterprise and scientific data analysis

  • We propose a smart intra-query fault tolerance (SIFT) mechanism for MPP databases

  • We show how SIFT enables Greenplum to achieve a certain degree of intra-query fault tolerance while preserving its performance in query processing

Read more

Summary

Introduction

Massive parallel processing (MPP) databases are popular data platforms for enterprise and scientific data analysis. Fault tolerance of query processing has become increasingly important to MPP databases. Commodity clusters are much less reliable than mainframes, such that databases have to deal with system failures proactively. We provide an overview about the architecture of MPP database Typical MPP databases usually adopt a shared-nothing architecture [2], composed of one master node and n slave nodes. The master node is responsible for interacting with clients, managing the whole cluster and coordinating the query processing. Each of the n salve nodes is responsible for storing a partition of the data and performing query processing on its partition.

Objectives
Methods
Conclusion
Full Text
Paper version not known

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.