Abstract
Dynamic tables that support search, insert and delete operations are fundamental and well studied in computer science. There are many well known data structures that solve this problem, including balanced binary trees, skip lists and tries among others. Many of the existing data structures work efficiently when the access patterns are uniform, but in many circumstance access patterns are biased. Various data structures have been proposed that exploit bias in access patterns to improve efficiency for the operations they support.
In this paper we introduce a new data structure, the biased skip list (BSL), which is designed to work with biased access distributions. Specifically, given key k, let its rank r(k) be the number of distinct keys accessed since the last access to k. BSL enables one to search for k in O(logr(k)) expected time. Insertions and deletions take O(logr max (k)) expected time where r max (k) denotes the maximum rank of k during its lifespan.
Our work is motivated by recent studies on packet filtering and classification where keys have been found to have geometric (or more skewed) access probabilities as a function of how recently they have been accessed. We demonstrate the practicality of BSL with experiments on real and synthetic data with various degrees of bias.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
L. Breslau, P. Cao, L. Fan, G. Phillips, and S. Shenker. Web caching and zipf-like distributions: Evidence and implications. In Proc. IEEE Infocom, 1999.
S. Bent, D. Sleator, and R. Tarjan. Biased search trees. SIAM Journal of Computing, 14, 1985.
J. L. Bentley, D. S. Sleator, R. E. Tarjan, and V.K. Wei. A locally adaptive data compression scheme. Communication of the ACM, 29:320–330, 1986.
M. Burrows and D. Wheeler. A block-sorting lossless data compression algorithm. DEC SRC Research Report, 124, 1994.
K.C. Claffy, H.W. Braun, and G.C. Polyzos. A parameterizable methodology for internet traffic flow profiling. In IEEE Journal on Selected Areas in Communications, 1995.
G. Cheung and S. McCanne. Optimal routing table design for IP address lookups under memory constraints. In IEEE INFOCOM, 1999.
LBL-TCP-3 Trace Data. http://ita.ee.lbl.gov/html/contrib/lbl-tcp-3.html
A. Dan and D. Towsley. An approximate analysis of the LRU and FIFO buffer replacement schemes. In Proc. ACM SIGMETRICS, 1990.
Jon Sharp Funda Ergun, Cenk Sahinalp and Rakesh Sinha. Rapid fire and hire at top ranks: Move to front with faster updates. Technical report, Case Western Reserve University, 2000.
D. E. Knuth. The Art of Computer Programming, volume 3-2nd ed. Addison-Wesley, 1997.
S. Lin and N. McKeown. A simulation study of IP switching. In Proc. ACM SIGCOMM, 1997.
Suvo Mittra and Anindya Basu. Packet classification: An argument for a working set model. Technical report, Bell Laboratories, 1999.
C. Martinez and S. Roura. Optimal and nearly optimal static weighted skip lists. Technical report, Universitat Politecnica de Catalunya, 1995.
E. O’Neil, P. O’Neil, and G. Weikum. The LRU-K page replacement algorithm for database disk buffering. In Proc. 1993 ACM-SIGMOD Conference on Management of Data, 1993.
G. Manzini P. Ferragina. Opportunistic data structures with applications. In Proc. IEEE Symposium on Foundations of Computer Science, 2000.
W. Pugh. Skip lists: A probabilistic alternative to balanced trees. In Communications of the ACM, 1990.
W. Pugh. Compressing java class files. In Proc. ACM Sigplan Conference on Programming Language Design and Implementation, 1999.
R. Seidel and C. Aragon. Randomized search trees. Algorithmica, 16, 1996.
D. Sleator and R. Tarjan. Self-adjusting binary search trees. Journal of the ACM, 32, 1985.
Andrew Tanenbaum. Operating Systems: Design and Implementation, 2 nd edition. Prentice-Hall, 1997.
C. Leiserson T. Cormen, R. Rivest. Introduction to Algorithms. McGraw Hill, 1990.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2001 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Ergun, F., Cenk Şahinalp, S., Sharp, J., Sinha, R.K. (2001). Biased Skip Lists for Highly Skewed Access Patterns. In: Buchsbaum, A.L., Snoeyink, J. (eds) Algorithm Engineering and Experimentation. ALENEX 2001. Lecture Notes in Computer Science, vol 2153. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-44808-X_18
Download citation
DOI: https://doi.org/10.1007/3-540-44808-X_18
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-42560-1
Online ISBN: 978-3-540-44808-2
eBook Packages: Springer Book Archive