SwingDB: An Embedded In-memory DBMS Enabling Instant Snapshot Sharing

  • Qingzhong MengEmail author
  • Xuan Zhou
  • Shiping Chen
  • Shan Wang
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10195)


Data transmission between an in-memory DBMS and a data analytical program is usually slow, partially due to the inadequate IPC support of modern operating systems. In this paper, we present SWING, a novel inter-process data sharing mechanism of OS, which allows processes to share physical memory through an instant system call. Based on SWING, we develop an embedded in-memory DBMS called SwingDB, which enables data analytical applications to access databases in their own memory space, instead of resorting to traditional inter-process communication. Extensive experiments were conducted to demonstrate the advantage of such a DBMS-OS co-design.


Shared Memory Memory Space Physical Memory Page Table Child Process 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


  1. 1.
    Intel\({\textregistered }\) 64 and IA-32 architectures software developer’s manual. Basic Architecture, vol. 1. Intel Corporation, August 2012Google Scholar
  2. 2.
    Aviram, A., Weng, S.-C., Hu, S., Ford, B.: Efficient system-enforced deterministic parallelism. Commun. ACM 55(5), 111–119 (2012)CrossRefGoogle Scholar
  3. 3.
    Beck, F., Diehl, S.: On the congruence of modularity and code coupling. In: Proceedings of the 19th ACM SIGSOFT Symposium and the 13th European Conference on Foundations of Software Engineering, ESEC/FSE 2011, pp. 354–364. ACM, New York (2011)Google Scholar
  4. 4.
    Castellano, G.V.: System object model (SOM) and Ada: an example of CORBA at work. In: ACM Sigada Ada Letters XVI, pp. 39–51 (1996)Google Scholar
  5. 5.
    Chaudhuri, S.: Review - integrating mining with relational database systems: alternatives and implications. In: ACM SIGMOD Digital Review, vol. 2 (2000)Google Scholar
  6. 6.
    Curcin, V., Ghanem, M.: Scientific workflow systems - can one size fit all? In: 2008 Cairo International Biomedical Engineering Conference, pp. 1–9, December 2008Google Scholar
  7. 7.
    Färber, F., Cha, S.K., Primsch, J., Bornhövd, C., Sigg, S., Lehner, W.: SAP HANA database: data management for modern business applications. ACM SIGMOD Rec. 40(4), 45–51 (2012)CrossRefGoogle Scholar
  8. 8.
    Garlan, D., Schmerl, B., Garlan, D., Schmerl, B.: Component-based software engineering in pervasive computing environments. In: Proceedings of the 4th ICSE Conference (2001)Google Scholar
  9. 9.
    Kemper, A., Neumann, T.: Hyper: a hybrid OLTP&OLAP main memory database system based on virtual memory snapshots. In: Proceedings of 27th ICDE, pp. 195–206. IEEE (2011)Google Scholar
  10. 10.
    Leipzig, J.: A review of bioinformatic pipeline frameworks. Brief. Bioinform. (2016). doi: 10.1093/bib/bbw020
  11. 11.
    Liu, T., Curtsinger, C., Berger, E.D.: Dthreads: efficient deterministic multithreading. In: Proceedings of the Twenty-Third ACM Symposium on Operating Systems Principles, pp. 327–336. ACM (2011)Google Scholar
  12. 12.
    Majer, K.: Linux Kernel Internals, 2nd edn. Addison-Wesley, US (1998)Google Scholar
  13. 13.
    McCracken, D.: Sharing page tables in the Linux kernel. In: Linux Symposium, p. 315 (2003)Google Scholar
  14. 14.
    Merrifield, T., Eriksson, J.: Conversion: multi-version concurrency control for main memory segments. In: Proceedings of the 8th ACM European Conference on Computer Systems, pp. 127–139. ACM (2013)Google Scholar
  15. 15.
    Sikka, V., Färber, F., Goel, A.K., Lehner, W.: SAP HANA: the evolution from a modern main-memory data platform to an enterprise application platform. PVLDB 6(11), 1184–1185 (2013)Google Scholar
  16. 16.
    Tu, S., Zheng, W., Kohler, E., Liskov, B., Madden, S.: Speedy transactions in multicore in-memory databases. In: Proceedings of the Twenty-Fourth ACM Symposium on Operating Systems Principles, pp. 18–32. ACM (2013)Google Scholar
  17. 17.
    Yu, J., Buyya, R.: A taxonomy of scientific workflow systems for grid computing. SIGMOD Rec. 34(3), 44–49 (2005)CrossRefGoogle Scholar
  18. 18.
    Zaharia, M., Chowdhury, M., Das, T., Dave, A., Ma, J., Mccauley, M., Franklin, M., Shenker, S., Stoica, I.: Fast and interactive analytics over hadoop data with spark. USENIX Login 37(4), 45–51 (2012)Google Scholar

Copyright information

© Springer International Publishing AG 2017

Authors and Affiliations

  • Qingzhong Meng
    • 1
    Email author
  • Xuan Zhou
    • 1
  • Shiping Chen
    • 2
  • Shan Wang
    • 1
  1. 1.MOE Key Laboratory of DEKERenmin University of ChinaBeijingChina
  2. 2.CSIRO Data61EppingAustralia

Personalised recommendations