example(of(b+tree( · b+tree(example(• a(balanced(tree(• each(node(can(have(atmost...

28
Example of B+ tree 1

Upload: others

Post on 20-Mar-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Example(of(B+tree( · B+Tree(Example(• A(balanced(tree(• Each(node(can(have(atmost (m(key(fields(and(m+1(pointer(fields • Half>full(mustbe(sasfied((exceptrootnode):(• m(is(even

Example  of  B+  tree  

1  

Page 2: Example(of(B+tree( · B+Tree(Example(• A(balanced(tree(• Each(node(can(have(atmost (m(key(fields(and(m+1(pointer(fields • Half>full(mustbe(sasfied((exceptrootnode):(• m(is(even

B+  Tree  Example  •  A  balanced  tree  •  Each  node  can  have  at  most  m  key  fields  and  m+1  pointer  

fields  •  Half-­‐full  must  be  sa@sfied  (except  root  node):  •  m  is  even  and  m=2d  

–  Leaf  node  half  full:  at  least  d  entries  –  Non-­‐leaf  node  half  full:  at  least  d  entries  

•  m  is  odd  and  m  =  2d+1  –  Leaf  node  half  full:  at  least  d+1  entries  –  Non-­‐leaf  node  half  full:  at  least  d  entries  (i.e.,  d+1  pointers)  

2  

Page 3: Example(of(B+tree( · B+Tree(Example(• A(balanced(tree(• Each(node(can(have(atmost (m(key(fields(and(m+1(pointer(fields • Half>full(mustbe(sasfied((exceptrootnode):(• m(is(even

Show  the  tree  aLer  inser@ons  

•  Suppose  each  B+-­‐tree  node  can  hold  up  to  4  pointers  and  3  keys.  

•  m=3  (odd),  d=1  •  Half-­‐full  (for  odd  m  value)  – Leaf  node,  at  least  2  (d+1)  entries  – Non-­‐leaf  nodes,  at  least  2  (d+1)  pointers  (1  entry)  

•  Insert  1,  3,  5,  7,  9,  2,  4,  6,  8,  10  

3  

Page 4: Example(of(B+tree( · B+Tree(Example(• A(balanced(tree(• Each(node(can(have(atmost (m(key(fields(and(m+1(pointer(fields • Half>full(mustbe(sasfied((exceptrootnode):(• m(is(even

Insert  1,  3,  5,  7,  9,  2,  4,  6,  8,  10  •  Insert  1  

1

4  

Page 5: Example(of(B+tree( · B+Tree(Example(• A(balanced(tree(• Each(node(can(have(atmost (m(key(fields(and(m+1(pointer(fields • Half>full(mustbe(sasfied((exceptrootnode):(• m(is(even

Insert  1,  3,  5,  7,  9,  2,  4,  6,  8,  10  

•  Insert  3,  5  

1

5  

Page 6: Example(of(B+tree( · B+Tree(Example(• A(balanced(tree(• Each(node(can(have(atmost (m(key(fields(and(m+1(pointer(fields • Half>full(mustbe(sasfied((exceptrootnode):(• m(is(even

Insert  1,  3,  5,  7,  9,  2,  4,  6,  8,  10  

•  Insert  3,  5  

1

1 3 5

6  

Page 7: Example(of(B+tree( · B+Tree(Example(• A(balanced(tree(• Each(node(can(have(atmost (m(key(fields(and(m+1(pointer(fields • Half>full(mustbe(sasfied((exceptrootnode):(• m(is(even

Insert  1,  3,  5,  7,  9,  2,  4,  6,  8,  10  

•  Insert  7  

1 3 5

7  

Page 8: Example(of(B+tree( · B+Tree(Example(• A(balanced(tree(• Each(node(can(have(atmost (m(key(fields(and(m+1(pointer(fields • Half>full(mustbe(sasfied((exceptrootnode):(• m(is(even

Insert  1,  3,  5,  7,  9,  2,  4,  6,  8,  10  

•  Insert  7  

1 3 5

1 3 5 7

5

8  

Page 9: Example(of(B+tree( · B+Tree(Example(• A(balanced(tree(• Each(node(can(have(atmost (m(key(fields(and(m+1(pointer(fields • Half>full(mustbe(sasfied((exceptrootnode):(• m(is(even

Insert  1,  3,  5,  7,  9,  2,  4,  6,  8,  10  

•  Insert  9  

1 3 5 7

5

9  

Page 10: Example(of(B+tree( · B+Tree(Example(• A(balanced(tree(• Each(node(can(have(atmost (m(key(fields(and(m+1(pointer(fields • Half>full(mustbe(sasfied((exceptrootnode):(• m(is(even

Insert  1,  3,  5,  7,  9,  2,  4,  6,  8,  10  

•  Insert  9  

1 3 5 7 9

5

1 3 5 7

5

10  

Page 11: Example(of(B+tree( · B+Tree(Example(• A(balanced(tree(• Each(node(can(have(atmost (m(key(fields(and(m+1(pointer(fields • Half>full(mustbe(sasfied((exceptrootnode):(• m(is(even

Insert  1,  3,  5,  7,  9,  2,  4,  6,  8,  10  

•  Insert  2  1 3 5 7 9

5

11  

Page 12: Example(of(B+tree( · B+Tree(Example(• A(balanced(tree(• Each(node(can(have(atmost (m(key(fields(and(m+1(pointer(fields • Half>full(mustbe(sasfied((exceptrootnode):(• m(is(even

Insert  1,  3,  5,  7,  9,  2,  4,  6,  8,  10  

•  Insert  2  1 3 5 7 9

5

1 2 3 5 7 9

5

12  

Page 13: Example(of(B+tree( · B+Tree(Example(• A(balanced(tree(• Each(node(can(have(atmost (m(key(fields(and(m+1(pointer(fields • Half>full(mustbe(sasfied((exceptrootnode):(• m(is(even

Insert  1,  3,  5,  7,  9,  2,  4,  6,  8,  10  

•  Insert  4  

1 2 3 5 7 9

5

13  

Page 14: Example(of(B+tree( · B+Tree(Example(• A(balanced(tree(• Each(node(can(have(atmost (m(key(fields(and(m+1(pointer(fields • Half>full(mustbe(sasfied((exceptrootnode):(• m(is(even

Insert  1,  3,  5,  7,  9,  2,  4,  6,  8,  10  

•  Insert  4  

1 2 3 4

3 5

5 7 9

1 2 3 5 7 9

5

14  

Page 15: Example(of(B+tree( · B+Tree(Example(• A(balanced(tree(• Each(node(can(have(atmost (m(key(fields(and(m+1(pointer(fields • Half>full(mustbe(sasfied((exceptrootnode):(• m(is(even

Insert  1,  3,  5,  7,  9,  2,  4,  6,  8,  10  

•  Insert  6  

1 2 3 4

3 5

5 7 9

15  

Page 16: Example(of(B+tree( · B+Tree(Example(• A(balanced(tree(• Each(node(can(have(atmost (m(key(fields(and(m+1(pointer(fields • Half>full(mustbe(sasfied((exceptrootnode):(• m(is(even

Insert  1,  3,  5,  7,  9,  2,  4,  6,  8,  10  

•  Insert  6  

1 2 3 4

3 5

5 7 9

1 2 3 4

3 5 7

5 6 7 9

16  

Page 17: Example(of(B+tree( · B+Tree(Example(• A(balanced(tree(• Each(node(can(have(atmost (m(key(fields(and(m+1(pointer(fields • Half>full(mustbe(sasfied((exceptrootnode):(• m(is(even

Insert  1,  3,  5,  7,  9,  2,  4,  6,  8,  10  

•  Insert  8  

1 2 3 4

3 5 7

5 6 7 9

17  

Page 18: Example(of(B+tree( · B+Tree(Example(• A(balanced(tree(• Each(node(can(have(atmost (m(key(fields(and(m+1(pointer(fields • Half>full(mustbe(sasfied((exceptrootnode):(• m(is(even

Insert  1,  3,  5,  7,  9,  2,  4,  6,  8,  10  

•  Insert  8  

1 2 3 4

3 5 7

5 6 7 8 9

1 2 3 4

3 5 7

5 6 7 9

18  

Page 19: Example(of(B+tree( · B+Tree(Example(• A(balanced(tree(• Each(node(can(have(atmost (m(key(fields(and(m+1(pointer(fields • Half>full(mustbe(sasfied((exceptrootnode):(• m(is(even

Insert  1,  3,  5,  7,  9,  2,  4,  6,  8,  10  

•  Insert  10  

1 2 3 4

3 5 7

5 6 7 8 9

19  

Page 20: Example(of(B+tree( · B+Tree(Example(• A(balanced(tree(• Each(node(can(have(atmost (m(key(fields(and(m+1(pointer(fields • Half>full(mustbe(sasfied((exceptrootnode):(• m(is(even

Insert  1,  3,  5,  7,  9,  2,  4,  6,  8,  10  

•  Insert  10  

1 2 3 4

3 5

5 6

7 8 9 10

9

7

1 2 3 4

3 5 7

5 6 7 8 9

20  

Page 21: Example(of(B+tree( · B+Tree(Example(• A(balanced(tree(• Each(node(can(have(atmost (m(key(fields(and(m+1(pointer(fields • Half>full(mustbe(sasfied((exceptrootnode):(• m(is(even

•  Dele@on  

21  

Page 22: Example(of(B+tree( · B+Tree(Example(• A(balanced(tree(• Each(node(can(have(atmost (m(key(fields(and(m+1(pointer(fields • Half>full(mustbe(sasfied((exceptrootnode):(• m(is(even

Show  the  tree  aLer  dele@ons  

•  Remove  9,  7,  8  

1 2 3 4

3 5 7

5 6 7 8

9 10

11

9

11 12

22  

Page 23: Example(of(B+tree( · B+Tree(Example(• A(balanced(tree(• Each(node(can(have(atmost (m(key(fields(and(m+1(pointer(fields • Half>full(mustbe(sasfied((exceptrootnode):(• m(is(even

•  ALer  removing  9  

1 2 3 4

3 5 7

5 6 7 8

9 10

11

9

11 12

23  

Page 24: Example(of(B+tree( · B+Tree(Example(• A(balanced(tree(• Each(node(can(have(atmost (m(key(fields(and(m+1(pointer(fields • Half>full(mustbe(sasfied((exceptrootnode):(• m(is(even

•  ALer  removing  9  

1 2 3 4

3 5

5 6

7 8 10 11 12

9

7

1 2 3 4

3 5 7

5 6 7 8

9 10

11

9

11 12

24  

Page 25: Example(of(B+tree( · B+Tree(Example(• A(balanced(tree(• Each(node(can(have(atmost (m(key(fields(and(m+1(pointer(fields • Half>full(mustbe(sasfied((exceptrootnode):(• m(is(even

Remove  9,  7,  8  

•  ALer  removing  7  1 2 3 4

3 5

5 6

7 8 10 11 12

9

7

25  

Page 26: Example(of(B+tree( · B+Tree(Example(• A(balanced(tree(• Each(node(can(have(atmost (m(key(fields(and(m+1(pointer(fields • Half>full(mustbe(sasfied((exceptrootnode):(• m(is(even

Remove  9,  7,  8  

•  ALer  removing  7  

1 2 3 4

3 5

5 6

8 10 11 12

11

7

1 2 3 4

3 5

5 6

7 8 10 11 12

9

7

26  

Page 27: Example(of(B+tree( · B+Tree(Example(• A(balanced(tree(• Each(node(can(have(atmost (m(key(fields(and(m+1(pointer(fields • Half>full(mustbe(sasfied((exceptrootnode):(• m(is(even

Remove  9,  7,  8  

•  ALer  removing  8  

1 2 3 4

3 5

5 6

8 10 11 12

11

7

27  

Page 28: Example(of(B+tree( · B+Tree(Example(• A(balanced(tree(• Each(node(can(have(atmost (m(key(fields(and(m+1(pointer(fields • Half>full(mustbe(sasfied((exceptrootnode):(• m(is(even

Remove  9,  7,  8  

•  ALer  removing  8  

1 2 3 4

3 5 7

5 6 10 11 12

1 2 3 4

3 5

5 6

8 10 11 12

11

7

28