Presentation is loading. Please wait.

Presentation is loading. Please wait.

Massively Distributed Database Systems Distributed Hash Spring 2014 Ki-Joune Li Pusan National University.

Similar presentations


Presentation on theme: "Massively Distributed Database Systems Distributed Hash Spring 2014 Ki-Joune Li Pusan National University."— Presentation transcript:

1 Massively Distributed Database Systems Distributed Hash Spring 2014 Ki-Joune Li http://isel.cs.pusan.ac.kr/~lik Pusan National University

2 Key papers and documents R. Ratnasamy, et al., “A Scalable Content- Addressable Network”, ACM SIGCOMM 2001, pp.161-172 I. Stoica, et al., “Chord: A scalable peer-to-peer lookup service for internet applications”, ACM SIGCOMM 2001, pp.149-160 B. Y. Zhao, et al., “Tapestry: A Resilient Global-Scale Overlay for Service Deployment”, IEEE Journal of Selected Areas in Comm. 22(1), 2004, pp.41-53 2

3 p2p Napster Lookup table is maintained by a central server Once the session is setup by the server, then p2p works. Gnutella Query Flooding protocol 3 Local lookup table ………………

4 How to improve Gnutella like protocol Problems of Gnutella protocol How to improve it 4

5 Chord Scalable p2p lookup service – SIGCOMM Conf. 2001 Java Implementation (Open Source) http://open-chord.sourceforge.net/ Basic Ideas No central server Distributed lookup table (Distributed Hash Table) Cf. Dynamic Hash Reduce the number of hops to find node storing key k 5

6 Searching node with key k 6 Data with key k h(k)=n Distributed Hash Table Searching time: Approximately O(log n) hops

7 Distributed lookup table (Finger Table) 7 For each node with IP, the node number is determined by h(IP)=n Finger[k].start=n+2 (k-1) The first node after Finger[k].start Given m-bits node number keys stored at the node

8 Searching by Finger Table 8 1. Search query submitted to node 3 wit h a key such that h(k)=1 2. h(k)=1 is contained by [7,3)  node 0 to ask 3. Send a request to node 0 4. Node 1 is found at node 0 5. Forward the request to node 1 6. h(k)=1 found at node 1

9 How to maintain Finger Table – Join 9 New node 6

10 How to maintain Finger Table – Leaves 10 node 3 leaves

11 CAN Content Addressable Network – SIGCOMM Conf. 2001 Basic Ideas No central server Distributed lookup table – A d-dimensional virtual space Reduce the number of hops to find node storing key k 11

12 Basic Idea 12 Node n Neighbor Information Search with Key k h(k)=p(x, y)  1. Submit the query to any node p(x, y) 2. Routing to the grid containing p(x, y) 3. Find the node storing the record with key k Individual node : 2d neighbor information d/4 n 1/d hops in average to find the key

13 New node joining 13 1. New node random point P 2. Routing from any node q to p 4. Split 5. Update neighbor information

14 Performance 14 Effect of dimensions and number of nodes -CAN Effect of number of nodes - Chord


Download ppt "Massively Distributed Database Systems Distributed Hash Spring 2014 Ki-Joune Li Pusan National University."

Similar presentations


Ads by Google