Skip to main content

Plover: Parallel In-Memory Database Logging on Scalable Storage Devices

  • Conference paper
  • First Online:
Book cover Web and Big Data (APWeb-WAIM 2018)

Abstract

Despite the prevalence of multi-core processors and large main memories, most in-memory databases still universally adopt a centralized ARIES-logging with a single I/O channel, which can be a serious bottleneck. In this paper, we propose a parallel logging mechanism, named \(\texttt {Plover}\) for in-memory databases, which utilizes the partial order property of transactions’ dependencies and allows for concurrent logging in scalable storage devices. To further alleviate the performance overheads caused by log partitioning, we present a workload-aware log partitioning scheme to minimize the number of cross-partition transactions, while maintaining load balance. As such, \(\texttt {Plover}\) can scale well with the increasing number of storage devices and extensive experiments show that \(\texttt {Plover}\) with workload-aware partitioning can achieve  \(2\times \) speedup over a centralized logging scheme and more than 42% over \(\texttt {Plover}\) with random partitioning.

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

References

  1. Mohan, C., Haderle, D., Lindsay, B., Pirahesh, H., Schwarz, P.: ARIES: a transaction recovery method supporting fine-granularity locking and partial rollbacks using write-ahead logging. TODS 17(1), 94–162 (1992)

    Article  Google Scholar 

  2. Johnson, R., Pandis, I., Stoica, R., Manos, A.: Aether: a scalable approach to logging. VLDB 3(1–2), 681–692 (2010)

    Google Scholar 

  3. Kim, K., Wang, T.Z., Johnson, R., et al.: Ermia: fast memory-optimized database system for heterogeneous workloads. In: SIGMOD, pp. 1675–1687 (2016)

    Google Scholar 

  4. Lamport, L.: Time, clocks, and the ordering of events in a distributed system. Commun. ACM 21(7), 558–565 (1978)

    Article  Google Scholar 

  5. Andreev, K., Racke, H.: Balanced graph partitioning. Theor. Comput. Syst. 39(6), 929–939 (2006)

    Article  MathSciNet  Google Scholar 

  6. Zheng, W.T., Tu, S.: Fast databases with fast durability and recovery through multicore parallelism. In: OSDI, pp. 465–477 (2014)

    Google Scholar 

  7. Huang, J., Schwan, K., Qureshi, M.K.: NVRAM-aware logging in transaction systems. PVLDB 8(4), 389–400 (2014)

    Google Scholar 

  8. Wang, T.Z., Johnson, R., Stoica, R., Manos, A.: Scalable logging through emerging non-volatile memory. PVLDB 7(10), 865–876 (2014)

    Google Scholar 

  9. Arulraj, J., Perron, M., Pavlo, A.: Write-behind logging. PVLDB 10(4), 337–348 (2016)

    Google Scholar 

  10. Jung, H., Han, H., Kang, S.: Scalable database logging for multicores. PVLDB 11(2), 135–148 (2017)

    Google Scholar 

Download references

Acknowledgement

This work is partially supported by National High-tech R&D Program (863 Program) under grant number 2015AA015307, National Key Research & Development Program of China (No. 2018YFB1003400), National Science Foundation of China under grant numbers 61702189, 61432006 and 61672232.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Weining Qian .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2018 Springer International Publishing AG, part of Springer Nature

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Zhou, H., Guo, J., Pei, O., Qian, W., Zhou, X., Zhou, A. (2018). Plover: Parallel In-Memory Database Logging on Scalable Storage Devices. In: Cai, Y., Ishikawa, Y., Xu, J. (eds) Web and Big Data. APWeb-WAIM 2018. Lecture Notes in Computer Science(), vol 10988. Springer, Cham. https://doi.org/10.1007/978-3-319-96893-3_3

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-96893-3_3

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-96892-6

  • Online ISBN: 978-3-319-96893-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics