MLB-Wrapper: Distributed High Scalable BP-Wrapper

In distributed system, concurrent accesses lead to lock contention which greatly increases response time. Cache can reduce response time, but cannot gain scalability. Currently, the common solution is to modify the caching algorithm itself, although the scalability can be improved, the hit ratio hurt. In this paper, we propose a system framework, called MLB-Wrapper, which resolves the scalability issue in distributed systems. The framework does not modify the cache algorithm itself. Therefore, it preserves high cache hit ratio about the replacement algorithms. Multi-levels distributed cache is used in MLB-Wrapper which adopts batching technique in every level to eliminate the lock contention. Furthermore, MLB-Wrapper is flexible because different replacement algorithms can be used in each level. We describe the main idea and the detailed implementation of MLB-Wrapper in this paper. Experiment results show that, in the intensive concurrent environment, MLB-Wrapper can not only reduce lock contention but also have higher scalability.

[1]  Wilson C. Hsieh,et al.  Bigtable: A Distributed Storage System for Structured Data , 2006, TOCS.

[2]  Xiaoning Ding,et al.  BP-Wrapper: A System Framework Making Any Replacement Algorithms (Almost) Lock Contention Free , 2009, 2009 IEEE 25th International Conference on Data Engineering.

[3]  Carlos Maltzahn,et al.  Ceph: a scalable, high-performance distributed file system , 2006, OSDI '06.

[4]  Kevin Skadron,et al.  Accelerating SQL database operations on a GPU with CUDA , 2010, GPGPU-3.

[5]  Yawei Li,et al.  Megastore: Providing Scalable, Highly Available Storage for Interactive Services , 2011, CIDR.

[6]  Howard Gobioff,et al.  The Google file system , 2003, SOSP '03.

[7]  Dennis Shasha,et al.  2Q: A Low Overhead High Performance Buffer Management Replacement Algorithm , 1994, VLDB.

[8]  J. T. Robinson,et al.  On optimistic methods for concurrency control , 1979, TODS.

[9]  Frank Dabek,et al.  Large-scale Incremental Processing Using Distributed Transactions and Notifications , 2010, OSDI.

[10]  Werner Vogels,et al.  Dynamo: amazon's highly available key-value store , 2007, SOSP.

[11]  Yuan Yu,et al.  Dryad: distributed data-parallel programs from sequential building blocks , 2007, EuroSys '07.

[12]  Parag Agrawal,et al.  The case for RAMClouds: scalable high-performance storage entirely in DRAM , 2010, OPSR.

[13]  Song Jiang,et al.  LIRS: an efficient low inter-reference recency set replacement policy to improve buffer cache performance , 2002, SIGMETRICS '02.

[14]  Song Jiang,et al.  CLOCK-Pro: An Effective Improvement of the CLOCK Replacement , 2005, USENIX Annual Technical Conference, General Track.

[15]  Michael Isard,et al.  DryadLINQ: A System for General-Purpose Distributed Data-Parallel Computing Using a High-Level Language , 2008, OSDI.

[16]  Leonardo Neumeyer,et al.  S4: Distributed Stream Computing Platform , 2010, 2010 IEEE International Conference on Data Mining Workshops.