Skip to main content

Creating Distributed Execution Plans with BobolangNG

  • Conference paper
  • First Online:
Algorithms and Architectures for Parallel Processing (ICA3PP 2016)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 10048))

  • 1693 Accesses

Abstract

Execution plans constitute the traditional interface between DBMS front-ends and back-ends; similar networks of interconnected operators are found also outside database systems. Tasks like adapting execution plans for distributed or heterogeneous runtime environments require a plan transformation mechanism which is simple enough to produce predictable results while general enough to express advanced communication schemes required for instance in skew-resistant partitioning. In this paper, we describe the BobolangNG language designed to express execution plans as well as their transformations, based on hierarchical models known from many environments but enhanced with a novel compile-time mechanism of component multiplication. Compared to approaches based on general graph rewriting, the plan transformation in BobolangNG is not iterative; therefore the consequences and limitations of the process are easier to understand and the development of distribution strategies and experimenting with distributed plans are easier and safer.

F. Zavoral—This paper was supported by the Czech Science Foundation (GAČR) project P103-14-14292P and by the Charles University Grant Agency (GAUK) project PRVOUK-P46.

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 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight 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

Notes

  1. 1.

    https://pig.apache.org/.

References

  1. Bruno, N., Kwon, Y., Wu, M.C.: Advanced join strategies for large-scale distributed computation. Proc. VLDB Endow. 7(13), 1484–1495 (2014). http://dx.doi.org/10.14778/2733004.2733020

    Article  Google Scholar 

  2. Falt, Z., Bednárek, D., Kruliš, M., Yaghob, J., Zavoral, F.: Bobolang: a language for parallel streaming applications. In: Proceedings of the 23rd International Symposium on High-Performance Parallel and Distributed Computing, pp. 311–314. ACM (2014)

    Google Scholar 

  3. Isard, M., Budiu, M., Yu, Y., Birrell, A., Fetterly, D.: Dryad: distributed data-parallel programs from sequential building blocks. In: ACM SIGOPS Operating Systems Review, vol. 41, pp. 59–72. ACM (2007)

    Google Scholar 

  4. Ke, Q., Isard, M., Yu, Y.: Optimus: a dynamic rewriting framework for data-parallel execution plans. In: Proceedings of the 8th ACM European Conference on Computer Systems, pp. 15–28. ACM (2013)

    Google Scholar 

  5. Neumeyer, L., Robbins, B., Nair, A., Kesari, A.: S4: distributed stream computing platform. In: Proceedings of the IEEE International Conference on Data Mining Workshops (ICDMW), pp. 170–177. IEEE (2010)

    Google Scholar 

  6. Levandoski, J.J., Eldawy, A., Mokbel, M.F., Khalefa, M.E.: Flexible and extensible preference evaluation in database systems. ACM Trans. Database Syst. (TODS) 38(3), 17 (2013)

    Article  MathSciNet  Google Scholar 

  7. Murray, D.G., McSherry, F., Isaacs, R., Isard, M., Barham, P., Abadi, M.: Naiad: a timely dataflow system. In: Proceedings of the Twenty-Fourth ACM Symposium on Operating Systems Principles, pp. 439–455. ACM (2013)

    Google Scholar 

  8. Murray, D.G., Schwarzkopf, M., Smowton, C., Smith, S., Madhavapeddy, A., Hand, S.: Ciel: a universal execution engine for distributed data-flow computing. In: Proceedings of 8th ACM/USENIX Symposium on Networked Systems Design and Implementation, pp. 113–126 (2011)

    Google Scholar 

  9. Murray, D.G., Hand, S.: Scripting the cloud with skywriting. HotCloud 10, 12 (2010)

    Google Scholar 

  10. Nagendra, M., Candan, K.S.: Efficient processing of skyline-join queries over multiple data sources. ACM Trans. Database Syst. (TODS) 40(2), 10 (2015)

    Article  MathSciNet  Google Scholar 

  11. Oscar, B., Sam, R., Ian, O., Jimmy, L.: Summingbird: a framework for integrating batch and online mapreduce computations. Proc. VLDB Endow. 7(13), 1441–1451 (2014)

    Article  Google Scholar 

  12. Gulisano, V., Jimenez-Peris, R., Patino-Martinez, M., Valduriez, P.: Streamcloud: a large scale data streaming system. In: Proceedings of the 30th International Conference on Distributed Computing Systems (ICDCS), pp. 126–137. IEEE (2010)

    Google Scholar 

  13. Van Emden, M.H., Kowalski, R.A.: The semantics of predicate logic as a programming language. J. ACM 23(4), 733–742 (1976). http://doi.acm.org/10.1145/321978.321991

    Article  MathSciNet  MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to David Bednárek .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2016 Springer International Publishing AG

About this paper

Cite this paper

Bednárek, D., Kruliš, M., Yaghob, J., Zavoral, F. (2016). Creating Distributed Execution Plans with BobolangNG. In: Carretero, J., Garcia-Blas, J., Ko, R., Mueller, P., Nakano, K. (eds) Algorithms and Architectures for Parallel Processing. ICA3PP 2016. Lecture Notes in Computer Science(), vol 10048. Springer, Cham. https://doi.org/10.1007/978-3-319-49583-5_6

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-49583-5_6

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-49582-8

  • Online ISBN: 978-3-319-49583-5

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics