R木とは?
1984年にAntonin Guttmanの論文、R-Trees: A Dynamic Index Structure for Spatial
Searchingによって、提唱されたデータ構造。B-Treeと同じように平衡木の構造になってい
る。
PostgreSQLの空間データ拡張版であるPostGISでもこのR-Treeのアルゴリズムをもとに実装
されている。実際にはR木をそのまま実装しているのではなく、GiSTに沿って実装されたも
のを使っている。
Slide 8
Slide 8 text
R木の構造
(画像はWikipediaより引用)
各階層のノードは子ノードを完全
に含む最小面積の矩形になる
葉ノードは対象の地物最小で覆う
最小面積の矩形になる
ノードが含む子ノード or 地物の数
の範囲はあらかじめ決められてい
る
R木の高さは以下の式で求められる
h = ∣ log
N∣ −
m
1
m: ノードが含む最小の数
N: 地物の数