Skip to main content

Incremental Approximate Computing

  • Reference work entry
  • First Online:
Book cover Encyclopedia of Big Data Technologies

Abstract

Approximate computing is increasingly used for speeding up computations and efficiently utilizing the computing resources. The idea behind approximate computing is to return an approximate answer instead of the exact answer for user queries. The trick is to choose a representative sample of the data for computing instead of using the entire data. As a result, it 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. At the same time, another technique called incremental computing tries to achieve the same goals as approximate computing, i.e., speeding up job execution and utilizing resource efficiently. Incremental computing relies on the memoization of intermediate results of sub-computations and reusing these memoized results across jobs. This work makes the observation that these two computing paradigms are complementary and can be married together! The idea is quite simple: design a sampling algorithm that biases the sample selection to the memoized data items from previous runs. To realize this idea, an online stratified sampling algorithm is designed. The algorithm uses self-adjusting computation to produce an incrementally updated approximate output with bounded error. The algorithm is implemented in a data analytics system called IncApprox.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 849.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Hardcover Book
USD 999.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  • Acar UA (2005) Self-adjusting computation. PhD thesis, Carnegie Mellon University

    Google Scholar 

  • Acar UA, Cotter A, Hudson B, Türkoğlu D (2010) Dynamic well-spaced point sets. In: Proceedings of the 26th annual symposium on computational geometry (SoCG)

    Google Scholar 

  • Agarwal S, Mozafari B, Panda A, Milner H, Madden S, Stoica I (2013) Blinkdb: queries with bounded errors and bounded response times on very large data. In: Proceedings of the ACM European conference on computer systems (EuroSys)

    Google Scholar 

  • Al-Kateb M, Lee BS (2010) Stratified reservoir sampling over heterogeneous data streams. In: Proceedings of the 22nd international conference on scientific and statistical database management (SSDBM)

    Google Scholar 

  • Angel S, Ballani H, Karagiannis T, O’Shea G, Thereska E (2014) End-to-end performance isolation through virtual datacenters. In: Proceedings of the USENIX conference on operating systems design and implementation (OSDI)

    Google Scholar 

  • Bhatotia P (2015) Incremental parallel and distributed systems. PhD thesis, Max Planck Institute for Software Systems (MPI-SWS)

    Google Scholar 

  • Bhatotia P, Wieder A, Akkus IE, Rodrigues R, Acar UA (2011a) Large-scale incremental data processing with change propagation. In: Proceedings of the conference on hot topics in cloud computing (HotCloud)

    Google Scholar 

  • Bhatotia P, Wieder A, Rodrigues R, Acar UA, Pasquini R (2011b) Incoop: MapReduce for incremental computations. In: Proceedings of the ACM symposium on cloud computing (SoCC)

    Google Scholar 

  • Bhatotia P, Dischinger M, Rodrigues R, Acar UA (2012a) Slider: incremental sliding-window computations for large-scale data analysis. In: Technical Report: MPI-SWS-2012-004

    Google Scholar 

  • Bhatotia P, Rodrigues R, Verma A (2012b) Shredder: GPU-accelerated incremental storage and computation. In: Proceedings of USENIX conference on file and storage technologies (FAST)

    Google Scholar 

  • Bhatotia P, Acar UA, Junqueira FP, Rodrigues R (2014) Slider: incremental sliding window analytics. In: Proceedings of the 15th international middleware conference (Middleware)

    Google Scholar 

  • Bhatotia P, Fonseca P, Acar UA, Brandenburg B, Rodrigues R (2015) iThreads: a threading library for parallel incremental computation. In: Proceedings of the 20th international conference on architectural support for programming languages and operating systems (ASPLOS)

    Google Scholar 

  • Brodal GS, Jacob R (2002) Dynamic planar convex hull. In: Proceedings of the 43rd annual IEEE symposium on foundations of computer science (FOCS)

    Google Scholar 

  • Chiang YJ, Tamassia R (1992) Dynamic algorithms in computational geometry. In: Proceedings of the IEEE

    Book  Google Scholar 

  • Coles S (2001) An introduction to statistical modeling of extreme values. Springer, London/New York

    Book  MATH  Google Scholar 

  • Cormode G, Garofalakis M, Haas PJ, Jermaine C (2012) Synopses for massive data: samples, histograms, wavelets, sketches. Found Trends Databases 4(1–3): 1–294

    MATH  Google Scholar 

  • Dean J, Ghemawat S (2004) MapReduce: simplified data processing on large clusters. In: Proceedings of the USENIX conference on operating systems design and implementation (OSDI)

    Google Scholar 

  • Dziuda DM (2010) Data mining for genomics and proteomics: analysis of gene and protein expression data. Wiley, Hoboken

    Book  Google Scholar 

  • Efron B, Tibshirani R (1986) Bootstrap methods for standard errors, confidence intervals, and other measures of statistical accuracy. Stat Sci 1(1):54–75

    Article  MathSciNet  MATH  Google Scholar 

  • Ganapathi AS (2009) Predicting and optimizing system utilization and performance via statistical machine learning. In: Technical Report No. UCB/EECS- 2009-181

    Google Scholar 

  • Goiri I, Bianchini R, Nagarakatte S, Nguyen TD (2015) ApproxHadoop: bringing approximations to MapReduce frameworks. In: Proceedings of the twentieth international conference on architectural support for programming languages and operating systems (ASPLOS)

    Google Scholar 

  • Gunda PK, Ravindranath L, Thekkath CA, Yu Y, Zhuang L (2010) Nectar: automatic management of data and computation in datacenters. In: Proceedings of the USENIX conference on operating systems design and implementation (OSDI)

    Google Scholar 

  • He B, Yang M, Guo Z, Chen R, Su B, Lin W, Zhou L (2010) Comet: batched stream processing for data intensive distributed computing. In: Proceedings of the ACM symposium on cloud computing (SoCC)

    Google Scholar 

  • Hellerstein JM, Haas PJ, Wang HJ (1997) Online aggregation. In: Proceedings of the ACM SIGMOD international conference on management of data (SIGMOD)

    Google Scholar 

  • Isard M, Budiu M, Yu Y, Birrell A, Fetterly D (2007) Dryad: distributed data-parallel programs from sequential building blocks. In: Proceedings of the ACM European conference on computer systems (EuroSys)

    Google Scholar 

  • Kafka – A high-throughput distributed messaging system. http://kafka.apache.org. Accessed Nov 2017

  • Krishnan DR, Quoc DL, Bhatotia P, Fetzer C, Rodrigues R (2016) IncApprox: a data analytics system for incremental approximate computing. In: Proceedings of the 25th international conference on world wide web (WWW)

    Google Scholar 

  • Ley-Wild R, Acar UA, Fluet M (2009) A cost semantics for self-adjusting computation. In: Proceedings of the annual ACM SIGPLAN-SIGACT symposium on principles of programming languages (POPL)

    Google Scholar 

  • Liu S, Meeker WQ (2014) Statistical methods for estimating the minimum thickness along a pipeline. Technometrics 57(2):164–179

    Article  MathSciNet  Google Scholar 

  • Logothetis D, Olston C, Reed B, Web K, Yocum K (2010) Stateful bulk processing for incremental analytics. In: Proceedings of the ACM symposium on cloud computing (SoCC)

    Google Scholar 

  • Lohr S (2009) Sampling: design and analysis, 2nd edn. Cengage Learning, Boston

    MATH  Google Scholar 

  • Masud MM, Woolam C, Gao J, Khan L, Han J, Hamlen KW, Oza NC (2012) Facing the reality of data stream classification: coping with scarcity of labeled data. Knowl Inf Syst 33(1):213–244

    Article  Google Scholar 

  • Murray DG, McSherry F, Isaacs R, Isard M, Barham P, Abadi M (2013) Naiad: a timely dataflow system. In: Proceedings of the twenty-fourth ACM symposium on operating systems principles (SOSP)

    Google Scholar 

  • Olston C et al (2011) Nova: continuous pig/hadoop workflows. In: Proceedings of the ACM SIGMOD international conference on management of data (SIGMOD)

    Google Scholar 

  • Peng D, Dabek F (2010) Large-scale incremental processing using distributed transactions and notifications. In: Proceedings of the USENIX conference on operating systems design and implementation (OSDI)

    Google Scholar 

  • Popa L, Budiu M, Yu Y, Isard M (2009) DryadInc: reusing work in large-scale computations. In: Proceedings of the conference on hot topics in cloud computing (HotCloud)

    Google Scholar 

  • Quoc DL, Martin A, Fetzer C (2013) Scalable and real-time deep packet inspection. In: Proceedings of the 2013 IEEE/ACM 6th international conference on utility and cloud computing (UCC)

    Google Scholar 

  • Quoc DL, Yazdanov L, Fetzer C (2014) Dolen: user-side multi-cloud application monitoring. In: International conference on future internet of things and cloud (FICLOUD)

    Google Scholar 

  • Quoc DL, D’Alessandro V, Park B, Romano L, Fetzer C (2015a) Scalable network traffic classification using distributed support vector machines. In: Proceedings of the 2015 IEEE 8th international conference on cloud computing (CLOUD)

    Google Scholar 

  • Quoc DL, Fetzer C, Felber P, Rivière É, Schiavoni V, Sutra P (2015b) Unicrawl: a practical geographically distributed web crawler. In: Proceedings of the 2015 IEEE 8th international conference on cloud computing (CLOUD)

    Google Scholar 

  • Quoc DL, Beck M, Bhatotia P, Chen R, Fetzer C, Strufe T (2017a) Privacy preserving stream analytics: the marriage of randomized response and approximate computing. https://arxiv.org/abs/1701.05403

  • Quoc DL, Beck M, Bhatotia P, Chen R, Fetzer C, Strufe T (2017b) PrivApprox: privacy-preserving stream analytics. In: Proceedings of the 2017 USENIX conference on USENIX annual technical conference (USENIX ATC)

    Google Scholar 

  • Quoc DL, Chen R, Bhatotia P, Fetzer C, Hilt V, Strufe T (2017c) Approximate stream analytics in Apache Flink and Apache Spark streaming. CoRR, abs/1709.02946

    Google Scholar 

  • Quoc DL, Chen R, Bhatotia P, Fetzer C, Hilt V, Strufe T (2017d) StreamApprox: approximate computing for stream analytics. In: Proceedings of the international middleware conference (Middleware)

    Google Scholar 

  • The Apache Commons Mathematics Library. http://commons.apache.org/proper/commons-math. Accessed Nov 2017

  • Wieder A, Bhatotia P, Post A, Rodrigues R (2010a) Brief announcement: modelling MapReduce for optimal execution in the cloud. In: Proceedings of the 29th ACM SIGACT-SIGOPS symposium on principles of distributed computing (PODC)

    Google Scholar 

  • Wieder A, Bhatotia P, Post A, Rodrigues R (2010b) Conductor: orchestrating the clouds. In: Proceedings of the 4th international workshop on large scale distributed systems and middleware (LADIS)

    Google Scholar 

  • Wieder A, Bhatotia P, Post A, Rodrigues R (2012) Orchestrating the deployment of computations in the cloud with conductor. In: Proceedings of the 9th USENIX symposium on networked systems design and implementation (NSDI)

    Google Scholar 

  • Zaharia M, Das T, Li H, Hunter T, Shenker S, Stoica I (2013) Discretized streams: fault-tolerant streaming computation at scale. In: Proceedings of the twenty-fourth ACM symposium on operating systems principles (SOSP)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Do Le Quoc .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2019 Springer Nature Switzerland AG

About this entry

Check for updates. Verify currency and authenticity via CrossMark

Cite this entry

Quoc, D.L., Krishnan, D.R., Bhatotia, P., Fetzer, C., Rodrigues, R. (2019). Incremental Approximate Computing. In: Sakr, S., Zomaya, A.Y. (eds) Encyclopedia of Big Data Technologies. Springer, Cham. https://doi.org/10.1007/978-3-319-77525-8_151

Download citation

Publish with us

Policies and ethics