1 / 11

B-Trees

B-Trees. Katherine Gurdziel 252a-ba. Outline. What are b-trees? How does the algorithm work? Insertion Deletion Complexity What are b-trees used for? LEDA for AVL and Red Black trees. Description. B-trees are balanced search trees with one root B-tree nodes can have multiple children

turner
Download Presentation

B-Trees

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. B-Trees Katherine Gurdziel 252a-ba

  2. Outline • What are b-trees? • How does the algorithm work? • Insertion • Deletion • Complexity • What are b-trees used for? • LEDA for AVL and Red Black trees

  3. Description • B-trees are balanced search trees with one root • B-tree nodes can have multiple children • Every leaf has the same depth - the trees height • There are lower and upper bounds on the number of elements a leaf can contain

  4. Example B-Tree • Bounds on nodes can be expressed with a fixed integer t • Every node other than the root must have at least t-1 keys, internal node has at least t children • Every node can have at most 2t-1 children

  5. Insertion T = 3 so a node can hold at most 5 keys.

  6. Deletion

  7. Complexity • If n >= 1, then for any n-key B-tree T of height h and minimum degree t >= 2: h <= logt (n+1)/2 • Like red-black trees the height of B-trees grows as O(lg n) but for B-trees the base of the logarithm can be many times larger. • B-trees save a factor of about lg t over red-black trees in the number of nodes examined for most tree operations.

  8. Complexity of Procedures • Searching a B-tree is similar to searching a binary search tree except that a multiway branching decision is made at each node according to the number of the node’s children. O(t logt n) It is the same for insertion and deletion. • Splitting a node O(t logt n)

  9. Accessing Secondary Storage • Primary memory storage is more expensive than secondary, so secondary storage for computers often exceeds the amount of primary by several orders of magnitude. • The access time for a page may be large while the time to read the information once it is accessed is small. • System can only keep a limited amount of information in main memory at any time. • The algorithm for B-trees is well suited to efficiently access secondary storage.

  10. Suitability of B-trees • A large branching factor reduces the height of the tree and the number of disk accesses required to find any page • A B-tree can copy selected pages from disk to and from memory as needed so the size of the tree is not dependent on the size of main memory • The number of disk accesses required on a B-tree is proportional to the tree’s height. • For example, a B-tree with a branching factor of 1001 and height 2 stores over one billion pages and since the root is kept permanently in main memory only two disk accesses are required to find any page

  11. Run Time Comparison for AVL and Red Black Trees Powers of 2

More Related