Supporting Multi-dimensional Range Query in HD Tree

There are two basic concerns for supporting multi-dimensional range query in P2P overlay networks. The first is to preserve data locality in the process of data space partitioning, and the second is the maintenance of data locality among data items with an exponentially expanding rate and an exponentially extending rate. The first problem has been well addressed by using recursive decomposition schemes, such as Quad tree, K-d tree, Z-order, and Hilbert curve. While the second problem was recently identified by our novel data structure: HD Tree. This paper is a follow-up to our previous work in HD Tree. In this paper, we explore how data locality can be easily maintained, and how range query can be efficiently supported in HD Tree. This is done by introducing two basic routing strategies, hierarchical routing and distributed routing. Although hierarchical routing can be applied to any two nodes in the system, it generates high volume traffic towards nodes near the root, and has very limited options to cope with a node failure. On the other hand, distributed routing concerns source and destination pairs only at the same depth, but traffic load is bound to some nodes at two neighboring depths, and multiple options can be found to redirect a routing request. Because HD Tree supports multiple routes between any two nodes in the system, routing in HD Tree is very flexible, and can be designed for many purposes, like fault tolerance, or dynamic load balancing. Distributed Routing Oriented Combined Routing algorithm is one such routing strategies implemented so far. It is a hybrid algorithm combining advantages from both the hierarchical routing and the distributed routing. The experimental results show that the DROCR algorithm achieves considerable performance gain over the equivalent tree routing at the highest depth examined. In the experiment of supporting multi-dimensional range query, we employ the Z-order space filling curve over the HD Tree overlay layer. We are expecting that the performance of range query will vary proportionally with the change of range size, and reasonably with the increase of dimensionality.

[1]  Jon Louis Bentley,et al.  Quad trees a data structure for retrieval on composite keys , 1974, Acta Informatica.

[2]  David Mazières,et al.  Kademlia: A Peer-to-Peer Information System Based on the XOR Metric , 2002, IPTPS.

[3]  Scott Shenker,et al.  Spurring Adoption of DHTs with OpenHash, a Public DHT Service , 2004, IPTPS.

[4]  Gade Krishna,et al.  A scalable peer-to-peer lookup protocol for Internet applications , 2012 .

[5]  Beng Chin Ooi,et al.  Supporting multi-dimensional range queries in peer-to-peer systems , 2005, Fifth IEEE International Conference on Peer-to-Peer Computing (P2P'05).

[6]  Moni Naor,et al.  Viceroy: a scalable and dynamic emulation of the butterfly , 2002, PODC '02.

[7]  Mark Handley,et al.  A scalable content-addressable network , 2001, SIGCOMM 2001.

[8]  Jon Louis Bentley,et al.  Multidimensional binary search trees used for associative searching , 1975, CACM.

[9]  Florian Schintke,et al.  A Structured Overlay for Multi-dimensional Range Queries , 2007, Euro-Par.

[10]  H. V. Jagadish,et al.  Linear clustering of objects with multiple attributes , 1990, SIGMOD '90.

[11]  Jon Crowcroft,et al.  A survey and comparison of peer-to-peer overlay network schemes , 2005, IEEE Communications Surveys & Tutorials.

[12]  T. H. Merrett,et al.  A class of data structures for associative searching , 1984, PODS.

[13]  Manish Parashar,et al.  Flexible information discovery in decentralized distributed systems , 2003, High Performance Distributed Computing, 2003. Proceedings. 12th IEEE International Symposium on.

[14]  Ian Clarke,et al.  Freenet: A Distributed Anonymous Information Storage and Retrieval System , 2000, Workshop on Design Issues in Anonymity and Unobservability.

[15]  Hector Garcia-Molina,et al.  One torus to rule them all: multi-dimensional queries in P2P systems , 2004, WebDB '04.

[16]  Ben Y. Zhao,et al.  Towards a Common API for Structured Peer-to-Peer Overlays , 2003, IPTPS.

[17]  David R. Karger,et al.  Consistent hashing and random trees: distributed caching protocols for relieving hot spots on the World Wide Web , 1997, STOC '97.

[18]  James Aspnes,et al.  Skip graphs , 2003, SODA '03.

[19]  Antony I. T. Rowstron,et al.  Pastry: Scalable, Decentralized Object Location, and Routing for Large-Scale Peer-to-Peer Systems , 2001, Middleware.

[20]  Karl Aberer,et al.  P-Grid: a self-organizing structured P2P system , 2003, SGMD.

[21]  Hanan Samet,et al.  The Quadtree and Related Hierarchical Data Structures , 1984, CSUR.

[22]  Ben Y. Zhao,et al.  Tapestry: a resilient global-scale overlay for service deployment , 2004, IEEE Journal on Selected Areas in Communications.