???? ???? ??? ???? ? ??????? B - PowerPoint PPT Presentation

1 / 37
About This Presentation
Title:

???? ???? ??? ???? ? ??????? B

Description:

b lru ... – PowerPoint PPT presentation

Number of Views:33
Avg rating:3.0/5.0
Slides: 38
Provided by: Adm9232
Category:
Tags: trees

less

Transcript and Presenter's Notes

Title: ???? ???? ??? ???? ? ??????? B


1
??? ???
  • ???? ???? ??? ???? ? ??????? B

2
????? ???
  • ????? ? ???? ??? B ???? ?? ????? ???? ?? ???? ??
    ?? ????? ??? ???.
  • ????? ?? ???? ????????? ????? ?? ???? ??? ??
    ????? ??? ????? ???? ??????? ???? ?????? ??? ????
    AVL ???? ???? ??? (paged).
  • ????? ???? ??? ??? ?????? ? ??? ???? ? ???????
    ???? ??? ?????.
  • ??? ????? ??? ???? ?? ???? ???? ??? B ?????? ??
    ????? ????? ????? ?? ?? ?? ????? ??? ?????.
  • ????? ??? ???? ???? ??? B
  • ????? ???? BTreeNode? ????? ??? ??? ???? ??? B ??
    ?????.
  • ????? ???? BTree? ????? ???? ???? ??? B ? ????
    ????? ?? ??.
  • ????? ????? ???? ???? ?????? ???? ??? B
  • ????? ??????? ???? ?? ? ???? ??? B ?????.
  • ????? ???????? ??? ???? ???? B? ??? ?? ???? ??
    ???? ????? ???? B ? ???? B ?? ???????? ??? ?????
    ?? ??? ????? ??? ???.

3
  • ???????? ?? ??????? ?????? ?????????? ??
  • ???????? ?? ??????? ??? ?????????? ??? ????? ??
    ???? ? ?????, ???? ?? ? ???? ??? ???? ??

4
????
  • ???? ???? ??? ????? ???? ?? ????? ????? ??? ???
    ?? ?????? ?? ????? ????? ??? ???

5
???? ??? ?? ?? ???? ????? ?? ???
  • ????? ?? ??? ???? ???? ???? ???? ?????? ??????
    ????.
  • ??? ? ??? ???? ?? ???? ????? ???? ????? ???.

6
?????? ???? ???
  • ??????? ?? ???? ??? ?????? ???? ??

?? ???? ?????? ???? ?? ??? ?? ??? ?? ???? ????
????? ??? ?????? ?? ?? ???? ???? ???? ?? ?? ??? .
?? ??? ????? ?? ?? ?? ??????? ?? ???? ??? ?????
?? ???? ?? ?? ???? ?? ??? ???? . ? ???? ??? ????
?? ?? ???? ?? ??? ????? ????? ???? , ?? ?????
??? ??????? ?? ???? ????? ?? ????? ???? .
7
??? ??? ????? ?? ?? ???? ?????? ???? ?? ?? ????
?? ???.
8
?????? ???? ???
  • ??????? ?? ???? ?????? ???

9
?? ???? ??????? AVL
  • ?? ????? ???? ?????? ????? ???? ?? ?????? ?? ??
    ??? ???? ??? ???? ?? ????? ?????? ?? ?? ?????
    ????? ?? ????.
  • ???? ????? ????? ??? ?? ???? AVL ????? ??? ?? ???
    ??? ?????? ???? ??? ???? ???.

10
??????? ???? B
  • ?????? ????? ?? ????? ? ???????? ???? ???? ???
    ????? " ???? B ????? ?? "?? ????? ???? ??????
    ????? ???????? ? ???? ??? ???????? ????? ?? ?????
    ??? ? 1960 ???? ?? ???. ???? ???? ???? ???? ???
    ???? ????? ? ??????? ???? ?? ?? ???? ???? ???? ??
    ????? ?????? ???? ?? ????? ???? ?? ????? ???. ??
    ???? ????? ???? ? ?. ?? ????? ????? ?? ???? ????
    ?????? ??? ?? ?????. ?? ??? 1972 ?? ?? ????? ??
    ?? ??? " ?????? ??? ? ??????? ???? ??? ???? ??? ?
    ???? " ????? ????? ?? ???? B ?? ?? ???? ?????
    ???.

11
???? B
  • ?? ??? ???? B ?? ????? ???? ??? .?? ???? ?? ???
    ????? ?? ????? ?????? ?? ?????? ???? ???? ?????
    ?? ????? ???? ??? ????.

12
???? ????
  • ?? ??? ?? ??? ???? ?? ????? ????? ???
  • ????? ????-???? ?? ???? ????? ??????? ?? ???.
  • ????? ?????? ???? ?? ????? ???? ?? ?????? ?? ???.
  • ?? ??? ?? ????? ?? ????? ????? ???? ?? ???
    ??????? ??? .
  • ?????? ??? ????? ????

13
???? ?? ?? ?? B ?? ????? m
  • ?? ???? ?? ???? m ????? ????.
  • ?? ???? ??? ???? ?? ? ????? ????? m/2?????
    ????.
  • ???? ?? ??? ?? ????? ????.
  • ???? ????? ?? ?? ??? ???? ?????.
  • ??? ?????, ?? ???? ???? ? ???? ??? ?? ???? ??? ??
    ??? ?? ???? ?? ????? ?? ???.

