Advertisement

International Journal of Parallel Programming

, Volume 44, Issue 4, pp 709–734 | Cite as

Fast LH\(*\)

  • Juan Chabkinian
  • Thomas J. E. Schwarz SJ
Article
  • 93 Downloads

Abstract

Linear Hashing is an efficient and widely used version of extendible hashing. LH\(*\) is its distributed version that stores key-value pairs on up to hundreds of thousands of sites in a distributed system. LH\(*\) implements the dictionary data structure efficiently by not using a central component and allows the key-based operations of insertion, deletion, actualization, and retrieval as well as the scan operation. Because it does not use a central addressing component, clients or servers in LH\(*\) can commit an addressing error by sending a request to a wrong server. This server then forwards the message to the correct server either directly or in one but never more than one additional forward operation. We discuss here methods to avoid this double forward, which, while rare, still might breach quality of service guarantees. We compare our methods with \(\mathrm{LH}*_{\mathrm{RS}^{\mathrm{\tiny P2P}}}\) that pushes information about changes in the file structure to clients, whether they are active or not. A second problem especially relevant in high churn environments such as modern data centers is that sites can suddenly become inaccessible. The various high and scalable reliability versions of LH\(*\) then reconstruct the data lost on this site elsewhere. We present a solution to the resulting “wandering bucket” problem that allows clients to find the data at their new location.

Keywords

Scalable distributed data structures LH\(*\) Cloud computing 

References

  1. 1.
    Birman, K.P.: Reliable Distributed Systems: Technologies, Web Services, and Applications. Springer, Berlin (2005)zbMATHGoogle Scholar
  2. 2.
    Chabkinian, J., Schwarz, T.: Fast LH*. In: 2013 25th International Symposium on Computer Architecture and High Performance Computing (SBAC-PAD), pp. 57–64. IEEE (2013)Google Scholar
  3. 3.
    Chang, F., Dean, J., Ghemawat, S., Hsieh, W.C., Wallach, D.A., Burrows, M., Chandra, T., Fikes, A., Gruber, R.E.: Bigtable: a distributed storage system for structured data. ACM Trans. Comput. Syst. (TOCS) 26(2), 4 (2008)CrossRefGoogle Scholar
  4. 4.
    Devine, R.: Design and implementation of DDH: a distributed dynamic hashing algorithm. In: Foundations of Data Organization and Algorithms, pp. 101–114 (1993)Google Scholar
  5. 5.
    Fagin, R., Nievergelt, J., Pippenger, N., Strong, H.R.: Extendible hashing—a fast access method for dynamic files. ACM Trans. Database Syst. 4(3), 315–344 (1979)CrossRefGoogle Scholar
  6. 6.
    Kröll, B., Widmayer, P.: Distributing a search tree among a growing number of processors. In: ACM SIGMOD Record, vol. 23(2), pp. 265–276. ACM (1994)Google Scholar
  7. 7.
    Litwin, W.: Linear hashing: a new tool for file and table addressing. In: Proceedings of the Sixth International Conference on Very Large Data Bases (VLDB), vol. 6, pp. 212–223 (1980)Google Scholar
  8. 8.
    Litwin, W., Menon, J., Risch, T.: LH\(\ast \) Schemes with Scalable Availability. Tech. rep., IBM Almaden (1998). RJ10121 (91937)Google Scholar
  9. 9.
    Litwin, W., Menon, J., Risch, T., Schwarz, T.J.: Design issues for scalable availability LH* schemes with record grouping. In: Second Workshop on Distributed Data and Structures, pp. 38–55 (1999)Google Scholar
  10. 10.
    Litwin, W., Moussa, R., Schwarz, T.: LH\(\ast \)RS—a highly-available scalable distributed data structure. ACM Trans. Database Syst. (TODS) 30(3), 769–811 (2005)CrossRefGoogle Scholar
  11. 11.
    Litwin, W., Neimat, M.A., Schneider, D.: RP*: A family of order preserving scalable distributed data structures. In: Proceedings of the International Conference on Very Large Data Bases (VLDB), pp. 342–342 (1994)Google Scholar
  12. 12.
    Litwin, W., Neimat, M.A., Schneider, D.: RP\(\ast \): a family of order preserving scalable distributed data structures. In: Proceedings of the International Conference on Very Large Databases (VLDB), vol. 94, pp. 12–15 (1994)Google Scholar
  13. 13.
    Litwin, W., Neimat, M.A., Schneider, D.A.: LH\(\ast \): linear hashing for distributed files. In: Proceedings of the 1993 ACM SIGMOD International Conference on Management of Data (SIGMOD ’93), pp. 327–336. ACM (1993)Google Scholar
  14. 14.
    Litwin, W., Neimat, M.A., Schneider, D.A.: LH\(\ast \)—a scalable, distributed data structure. ACM Trans. Database Syst. 21(4), 480–525 (1996)CrossRefGoogle Scholar
  15. 15.
    Litwin, W., Schwarz, T.: Algebraic signatures for scalable distributed data structures. In: Proceedings of the 20th International Conference on Data Engineering, 2004, pp. 412–423. IEEE (2004)Google Scholar
  16. 16.
    Litwin, W., Yakouben, H., Schwarz, T.: LH\(\ast \) RS P2P: a scalable distributed data structure for P2P environment. In: Proceedings of the 8th International Conference on New Technologies in Distributed Systems, p. 1. ACM (2008)Google Scholar
  17. 17.
    Metzner, J.J.: Efficient replicated remote file comparison. IEEE Trans. Comput. 40(5), 651–660 (1991)CrossRefGoogle Scholar
  18. 18.
    Nardelli, E.: Distributed k–d trees. In: Proceedings of the 16th Conference of Chilean Computer Science Society (SCCC96), pp. 142–154 (1996)Google Scholar
  19. 19.
    Rathi, A., Lu, H., Hedrick, G.E.: Performance comparison of extendible hashing and linear hashing techniques. In: Proceedings of the 1990 ACM SIGSMALL/PC Symposium on Small Systems, SIGSMALL ’90, pp. 178–185 (1990)Google Scholar
  20. 20.
    Yakouben, H., Soror, S.: LH* RS P2P: a fast and high churn resistant scalable distributed data structure for P2P systems. Int. J. Internet Technol. Secur. Trans. 2(1), 5–31 (2010)CrossRefGoogle Scholar

Copyright information

© Springer Science+Business Media New York 2015

Authors and Affiliations

  1. 1.Universidad Católica del UruguayMontevideoUruguay
  2. 2.Universidad CentroamericanaSan SalvadorEl Salvador

Personalised recommendations