1 / 24

VBI-Tree: A Peer-to-Peer Framework for Supporting Multi-Dimensional Indexing Schemes

VBI-Tree: A Peer-to-Peer Framework for Supporting Multi-Dimensional Indexing Schemes. Presenter: Quang Hieu Vu H.V.Jagadish, Beng Chin Ooi, Quang Hieu Vu, Rong Zhang, Aoying Zhou.

trinh
Download Presentation

VBI-Tree: A Peer-to-Peer Framework for Supporting Multi-Dimensional Indexing Schemes

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. VBI-Tree: A Peer-to-Peer Framework for Supporting Multi-Dimensional Indexing Schemes Presenter: Quang Hieu Vu H.V.Jagadish, Beng Chin Ooi, Quang Hieu Vu, Rong Zhang, Aoying Zhou

  2. VBI (Virtual Binary Index) -Tree framework

  3. m BATON: BAlanced Tree Overlay Network (VLDB’05) • Definition:A tree is balanced if and only if at any node in the tree the height of its two subtrees differ by at most one. Binary Balanced Tree Index Architecture

  4. Properties • Property 1:A tree is a balanced tree if every node in the tree that has a child also has both its left and right routing tables full • A routing table is full if none of its valid links is NULL • Property 2:If a node x contains a link to another node y in its left or right routing tables, the parent node of x must also contain a link to the parent node of y unless the same node is parent of both x and y

  5. VBI-Tree structure VBI-Tree Structure

  6. VBI-Tree structure • Differences with BATON: • Two kinds of nodes: routing nodes (internal nodes) and data nodes (leaf nodes). • Each peer node is in charge of a pair of node: routing node and data node • Each node has an additional upside path which keeps information of regions covered by the node’s ancestors. • Theorem:In an in-order traversal of the VBI-Tree, data nodes and routing nodes alternate.

  7. Node join • Two phases: • First phase: determine where the new node should join • Similar to BATON’s join algorithm except that only routing nodes are considered • Second phase: the node accepting the new node splits its correspondence data node into two parts • It keeps one part, the new node keeps one part

  8. u’ n’ Example • New node u joins the network u a b c g d e f h i j k l m n o p q r s u h’ d’ i’ b’ k’ a’ m’ l’ c’ n’ g’ o’ p’ j’ q’ r’ e’ f’ s’ t’

  9. Node departure • Similar to BATON except that only routing nodes are considered • Only leaf routing nodes whose routing neighbor nodes don’t have full routing children nodes can leave the network • Upon leaving, children data nodes of the departed routing node are merged together. • The new data node is pulled up to replace the position of the departed routing node. • Others have to find a replacement routing node which is a routing node in the first case

  10. f’ r’ f’ Example • Leaf routing node r leaves the network a b c g d e f h i j k l m n o p q r s h’ d’ i’ b’ k’ a’ m’ l’ c’ n’ g’ o’ p’ j’ q’ e’ s’ t’

  11. Index construction • Each internal node manages a region covering all regions managed by its children • Data is stored only at leaf nodes • Discrete data: help to avoid updating upside paths frequently Two dimensional index construction

  12. Range query search • If the node region covers or intersects with the searched region • The query is processed at the node and/or its children • If there is any ancestor of a node whose region intersects with the searched region • If the node in other side hasn’t been searched before • The query is forwarded to that node • Else • The query is forwarded upward to the ancestor • Note: ancestors whose children cover the whole searched region don’t need to be searched

  13. Example • Node h wants to search the shaded region a b c d e f g j k h i e’ a’ g’ l’ j’ h’ f’ k’ d’ i’ c’ b’

  14. Load balancing • Similar to rotations of AVL tree LL Rotation LR Rotation

  15. Load balancing RR Rotation RL Rotation

  16. Experimental study • Experimental setup • Implement M-tree over VBI-Tree framework. • 100000 data objects are inserted into a network of 10000 nodes. • 1000 exact queries, 1000 range queries, and 1000 kNN queries are executed. • CAN is used for comparison.

  17. Performance of point queries Average and maximum hops in different dimensions Average hops in different network sizes

  18. Performance of range and kNN queries Average hops to find range query results Average hops to find kNN query results

  19. Cost of updating upside path vs cost of search Average number of messages for updating upside paths Average number of hops for searching queries

  20. Workload distribution Workload distribution among nodes

  21. Effect of load balancing Average additional number of messages required in case of skewed data distribution Size of load balancing process

  22. Access load Access load for nodes at different levels

  23. Conclusion • VBI-Tree • A framework capable of supporting a variety of well-tested multi-dimensional indexing methods such as the R-Tree, X-Tree, SSTree, and M-Tree in a P2P system. • Introduction of discrete data as a mean to minimize update costs and novel P2P search algorithms that account properly for such discrete data. • An AVL-tree like rotation scheme for rebalancing the virtual binary tree when needed, leading to effective load balance even with highly skewed data.

  24. Thank you ! • Questions & Answers

More Related