This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
Saturn: Range Queries, Load Balancing and Fault Tolerance in DHT Data Systems
July 2012 (vol. 24 no. 7)
pp. 1313-1327
Theoni Pitoura, University of Patras, Rio
Nikos Ntarmos, University of Ioannina, Ioannina
Peter Triantafillou, University of Patras, Rio
In this paper, we present Saturn, an overlay architecture for large-scale data networks maintained over Distributed Hash Tables (DHTs) that efficiently processes range queries and ensures access load balancing and fault-tolerance. Placing consecutive data values in neighboring peers is desirable in DHTs since it accelerates range query processing; however, such a placement is highly susceptible to load imbalances. At the same time, DHTs may be susceptible to node departures/failures and high data availability and fault tolerance are significant issues. Saturn deals effectively with these problems through the introduction of a novel multiple ring, order-preserving architecture. The use of a novel order-preserving hash function ensures fast range query processing. Replication across and within data rings (termed vertical and horizontal replication) forms the foundation over which our mechanisms are developed, ensuring query load balancing and fault tolerance, respectively. Our detailed experimentation study shows strong gains in range query processing efficiency, access load balancing, and fault tolerance, with low replication overheads. The significance of Saturn is not only that it effectively tackles all three issues together—i.e., supporting range queries, ensuring load balancing, and providing fault tolerance over DHTs—but also that it can be applied on top of any order-preserving DHT enabling it to dynamically handle replication and, thus, to trade off replication costs for fair load distribution and fault tolerance.

