Skip to main content

Skip B-Trees

  • Conference paper
Principles of Distributed Systems (OPODIS 2005)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 3974))

Included in the following conference series:

Abstract

We describe a new data structure, the Skip B-Tree, that combines the advantages of skip graphs with features of traditional B-trees. A skip B-Tree provides efficient search, insertion and deletion operations. The data structure is highly fault tolerant even to adversarial failures, and allows for particularly simple repair mechanisms. Related resource keys are kept in blocks near each other enabling efficient range queries.

Using this data structure, we describe a new distributed peer-to-peer network, the Distributed Skip B-Tree. Given m data items stored in a system with n nodes, the network allows to perform a range search operation for r consecutive keys that costs only O(log b m +r/b) where b=Θ(m/n). In addition, our distributed Skip B-tree search network has provable polylogarithmic costs for all its other basic operations like insert, delete, and node join. To the best of our knowledge, all previous distributed search networks either provide a range search operation whose cost is worse than ours or may require a linear cost for some basic operation like insert, delete, and node join.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Abraham, I., Awerbuch, B., Azar, Y., Malkhi, D., Pavlov, E.: A generic scheme for building overlay networks in adversarial scenarios. In: Proceedings of the International Parallel and Distributed Processing Symposium (IPDPS 2003) (April 2003)

    Google Scholar 

  2. Aumann, Y., Bender, M.A.: Fault Tolerant Data Structures. In: Proceedings of the Thirty-Seventh Annual Symposium on Foundations of Computer Science (FOCS), Burlington, VT, USA, pp. 580–589 (October 1996)

    Google Scholar 

  3. Azar, Y., Broder, A.Z., Karlin, A.R., Upfal, E.: Balanced allocations. SIAM J. Comput. 29(1), 180–200 (2000)

    Article  MathSciNet  MATH  Google Scholar 

  4. Aspnes, J., Kirsch, J., Krishnamurthy, A.: Load balancing and locality in range-queriable data structures. In: Twenty-Third ACM Symposium on Principles of Distributed Computing, pp. 115–124 (July 2004)

    Google Scholar 

  5. Aspnes, J., Shah, G.: Skip Graphs. In: Fourteenth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA), pp. 384–393 (January 2002) (submitted to Journal of Algorithms)

    Google Scholar 

  6. Awerbuch, B., Scheideler, C.: Peer-to-peer Systems for Prefix Search. In: Proceedings of the Twenty-Second ACM Symposium on Principles of Distributed Computing (PODC), Boston, MA, USA (July 2003)

    Google Scholar 

  7. Bayer, R.: Symmetric Binary B-trees: Data Structure and Maintainance Algorithms. Acta Informatica, 290–306 (1972)

    Google Scholar 

  8. Colbrook, A., Brewer, E.A., Dellarocas, C., Weihl, W.E.: An Algorithm for concurrent search trees. In: Proceedings of the 20th International Conference on Parallel Processing, pp. III138–III141 (1991)

    Google Scholar 

  9. Crainiceanu, A., Linga, P., Gehrke, J., Shanmugasundaram, J.: P-Tree: A P2P Index for Resource Discovery Applications. In: The 13th International World Wide Web Conference, pp. 390–392 (May 2004)

    Google Scholar 

  10. Datar, M.: Butterflies and Peer-to-Peer Networks. In: Möhring, R.H., Raman, R. (eds.) ESA 2002. LNCS, vol. 2461, pp. 310–322. Springer, Heidelberg (2002)

    Chapter  Google Scholar 

  11. Fiat, A., Saia, J.: Censorship Resistant Peer-to-Peer Content Addressable Networks. In: Proceedings of the Thirteenth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA), San Francisco, CA, USA, pp. 94–103 (January 2002); Submitted to a special issue of Journal of Algorithms dedicated to select papers of SODA 2002

    Google Scholar 

  12. Gilon, K., Peleg, D.: Compact Deterministic Distributed Dictionaries. In: Proceedings of the Tenth Annual ACM Symposium on Principles of Distributed Computing, pp. 81–94 (1991)

    Google Scholar 

  13. Harvey, N.J.A., Jones, M.B., Saroiu, S., Theimer, M., Wolman, A.: SkipNet: A Scalable Overlay Network with Practical Locality Properties. In: Proceedings of the Fourth USENIX Symposium on Internet Technologies and Systems (USITS), Seattle, WA, USA, pp. 113–126 (March 2003)

    Google Scholar 

  14. Johnson, T., Colbrook, A.: A Distributed, Replicated, Data-Balanced Search Structure. International Journal of High Speed Computing 6, 475–500 (1994)

    Article  Google Scholar 

  15. Kaashoek, F., Karger, D.R.: Koorde: A simple degree-optimal hash table. In: Kaashoek, M.F., Stoica, I. (eds.) IPTPS 2003. LNCS, vol. 2735. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  16. Kenthapadi, K., Manku, G.S.: Decentralized algorithms using both local and random probes for p2p load balancing. In: SPAA 2005: Proceedings of the 17th annual ACM symposium on Parallelism in algorithms and architectures, pp. 135–144. ACM Press, New York (2005)

    Google Scholar 

  17. Karger, D.R., Ruhl, M.: Simple Efficient Load Balancing Algorithms for Peer-to-Peer Systems. In: ACM SPAA (2004)

    Google Scholar 

  18. Munro, J.I., Poblete, P.V.: Fault Tolerance And Storage Reduction In Binary Search Trees. Information and Control 62(2/3), 210–218 (1984)

    Article  MathSciNet  MATH  Google Scholar 

  19. Mitzenmacher, M., Richa, A.W., Sitaraman, R.: The power of two random choices: A survey of techniques and results (2001)

    Google Scholar 

  20. Pugh, W.: Skip Lists: A Probabilistic Alternative to Balanced Trees. Communications of the ACM 33(6), 668–676 (1990)

    Article  Google Scholar 

  21. Ramabhadran, S., Ratnasamy, S., Hellerstein, J.M., Shenker, S.: Brief Announcement: Prefix Hash Tree. In: Proceedings of ACM PODC, St. Johns, Canada (July 2004)

    Google Scholar 

  22. Saia, J., Fiat, A., Gribble, S., Karlin, A., Saroiu, S.: Dynamically Fault-Tolerant Content Addressable Networks. In: Druschel, P., Kaashoek, M.F., Rowstron, A. (eds.) IPTPS 2002. LNCS, vol. 2429, pp. 270–279. Springer, Heidelberg (2002)

    Chapter  Google Scholar 

  23. Shasha, D., Goodman, N.: Concurrent search structure algorithms. ACM Transactions on Database Systems, 53–90 (1988)

    Google Scholar 

  24. Stoica, I., Morris, R., Liben-Nowell, D., Karger, D.R., Kaashoek, M.F., Dabek, F., Balakrishnan, H.: Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications. IEEE/ACM Transactions on Networking 11, 17–32 (2003)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2006 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Abraham, I., Aspnes, J., Yuan, J. (2006). Skip B-Trees. In: Anderson, J.H., Prencipe, G., Wattenhofer, R. (eds) Principles of Distributed Systems. OPODIS 2005. Lecture Notes in Computer Science, vol 3974. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11795490_28

Download citation

  • DOI: https://doi.org/10.1007/11795490_28

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-36321-7

  • Online ISBN: 978-3-540-36322-4

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics