Design, Implementation, and Evaluation of Write-Back Policy with Cache Augmented Data Stores

The Cache Augmented Data Store (CADS) architecture extends a persistent data store with an in-memory cache manager. It is widely deployed to support read-intensive workloads. However, its write-around and write-through policies prevent the caching tier from absorbing write load. This means the data store layer must scale to process writes even when the extra capacity is not needed for read load. We address this limitation by devising a write-back technique to enable the caching layer to process both reads and writes. This technique preserves ACID transactions. We present a client side implementation of write-back and evaluate it using the YCSB, BG, and TPC-C benchmarks. In addition, we compare our write-back with (a) write-back policy of a data store such as MongoDB and (b) write-back policy of a host-side cache such as Flashcache.

[1]  Carlo Curino,et al.  OLTP-Bench: An Extensible Testbed for Benchmarking Relational Databases , 2013, Proc. VLDB Endow..

[2]  Jin Li,et al.  FlashStore , 2010, Proc. VLDB Endow..

[3]  Sandy Irani,et al.  CAMP: a cost adaptive multi-queue eviction policy for key-value stores , 2014, Middleware.

[4]  Adam Silberstein,et al.  Benchmarking cloud serving systems with YCSB , 2010, SoCC '10.

[5]  Shahram Ghandeharizadeh,et al.  Teleporting Failed Writes with Cache Augmented Data Stores , 2018, CLOUD.

[6]  Steve Byan,et al.  Mercury: Host-side flash caching for the data center , 2012, 012 IEEE 28th Symposium on Mass Storage Systems and Technologies (MSST).

[7]  Xiaoyun Zhu,et al.  VFRM: Flash Resource Manager in VMware ESX Server , 2014, 2014 IEEE Network Operations and Management Symposium (NOMS).

[8]  Michael Stonebraker,et al.  Rethinking main memory OLTP recovery , 2014, 2014 IEEE 30th International Conference on Data Engineering.

[9]  Mike Hibler,et al.  An integrated experimental environment for distributed systems and networks , 2002, OPSR.

[10]  Irving L. Traiger,et al.  System R: relational approach to database management , 1976, TODS.

[11]  Tony Tung,et al.  Scaling Memcache at Facebook , 2013, NSDI.

[12]  Shahram Ghandeharizadeh,et al.  Cache augmented database management systems , 2013, DBSocial '13.

[13]  Andreas Reuter,et al.  Transaction Processing: Concepts and Techniques , 1992 .

[14]  Song Jiang,et al.  Workload analysis of a large-scale key-value store , 2012, SIGMETRICS '12.

[15]  Kai Li,et al.  RIPQ: Advanced Photo Caching on Flash for Facebook , 2015, FAST.

[16]  Nikolas Ioannou,et al.  Flash-Conscious Cache Population for Enterprise Database Workloads , 2014, ADMS@VLDB.

[17]  Sandy Irani,et al.  Cache Replacement with Memory Allocation , 2015, ALENEX.

[18]  Shahram Ghandeharizadeh,et al.  BG: A Benchmark to Evaluate Interactive Social Networking Actions , 2013, CIDR.

[19]  Shahram Ghandeharizadeh,et al.  A comparison of Flashcache with IQ-Twemcached , 2016, 2016 IEEE 32nd International Conference on Data Engineering Workshops (ICDEW).

[20]  GhandeharizadehShahram,et al.  Design, implementation, and evaluation of write-back policy with cache augmented data stores , 2019, VLDB 2019.

[21]  Margo I. Seltzer,et al.  Flash Caching on the Storage Client , 2013, USENIX Annual Technical Conference.