[1] K. Aberer, "P-Grid: A Self-Organizing Access Structure for P2P Information Systems," Proc. Ninth Int'l Conf. Cooperative Information Systems, pp. 179-194, 2001.
[2] K. Aberer, A. Datta, M. Hauswirth, and R. Schmidt, "Indexing Data-Oriented Overlay Networks," Proc. 31st Int'l Conf. Very Large Databases, pp. 685-696, 2005.
[3] A. Andrzejak and Z. Xu, "Scalable, Efficient Range Queries for Grid Information Services," Proc. IEEE Second Int'l Conf. Peer-to-Peer Computing, pp. 33-40, 2002.
[4] J. Aspnes, J. Kirsch, and A. Krishnamurthy, "Load Balancing and Locality in Range-Queriable Data Structures," Proc. 23rd Ann. ACMSIGACT-SIGOPS Symp. Principles of Distributed Computing, pp. 115-124, 2004.
[5] J. Aspnes and G. Shah, "Skip Graphs," Proc. 14th Ann. ACM-SIAM Symp. Discrete Algorithms, pp. 384-393, 2003.
[6] P.A. Bernstein, F. Giunchiglia, A. Kementsietsidis, J. Mylopoulos, L. Serafini, and I. Zaihrayeu, "Data Management for Peer-to-Peer Computing: A Vision," Proc. Fifth Int'l Workshop the Web and Databases, pp. 89-94, 2002.
[7] A. Bharambe, M. Agrawal, and S. Seshan, "Mercury: Supporting Scalable Multi-Attribute Range Queries," Proc. ACM Ann. Conf. Special Int'l Group Data Comm., pp. 353-366, 2004.
[8] L. Breslau, P. Cao, L. Fan, G. Phillips, and S. Shenker, "Web Caching and Zipf-Like Distributions: Evidence and Implications," Proc. Conf. Computer Comm., pp. 126-134, 1999.
[9] M. Cai, M. Frank, J. Chen, and P. Szekely, "MAAN: A Multi-Attribute Addressable Network for Grid Information Services," Proc. Fourth Int'l Workshop Grid Computing, pp 184, 2003.
[10] J. Claussen, A. Kemper, D. Kossmann, and C. Wiesner, "Exploiting Early Sorting and Early Partitioning for Decision Support Query Processing," Very Large Databases J., vol. 9, no. 3, pp. 190-213, 2000.
[11] A. Crainiceanu, P. Linga, A. Machanavajjhala, J. Gehrke, and J. Shanmugasundaram, "P-Ring: An Efficient and Robust P2P Range Index Structure," Proc. 27th Int'l Conf. Management of Data, pp. 223-234, 2007.
[12] C. Damgaard and J. Weiner, "Describing Inequality in Plant Size or Fecundity," J. Ecology, vol. 81, pp. 1139-1142, 2000.
[13] A. Datta, M. Hauswirth, R. John, R. Schmidt, and K. Aberer, "Range Queries in Trie-Structured Overlays," Proc. IEEE Fifth Int'l Conf. Peer-to-Peer Computing, pp. 57-66, 2005.
[14] P. Ganesan, M. Bawa, and H. Garcia-Molina, "Online Balancing of Range-Partitioned Data with Applications to Peer-to-Peer Systems," Proc. 30th Int'l Conf. Very Large Databases, pp. 444-455, 2004.
[15] J. Gao and P. Steenkiste, "An Adaptive Protocol for Efficient Support of Range Queries in DHT-Based Systems," Proc. IEEE 20th Int'l Conf. Network Protocols, pp. 239-250, 2004.
[16] S.D. Gribble, A.Y. Halevy, Z.G. Ives, M. Rodrig, and D. Suciu, "What Can Database Do for Peer-to-Peer?," Proc. Fourth Int'l Workshop the Web and Databases, pp. 31-36, 2001.
[17] A. Gupta, D. Agrawal, and A.E. Abbadi, "Approximate Range Selection Queries in Peer-to-Peer Systems," Proc. First Biennial Conf. Innovative Data Systems Research, 2003.
[18] M. Harren, J.M. Hellerstein, R. Huebsch, B.T. Loo, S. Shenker, and I. Stoica, "Complex Queries in DHT-Based Peer-to-Peer Networks," Proc. First Int'l Conf. Peer-to-Peer Systems, pp. 242-259, 2002.
[19] N. Harvey, M.B. Jones, S. Saroiu, M. Theimer, and A. Wolman, "SkipNet: A Scalable Overlay Network with Practical Locality Preserving Properties," Proc. Fourth USENIX Symp. Internet Technologies and Systems, 2003.
[20] R. Huebsch, J.M. Hellerstein, N. Lanham, B.T. Loo, S. Shenker, and I. Stoica, "Querying the Internet with PIER," Proc. 29th Int'l Conf. Very Large Databases, pp. 321-332, 2003.
[21] H.V. Jagadish, B.C. Ooi, and Q.H. Vu, "BATON: A Balanced Tree Structure for Peer-to-Peer Networks," Proc. 31st Int'l Conf. Very Large Databases, pp. 661-672, 2005.
[22] H.V. Jagadish, B.C. Ooi, K.-L. Tan, Q.H. Vu, and R. Zhang, "Speeding up Search in Peer-to-Peer Networks with a Multi-Way Tree Structure," Proc. 26th Int'l Conf. Management of Data, pp. 1-12, 2006.
[23] D. Karger, E. Lehman, F.T. Leighton, R. Panigraphy, M.S. Levine, and D. Lewin, "Consistent Hashing and Random Trees: Distributed Caching Protocols for Relieving Hot Spots on the World Wide Web," Proc. 29th Ann. ACM Symp. Theory of Computing, pp. 654-663, 1997.
[24] A. Mondal, K. Goda, and M. Kitsuregawa, "Effective Load-Balancing via Migration and Replication in Spatial Grids," Proc. Int'l Conf. Database and Expert Systems, pp. 202-211, 2003.
[25] V. Padmanabhan and L. Qiu, "The Content and Access Dynamic of a Busy Web Site: Findings and Implications," Proc. ACM Ann. Conf. Special Interest Group Applications, Technologies, Architectures, and Protocols for Computer Comm., pp. 111-123, 2000.
[26] T. Pitoura, N. Ntarmos, and P. Triantafillou, "Replication, Load Balancing and Efficient Range Query Processing in DHTs," Proc. 10th Int'l Conf. Extending Database Technology, pp. 131-148, 2006.
[27] T. Pitoura and P. Triantafillou, "Load Distribution Fairness in P2P Data Management Systems," Proc. IEEE 23rd Int'l Conf. Data Eng., pp. 396-405, 2007.
[28] T. Pitoura and P. Triantafillou, "Self-Join Size Estimation in Large-Scale Distributed Data Systems," Proc. IEEE 24th Int'l Conf. Data Eng., 2008.
[29] W. Pugh, "Skip Lists: A Probabilistic Alternative to Balanced Trees," Comm. ACM, vol. 33, no. 6, pp. 668-676, June 1990.
[30] S. Ramabhadran, S. Ratnasamy, J. Hellerstein, and S. Shenker, "Brief Announcement: Prefix Hash Tree," Proc. 23rd Ann. ACMSIGACT-SIGOPS Symp. Principles of Distributed Computing, p. 368, 2004.
[31] S. Ratnasamy, P. Francis, M. Handley, R. Karp, and S. Shenker, "A Scalable Content-Addressable Network," Proc. ACM Ann. Conf. Special Int'l Group Data Comm., pp. 161-172, 2001.
[32] A. Rowstron and P. Druschel, "Pastry: Scalable, Decentralized Object Location and Routing for Large-Scale P2P Systems," Proc. IFIP/ACM Int'l Conf. Distributed Systems Platforms (Middleware), pp. 329-350, 2001.
[33] O.D. Sahin, A. Gupta, D. Agrawal, and A.E. Abbadi, "A Peer-to-Peer Framework for Caching Range Queries," Proc. IEEE 20th Int'l Conf. Data Eng. (ICDE,), pp. 165-176, 2004.
[34] S. Saroiu, K.P. Gummadi, and S.D. Gribble, "A Measurement Study of Peer-to-Peer File Sharing Systems," Proc. Multimedia Computing and Networking, 2002.
[35] I. Stoica, R. Morris, D. Karger, M.F. Kaashoek, and H. Balakrishnan, "Chord: A Scalable Peer-to-Peer Lookup Service for Internet Applications," Proc. ACM Ann. Conf. Special Int'l Group Data Comm., pp. 149-160, 2001.
[36] P. Triantafillou and T. Pitoura, "Towards a Unifying Framework for Complex Query Processing over Structured Peer-to-Peer Data Networks," Proc. First Int'l Workshop Databases, Information Systems, and Peer-to-Peer Computing, pp. 169-183, 2003.
[37] K. Wu and P.S. Yu, "Replication for Load Balancing and Hot-Spot Relief on Proxy Web Caches with Hash Routing," ACM J. Distributed and Parallel Databases, vol. 13, no.2, pp. 203-220, 2003.
[38] Y.B. Zhao, J. Kubiatowitcz, and A. Joseph, "Tapestry: An Infrastructure for Fault-Tolerant Wide-Area Location and Routing," Technical Report UCB/CSD-01-1141, Univ. of California, Berkeley, Apr. 2001.

Index Terms:
Distributed databases, distributed applications, fault tolerance, query processing, internet applications.
Citation:
Theoni Pitoura, Nikos Ntarmos, Peter Triantafillou, "Saturn: Range Queries, Load Balancing and Fault Tolerance in DHT Data Systems," IEEE Transactions on Knowledge and Data Engineering, vol. 24, no. 7, pp. 1313-1327, July 2012, doi:10.1109/TKDE.2010.266
Usage of this product signifies your acceptance of the Terms of Use.