14
????? ?? ???? B
Note references to actual record only occur in
the leaf nodes. The interior nodes are only
higher level indexes (this is why there are
duplications in the tree)
15
????? ?? ???? B
  • Problem 1 Look for L
  • Problem 2 Look for S

16
??? ????? ?? ???? B
  • ?? ???? ?????? ??? ?? ????.
  • ?? ?? ?? ??? ??? ?? ???? ?? ???? ?? ?? ???? ???
    ?? ?????.

17
????? ??? ????
  • ????? ?? ??? ??? ?? ??????? ?? ??? FINDLEAF ???
    ?? ?????.
  • ??? ????? ????? ? ????? ???? ?? ???? ?? ?? ????.
  • ????? ?? ???? ???? , ?? ????? ?? ???? ???? ?????
    ??? ???.

18
Example
a) Insert of C, S, D, T into the initial node.
b) Insertion of A
c) Insertions of M and P ?
19
c) Insertion of I
d) Insertions of B, W, N and G
e) Insertion of U?
20
Example
e) Insertion of U?
e) Insertion of R?
21
Example
e) Insertion of R?
22
Example
23
Example
24
????? ???? ???? ???? ?? Split
After inserting C, S, D, T
Inserting A
25
????? ???? ????? ?? ???? ??? ????? ??
Inserting R
26
Worst-Case Search Depth I
  • Given 1,000,000 keys and a B-Tree of order 512,
    what is the maximum number of disk accesses
    necessary to locate a key in the tree? In other
    words, how deep will the tree be?
  • Each key appears in the leaf gt What is the
    maximum height of a tree with 1,000,000 leaves?
  • The maximum height will be reached if all pages
    (or nodes) in the tree has the minimum allowed
    number of descendents
  • For a B-Tree of order m, the minimum number of
    descendents from the root page is 2. It is ?m/2?
    for all the other pages.

27
Worst-Case Search Depth II
Level the minimum number of descendants
1 2
2 2 ?m/2?
3 2 ?m/2? ?m/2?
4 2 ?m/2?3
.
d 2 ?m/2?d-1
28
Worst-Case Search Depth III
  • For any level d of a B-Tree, the minimum number
    of descendants extending from that level is
    .
  • 2 ?m/2? d-1
  • For a tree with N keys in its leaves, we have
  • N? 2 ?m/2? d-1
  • ? d ? 1 log?m/2? (N/2)
  • For m 512 and N 1,000,000, we thus get
  • d ? 3.37

29
Deletion from a B-Tree Rules for Deleting a key
k from a node n-
  • If n has more than the number of keys and the k
    is not the largest in n, simply delete k from n.
  • If n has more than the minimum number of keys and
    the k is the largest in n, delete k and modify
    the higher level indexes to reflect the new
    largest key in n.

30
Deletion from a B-Tree Rules for Deleting a key
k from a node n
  • If n has exactly the minimum number of keys and
    one of the siblings of n has few enough keys,
    merge n with its sibling and delete a key from
    the parent node.
  • If n has exactly the minimum number of keys and
    one of the siblings of n has extra keys,
    redistribute by moving some keys from a sibling
    to n, and modify the higher level indexes to
    reflect the new largest keys in the affected
    nodes.

31
Deletion from a B-Tree Example
  • Problem 1 Delete C
  • Problem 2 Delete P
  • Problem 3 Delete H

32
Redistribution during Insertion
  • Redistribution during insertion is a way to
    avoid, or at least postpone, the creation of new
    pages.
  • Redistribution allows us to place some of the
    overflowing keys into another page instead of
    splitting an overflowing page.
  • B Trees formalize this idea

33
???? ??????? B
  • ?? ???? ?? ???? m ????? ????.
  • ?? ???? ??? ???? ?????(2m-1)/3 ????? ????.
  • ???? ????? ?? ????? ????.
  • ???? ????? ?? ?? ??? ???? ?????.

34
??? LRU
  • ??? ??? ????? ?????? ??? ?? ?????? ?? ?????
    ?????? ?? ?? ???? ??? ?? ??????? ?????? ?????? ??
    ?? ???? ???? ?????? ????? ????.

35
??????? ???? ???? B
  • ???? B ????? ???????? ??? ? ??? ???? ?????? ??
    ?????? ?????? ?? log K I ?? ???? ?? ?? ????? ??
    ???? I ?????? ? ???? ?? ???? ?? ??? ? K ?? ???
    ????? ?????? ?? ?????? ??? ?? ?????? ? ???? ??
    ???? ?? ???? ?? ???? ?? ??????? ? ???????? ?????
    ?? ???? ????? ????.

36
PAGE FAULT
  • ?????? ??????? ?? ???? ???? ?????? ???? ?? ?? ??
    ???? ???? ?????.

37
?? ??? ???? ??? ???? ???? ????
  • ?????? ?? ???? ?? ?? ???? ??????? ????? ???.
  • ?? ???? ???? ?? ???? ???? ??? ??? ???? ?????
    ??????? ?? ??? ???.
Write a Comment
User Comments (0)
About PowerShow.com