Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.5555/3201607.3201614acmconferencesArticle/Chapter ViewAbstractPublication PagesaspdacConference Proceedingsconference-collections
research-article

SQLiteKV: an efficient LSM-tree-based SQLite-like database engine for mobile devices

Published: 22 January 2018 Publication History

Abstract

SQLite has been deployed in millions of mobile devices from web to smartphone applications on various mobile operating systems. However, SQLite is not efficient with low transactions per second. In this paper, we for the first time propose a new SQLite-like database engine, called SQLiteKV, which adopts the LSM-tree-based data structure but retains the SQLite operation interfaces. With its SQLite interface, SQLiteKV can be utilized by existing applications without any modification, while providing high performance with its LSM-tree-based data structure.
In SQLiteKV, we develop a light-weight SQLite to key-value compiler to solve the semantic mismatch, so SQL statements can be efficiently translated into KV operations. We also design a novel coordination caching mechanism so query results can be effectively cached inside SQLiteKV by alleviating the discrepancy of data management between front-end SQLite statements and back-end key-value data organization. We have implemented and deployed SQLiteKV on a Google Nexus 6P smartphone. Experiments results show that SQLiteKV outperforms SQLite up to 6 times.

References

[1]
K. Shen, S. Park et al., "Journaling of journal is (almost) free." in FAST, 2014.
[2]
S. Jeong et al., "I/O stack optimization for smartphones." in ATC, 2013.
[3]
G. Oh et al., "SQLite optimization with phase change memory for mobile applications," VLDB, 2015.
[4]
W. Kim et al., "NVWAL: exploiting NVRAM in write-ahead logging," 2016.
[5]
"Apache phoenix," https://phoenix.apache.org/.
[6]
"SnappyDB: a key-value database for Android," http://www.snappydb.com/.
[7]
H. Lee et al., "Energy-aware memory allocation in heterogeneous non-volatile memory systems," in ISLPED, 2003.
[8]
R. Sears et al., "bLSM: a general purpose log structured merge tree," in SIGMO/PODS, 2012.
[9]
G. Forman et al., "The challenges of mobile computing," Computer, 1994.
[10]
S. Sinha et al., "Low-power FPGA design using memoization-based approximate computing," VLSI, 2016.
[11]
Z. Shao et al., "Utilizing PCM for energy optimization in embedded systems," in VLSI (ISVLSI), 2012 IEEE Computer Society Annual Symposium on. IEEE, 2012, pp. 398--403.
[12]
X. Wu et al., "LSM-trie: an LSM-tree-based ultra-large key-value store for small data items," in USENIX ATC, 2015.
[13]
D. Wei and S. Ryan, "The missing manual for leveled compaction strategy," goo.gl/En73gW, 2016.
[14]
B. Cooper et al., "Benchmarking cloud serving systems with YCSB," in SoCC, 2010.
[15]
Z. Shen et al., "DIDACache: a deep integration of device and application for flash based key-value caching." in FAST, 2017.
[16]
B. Atikoglu et al., "Workload analysis of a large-scale key-value store," in SIGMETRICS, 2012.

Cited By

View all

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
ASPDAC '18: Proceedings of the 23rd Asia and South Pacific Design Automation Conference
January 2018
774 pages

Sponsors

Publisher

IEEE Press

Publication History

Published: 22 January 2018

Check for updates

Qualifiers

  • Research-article

Conference

ASPDAC '18
Sponsor:

Acceptance Rates

Overall Acceptance Rate 466 of 1,454 submissions, 32%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)1
  • Downloads (Last 6 weeks)0
Reflects downloads up to 20 Feb 2025

Other Metrics

Citations

Cited By

View all

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media