R-trees A Programmers Introduction Kent Williams-King - - PowerPoint PPT Presentation

r trees
SMART_READER_LITE
LIVE PREVIEW

R-trees A Programmers Introduction Kent Williams-King - - PowerPoint PPT Presentation

R-trees A Programmers Introduction Kent Williams-King kawillia@ucalgary.ca March 1, 2011 Introduction 1 What is an R-tree? 2 What are R-trees useful for? Kent Williams-King R-trees Properties 1 Balancing Root node 1 Leaf nodes 2


slide-1
SLIDE 1

R-trees

A Programmer’s Introduction Kent Williams-King

kawillia@ucalgary.ca

March 1, 2011

slide-2
SLIDE 2

Introduction

1 What is an R-tree? 2 What are R-trees useful for? Kent Williams-King R-trees

slide-3
SLIDE 3

Properties

1 Balancing 1

Root node

2

Leaf nodes

3

Internal nodes

2 Tightness 1

Leaf nodes

2

Internal nodes

3 Leaf depth equality Kent Williams-King R-trees

slide-4
SLIDE 4

Tree depth

The branching factor of each level of an R-tree is at least m, and at most M, so: ⌈logm N⌉ − 1 ≤ depth ≤ ⌈logM N⌉ − 1 So: N m M Bound (inclusive) 4 1 2 1-3 4 2 4 0-1 32 4 8 1-2 25,000 15 50 2-3 25,000 2 15 3-4 100,000 2 4 8-16

1 Tree depth is low: why are lookups remotely expensive? Kent Williams-King R-trees

slide-5
SLIDE 5

Algorithms

1 Search 2 Insert 1

AdjustTree

3 Delete 1

CondenseTree

4 SplitNode Kent Williams-King R-trees

slide-6
SLIDE 6

R-tree example (m = 1, M = 3)

Kent Williams-King R-trees

slide-7
SLIDE 7

R-tree example (m = 1, M = 3)

R1 Kent Williams-King R-trees

slide-8
SLIDE 8

R-tree example (m = 1, M = 3)

R1 R2 Kent Williams-King R-trees

slide-9
SLIDE 9

R-tree example (m = 1, M = 3)

R1 R2 R3 Kent Williams-King R-trees

slide-10
SLIDE 10

R-tree example (m = 1, M = 3)

R4 R2 R3 R1 Kent Williams-King R-trees

slide-11
SLIDE 11

R-tree example (m = 1, M = 3)

R4 R2 R3 R1 R5 Kent Williams-King R-trees

slide-12
SLIDE 12

R-tree example (m = 1, M = 3)

R4 R2 R6 R1 R5 R3 Kent Williams-King R-trees

slide-13
SLIDE 13

R-tree example (m = 1, M = 3)

R7 R4 R6 R2 R3 R1 R5 Kent Williams-King R-trees

slide-14
SLIDE 14

R-tree example (m = 1, M = 3)

R7 R4 R8 R6 R2 R3 R1 R5 Kent Williams-King R-trees

slide-15
SLIDE 15

R-tree example (m = 2, M = 4)

Kent Williams-King R-trees

slide-16
SLIDE 16

R-tree example (m = 2, M = 4)

R1 Kent Williams-King R-trees

slide-17
SLIDE 17

R-tree example (m = 2, M = 4)

R1 R2 Kent Williams-King R-trees

slide-18
SLIDE 18

R-tree example (m = 2, M = 4)

R1 R2 R3 Kent Williams-King R-trees

slide-19
SLIDE 19

R-tree example (m = 2, M = 4)

R1 R2 R3 R4 Kent Williams-King R-trees

slide-20
SLIDE 20

R-tree example (m = 2, M = 4)

R4 R3 R2 R5 R1 Kent Williams-King R-trees

slide-21
SLIDE 21

R-tree example (m = 2, M = 4)

R4 R3 R6 R2 R5 R1 Kent Williams-King R-trees

slide-22
SLIDE 22

R-tree example (m = 2, M = 4)

R4 R3 R6 R2 R5 R1 R7 Kent Williams-King R-trees

slide-23
SLIDE 23

R-tree example (m = 2, M = 4)

R4 R3 R6 R5 R1 R8 R2 R7 Kent Williams-King R-trees