buffer.bib

@comment{{This file has been generated by bib2bib 1.97}}
@comment{{Command line: /usr/bin/bib2bib -ob buffer.bib -c 'class : "buffer"' lib.bib}}
@inproceedings{albo03,
  title = {Cache Tables: Paving the Way for an Adaptive Database Cache},
  author = {Mehmet Altinel and Christof Bornh\:{o}vd and Sailesh Krishnamurthy and C. Mohan and Hamid Pirahesh and Berthold Reinwald},
  booktitle = {Proc. International Conference on Very Large Data Bases},
  year = {2003},
  pages = {718-729},
  class = {buffer},
  url = {http://www.db.uwaterloo.ca/~kmsalem/lib/lib/DBCachePaperS22P01.pdf},
  url2 = {http://www.almaden.ibm.com/u/mohan/VLDB2003DBCachePaperS22P01.pdf}
}
@inproceedings{aram02,
  title = {{ACME}: Adaptive Caching using Multiple Experts},
  author = {Ismail Ari and Ahmed Amer and Robert Gramacy and Ethan L. Miller and Scott Brandt and Darrell D. E. Long},
  booktitle = {Workshop on Distributed Data and Structures 4 (WDAS)},
  year = {2002},
  month = mar,
  pages = {143-158},
  publisher = {Carleton Scientific},
  class = {buffer},
  timestamp = {27.12.2008},
  url = {http://ssrc.cse.ucsc.edu/Papers/ari-ddas02.pdf},
  url2 = {http://www.db.uwaterloo.ca/~kmsalem/lib/lib/aram02.pdf}
}
@inproceedings{bamo04,
  title = {{CAR}: Clock with Adaptive Replacement},
  author = {S. Bansal and D. Modha},
  booktitle = {Proc. of the 3nd USENIX Symposium on File and Storage Technologies (FAST'04)},
  year = {2004},
  month = mar,
  class = {buffer},
  url = {http://www.db.uwaterloo.ca/~kmsalem/lib/lib/bamo04.pdf},
  url2 = {http://www.almaden.ibm.com/cs/people/dmodha/clockfast.pdf}
}
@article{bela66,
  title = {A study of replacement algorithms for a virtual-storage computer},
  author = {L. A. Belady},
  journal = {{IBM} Systems Journal},
  year = {1966},
  number = {2},
  pages = {78-101},
  volume = {5},
  class = {buffer},
  url = {http://www.db.uwaterloo.ca/~kmsalem/lib/lib/bela66.pdf}
}
@inproceedings{bopl04,
  title = {Characterization of the data access behavior for {TPC-C} traces},
  author = {R. Bonilla-Lucas and Peter Plachta and Aamer Sachedina and Daniel Jim\'{e}nez-Gonz\'{a}lez and Calisto Zuzarte and Josep-Lluis Larriba-Pey},
  booktitle = {Proc. IEEE International Symposium on Performance Analysis of Systems and Software},
  year = {2004},
  month = mar,
  pages = {115-122},
  class = {workload buffer},
  url = {http://www.db.uwaterloo.ca/~kmsalem/lib/lib/bopl04.pdf}
}
@inproceedings{chzh05,
  title = {Empirical evaluation of multi-level buffer cache collaboration for storage systems},
  author = {Zhifeng Chen and Yan Zhang and Yuanyuan Zhou and Heidi Scott and Berni Schiefer},
  booktitle = {Proceedings of the International Conference on Measurements and Modeling of Computer Systems (SIGMETRICS'05)},
  year = {2005},
  pages = {145-156},
  annote = {Compares ``hierarchically aware'' approachs to ``aggressively-collaborative'' approaches. The former are transparent to the storage client (e.g., the DBMS), the latter are not. Aggressively-collaborative approaches include two types of hint-passing: access patterns and application semantics. Example of semantic hint is a hint that a block will be read only one time. Even more aggressive is content-aware caching, where the caches try explicitly to avoid duplication. Also considers some additional optimizations: Quick eviction of duplicated blocks (DU) removes pages from the buffer when they are read, Semantics-Directed Caching (SE) uses ``importance'' values from the storage client (in an ill-specified way) to affect buffering at the storage server. General conclusion is that the agressively-collaborative approaches do not help much compared to the hierarchically-aware approaches.},
  class = {buffer},
  url = {http://www.db.uwaterloo.ca/~kmsalem/lib/lib/chzh05.pdf}
}
@inproceedings{chzh03,
  title = {Eviction-based cache placement for storage caches},
  author = {Zhifeng Chen and Yuanyuan Zhou and Kai Li},
  booktitle = {Proceedings of the USENIX 2003 Annual Technical Conference},
  year = {2003},
  month = jun,
  pages = {269-282},
  annote = {Eviction-based placement means that a page is loaded into the storage cache when it is evicted from the storage client's cache, as opposed to when it is requested by the client. Proposes tracking evictions transparently by monitoring the target addresses of read requests. Evicted pages are prefetched from disk into the storage system cache at the time of predicted eviction from the storage client cache.},
  class = {buffer},
  url = {http://www.db.uwaterloo.ca/~kmsalem/lib/lib/chzh03.pdf},
  url2 = {http://www.usenix.com/publications/library/proceedings/usenix03/tech/full_papers/chen/chen.pdf}
}
@article{duha82,
  title = {Buffered Writing in a Peripheral Storage Hierarchy},
  author = {A. H. Duke and M. H. Hartung and J. D. Huntley and F. J. Marschner},
  journal = {IBM Technical Disclosure Bulletin},
  year = {1982},
  month = sep,
  number = {4},
  pages = {2075-2076},
  volume = {25},
  annote = {Describes a scheme for synchronizing writes in batches, rather than individually.},
  class = {buffer},
  hardcopy = {Buffer},
  timestamp = {05.08.2008}
}
@techreport{fasc06,
  title = {Multilevel Cache Management Based on Application Hints},
  author = {Michael Factor and Assaf Schuster and Gala Yadgar},
  institution = {Technion Computer Science Department},
  year = {2006},
  number = {CS-2006-02},
  class = {buffer},
  url = {http://www.db.uwaterloo.ca/~kmsalem/lib/lib/fasc06.pdf},
  url2 = {http://www.cs.technion.ac.il/users/wwwb/cgi-bin/tr-get.cgi/2006/CS/CS-2006-02.pdf}
}
@article{fitz04,
  title = {Distributed caching with memcached},
  author = {Brad Fitzpatrick},
  journal = {Linux Journal},
  year = {2004},
  month = aug,
  number = {124},
  pages = {5},
  volume = {2004},
  class = {buffer},
  timestamp = {23.11.2009},
  url = {http://www.db.uwaterloo.ca/~kmsalem/lib/lib/fitz04.html},
  url2 = {http://www.linuxjournal.com/article/7451}
}
@article{gama08,
  title = {Scalable query result caching for web applications},
  author = {Garrod, Charles and Manjhi, Amit and Ailamaki, Anastasia and Maggs, Bruce and Mowry, Todd and Olston, Christopher and Tomasic, Anthony},
  journal = {Proc. of the VLDB Endowment},
  year = {2008},
  number = {1},
  pages = {550-561},
  volume = {1},
  class = {buffer},
  doi = {http://doi.acm.org/10.1145/1453856.1453917},
  timestamp = {23.11.2009},
  url = {http://www.db.uwaterloo.ca/~kmsalem/lib/lib/gama08.pdf}
}
@inproceedings{gill08,
  title = {On Multi-level Exclusive Caching: Offline Optimality and Why Promotions Are Better Than Demotions},
  author = {Binny Gill},
  booktitle = {Proc. USENIX Conference on File and Storage Technologies (FAST'08)},
  year = {2008},
  pages = {49-65},
  annote = {Includes lower and upper bounds on optimal off-line performance for multi-level caches. Proposes a scheme called PROMOTE for managing multi-tier caches. As a requested page is passed up through the cache tiers, each cache decides whether it will be responsible for caching the page. Once a cache has decided to cache the page, it notifies the higher level caches of this by attaching a flag to the page as it is passed up through tiers. The higher level caches then do not cache the page. This enforces exclusiveness among the caches. Pages that are repeatedly requested should tend to migrate to higher level caches. Behaviour on writes is not specified, e.g, can a write affect which cache is responsible for a particular page. This policy requires modification of the caching policies at every tier, as each tier must abide by caching decisions made at lower tiers, and must inform upper tiers of its decisions.},
  class = {buffer},
  timestamp = {13.09.2008},
  url = {http://www.usenix.org/events/fast08/tech/full_papers/gill/gill.pdf},
  url2 = {http://www.db.uwaterloo.ca/~kmsalem/lib/lib/gill08.pdf}
}
@inproceedings{jizh04,
  title = {{ULC}: A File Block Placement and Replacement Protocol to Effectively Exploit Hierarchical Locality in Multi-Level Buffer Caches},
  author = {Song Jiang and Xiaodong Zhang},
  booktitle = {Proc. 24th International Conference on Distributed Computing Systems (ICDCS'04)},
  year = {2004},
  pages = {168-177},
  class = {buffer},
  url = {http://www.db.uwaterloo.ca/~kmsalem/lib/lib/jizh04.pdf}
}
@inproceedings{josh94,
  title = {{2Q}: A Low Overhead High Performance Buffer Management Replacement Algorithm},
  author = {Theodore Johnson and Dennis Shasha},
  booktitle = {Proc. International Conference on Very Large Data Bases (VLDB'94)},
  year = {1994},
  pages = {439-450},
  class = {buffer},
  url = {http://www.vldb.org/conf/1994/P439.PDF}
}
@inproceedings{mali00,
  title = {Dynamic Reconfiguration Algorithm: Dynamically Tuning Multiple Buffer Pools},
  author = {Patrick Martin and Hoi-Ying Li and Min Zheng and Keri Romanufa and Wendy Powley},
  booktitle = {11th International Conference on Database and Expert Systems Applications (DEXA)},
  year = {2000},
  pages = {92-101},
  class = {buffer},
  url = {http://www.db.uwaterloo.ca/~kmsalem/lib/lib/martinbpconfig.pdf}
}
@inproceedings{mapo02,
  title = {Configuring Buffer Pools in {DB2 UDB}},
  author = {Patrick Martin and Wendy Powley and Xiaoyi Xu},
  booktitle = {Proc. CASCON},
  year = {2002},
  class = {buffer}
}
@inproceedings{medh03,
  title = {{ARC}: A Self-Tuning, Low Overhead Replacement Cache},
  author = {Nimrod Megiddo and Dharmendra S. Modha},
  booktitle = {Proc. USENIX Conference on File and Storage Technology (FAST'03)},
  year = {2003},
  annote = {ARC maintains two LRU queues, one for pages that have been referenced once and one for pages that have been referenced more than once. For each queue, there is also a ghost queue that tracks additional pages. The sizes of the two queues are adjusted dynamically. A hit in the single-reference ghost queue causes the single-reference queue to grow. A hit in the multi-reference ghost queue causes the multi-referenced queue to grow.},
  class = {buffer},
  url = {http://www.db.uwaterloo.ca/~kmsalem/lib/lib/medh03.pdf},
  url2 = {http://www.usenix.org/events/fast03/tech/full_papers/megiddo/megiddo.pdf}
}
@inproceedings{muho92,
  title = {Multi-Level Caching in Distributed File Systems - or - Your Cache Ain't Nuthin' But Trash},
  author = {D. Muntz and P. Honeyman},
  booktitle = {Proceedings of the USENIX Winter Conference},
  year = {1992},
  month = jan,
  pages = {305-313},
  annote = {Simulation study of bi-level LRU caches for a distributed file system. Found that increasing client cache size quickly reduces the hit rate of the second tier cache.},
  class = {buffer},
  url = {http://www.db.uwaterloo.ca/~kmsalem/lib/lib/muho92.pdf}
}
@inproceedings{onon93,
  title = {The {LRU-K} Page Replacement Algorithm For Database Disk Buffering},
  author = {Elizabeth J. O'Neil and Patrick E. O'Neil and Gerhard Weikum},
  booktitle = {Proceedings of the ACM SIGMOD International Conference on Management of Data (SIGMOD'93)},
  year = {1993},
  pages = {297-306},
  class = {buffer},
  url = {http://www.db.uwaterloo.ca/~kmsalem/lib/lib/onon93.pdf}
}
@inproceedings{pazd91,
  title = {Fido: A Cache That Learns to Fetch},
  author = {Mark Palmer and Stanley Zdonik},
  booktitle = {Proc. Int'l Conference on Very Large Data Bases},
  year = {1991},
  class = {buffer},
  timestamp = {13.09.2008},
  url = {http://www.vldb.org/conf/1991/P255.PDF}
}
@inproceedings{phgo95,
  title = {An Inter-Reference Gap Model For Temporal Locality in Program Behavior},
  author = {Vidyadhar Phalke and Bhaskarpillai Gopinath},
  booktitle = {Proceedings of the 1995 ACM SIGMETRICS Joint International Conference on Measurement and Modeling of Computer Systems},
  year = {1995},
  pages = {291-300},
  class = {buffer},
  url = {http://www.db.uwaterloo.ca/~kmsalem/lib/lib/p291-phalke.pdf}
}
@article{saha00,
  title = {Hint-based cooperative caching},
  author = {Prasenjit Sarkar and John H. Hartman},
  journal = {ACM Transactions on Computer Systems},
  year = {2000},
  number = {4},
  pages = {387-419},
  volume = {18},
  annote = {Describes a cooperative two-level caching system in which first-level caches may fetch blocks from other first-level caches. A hint is potentially inaccurate information about the locations of blocks in the first-level caches.},
  class = {buffer},
  url = {http://www.db.uwaterloo.ca/~kmsalem/lib/lib/saha00.pdf}
}
@inproceedings{soch08,
  title = {Dynamic Partitioning of the Cache Hierarchy in Shared Data Centers},
  author = {Gokul Soundararajan and Jin Chen and Mohamed Sharaf and Cristiana Amza},
  booktitle = {Proc. Int'l Conference on Very Large Data Bases (VLDB'08)},
  year = {2008},
  month = aug,
  class = {buffer},
  timestamp = {13.09.2008},
  url = {http://www.db.uwaterloo.ca/~kmsalem/lib/lib/soch08.pdf}
}
@inproceedings{wowi02,
  title = {My cache or yours? Making storage more exclusive},
  author = {Theodore M. Wong and John Wilkes},
  booktitle = {USENIX Annual Technical Conference (USENIX 2002)},
  year = {2002},
  month = jun,
  pages = {161-175},
  annote = {Notes that storage system caches are often LRU-based, and points out the multi-tier cache inclusion problem: that a second-tier LRU cache behind a first-tier LRU cache will contain many of the same pages as the first-tier cache. Defines a ``demote'' operation to deal with this problem. Demote sends to the second tier a block that has been evicted from the first tier. Argues that the cost of sending these blocks to the second tier is low because storage networks have lots of bandwidth. Also defines a ``demote'' buffer management policy for tier two. This puts blocks read by tier one at the LRU end of the buffer (like our +read-read policy) and puts blocks demoted by the first tier at the MRU end.},
  class = {buffer},
  url = {http://www.db.uwaterloo.ca/~kmsalem/lib/lib/wowi02.pdf},
  url2 = {http://www.hpl.hp.com/personal/John_Wilkes/papers/Wong2002.pdf}
}
@inproceedings{yafa08,
  title = {MC2: Multiple Clients on a Multilevel Cache},
  author = {Gala Yadgar and Michael Factor and Kai Li and Assaf Schuster},
  booktitle = {Proc. Int'l Conference on Distributed Computing Systems (ICDCS'08)},
  year = {2008},
  month = jun,
  annote = {Extends Karma (\cite{yafa07}) two a two-tier scenario in which multiple clients which share data also share a second-tier cache. Space is partitioned among clients, with one additional partition used for shared data. Within each partition, space is managed using Karma.},
  class = {buffer},
  timestamp = {13.09.2008},
  url = {http://www.cs.technion.ac.il/~gala/MC2ICDCS08.pdf},
  url2 = {http://www.db.uwaterloo.ca/~kmsalem/lib/lib/yafa08.pdf}
}
@inproceedings{yafa07,
  title = {Karma: Know-It-All Replacement for a Multilevel Cache},
  author = {Gala Yadgar and Michael Factor and Assaf Schuster},
  booktitle = {Proc. USENIX Conference on File and Storage Technologies (FAST'07)},
  year = {2007},
  month = feb,
  annote = {Assumes caches support read, read-save, and demote. Requires that blocks by grouped into ranges by the application. Application must also specify the frequency of access and access pattern for each range. Each range is assigned some space in some cache in the hierarchy, and each range's space is then managed using a separate replacement policy. Experiments used PostgreSQL explain to generate range and access pattern hints - however, explain data covers the situation before the DBMS cache.},
  class = {buffer},
  timestamp = {13.09.2008},
  url = {http://www.cs.technion.ac.il/~gala/KarmaFAST07.pdf},
  url2 = {http://www.db.uwaterloo.ca/~kmsalem/lib/lib/yafa07.pdf}
}
@article{zhch04,
  title = {Second-Level Buffer Cache Management},
  author = {Yuanyuan Zhou and Zhifeng Chen and Kai Li},
  journal = {IEEE Transactions on Parallel and Distributed Systems},
  year = {2004},
  month = jul,
  number = {7},
  volume = {15},
  annote = {Presents a trace-based characterization of access patterns for second-tier (L2) buffer caches, noting that L2 cache reference streams don't exhibit any small reuse distances. Presents the MQ algorithm for managing L2 cache. MQ uses multiple LRU queues. Pages are promoted to higher queues according to frequency of reference. Replacements happen in low queues first. An aging mechanism is used to demote pages that cool down. Also describes so-called global replacement algorithms, in which the L2 cache is informed when replacements are made at L1. Evaluation is by trace-driven simulation and also by experiment with an storage system cache implementation.},
  class = {buffer},
  url = {http://www.db.uwaterloo.ca/~kmsalem/lib/lib/zhch04.ps}
}
@comment{{jabref-meta: selector_url:http://www.db.uwaterloo.ca/~kmsalem
/lib/lib/;}}
@comment{{jabref-meta: selector_class:buffer;dbcontrol;grid;other;physi
cal;queryopt;repl;resourcemgmt;secac;storagemgmt;storageperf;storagesy
s;webcontrol;workload;}}
@comment{{jabref-meta: selector_url2:http://www.db.uwaterloo.ca/~kmsale
m/lib/lib/;}}
@comment{{jabref-meta: selector_journal:#debull#;#cacm#;#corr#;#ibmsysj
#;#osreview#;#pvldb#;#queue#;#record#;#tkde#;#tods#;#tos#;#tservcomp#;
#vldbj#;}}
@comment{{jabref-meta: selector_keywords:}}
@comment{{jabref-meta: selector_booktitle:#caise#;#cidr#;#damon#;#europ
ar#;#eurosys#;#fast#;#hotos#;#icac#;#icde#;#isca#;#ladis#;#mascots#;#n
sdi#;#osdi#;#podc#;#sigmod#;#socc#;#sosp#;#usenix#;#vldb#;}}
@comment{{jabref-meta: groupsversion:3;}}
@comment{{jabref-meta: groupstree:
0 AllEntriesGroup:;
1 KeywordGroup:dbcontrol\;0\;class\;dbcontrol\;0\;0\;;
1 KeywordGroup:webcontrol\;0\;class\;webcontrol\;0\;0\;;
1 KeywordGroup:physical\;0\;class\;physical\;0\;0\;;
1 KeywordGroup:storagemgmt\;0\;class\;storagemgmt\;0\;0\;;
1 KeywordGroup:storageperf\;0\;class\;storageperf\;0\;0\;;
1 KeywordGroup:storagesys\;0\;class\;storagesys\;0\;0\;;
1 KeywordGroup:resourcemgmt\;0\;class\;resourcemgmt\;0\;0\;;
1 KeywordGroup:grid\;0\;class\;grid\;0\;0\;;
1 KeywordGroup:repl\;0\;class\;repl\;0\;0\;;
1 KeywordGroup:secac\;0\;class\;secac\;0\;0\;;
1 KeywordGroup:other\;0\;class\;other\;0\;0\;;
1 KeywordGroup:buffer\;0\;class\;buffer\;0\;0\;;
1 KeywordGroup:queryopt\;0\;class\;queryopt\;0\;0\;;
1 KeywordGroup:workload\;0\;class\;workload\;0\;0\;;
}}