BlinkDB: queries with bounded errors and bounded response times on very large data

  • Authors:
  • Sameer Agarwal;Barzan Mozafari;Aurojit Panda;Henry Milner;Samuel Madden;Ion Stoica

  • Affiliations:
  • University of California, Berkeley;Massachusetts Institute of Technology;University of California, Berkeley;University of California, Berkeley;Massachusetts Institute of Technology;Conviva Inc. and University of California, Berkeley

  • Venue:
  • Proceedings of the 8th ACM European Conference on Computer Systems
  • Year:
  • 2013

Quantified Score

Hi-index 0.00

Visualization

Abstract

In this paper, we present BlinkDB, a massively parallel, approximate query engine for running interactive SQL queries on large volumes of data. BlinkDB allows users to trade-off query accuracy for response time, enabling interactive queries over massive data by running queries on data samples and presenting results annotated with meaningful error bars. To achieve this, BlinkDB uses two key ideas: (1) an adaptive optimization framework that builds and maintains a set of multi-dimensional stratified samples from original data over time, and (2) a dynamic sample selection strategy that selects an appropriately sized sample based on a query's accuracy or response time requirements. We evaluate BlinkDB against the well-known TPC-H benchmarks and a real-world analytic workload derived from Conviva Inc., a company that manages video distribution over the Internet. Our experiments on a 100 node cluster show that BlinkDB can answer queries on up to 17 TBs of data in less than 2 seconds (over 200 x faster than Hive), within an error of 2-10%.