R – Tree là sơ đồ chỉ số hóa các đối tượng không gian. Nó là cây phân cấp. Mỗi phần lá của cây chứa chữ nhật và con trỏ. Con trỏ trỏ đến đặc trưng chứa chữ nhật bao. Mỗi đặc trưng không gian trong CSDL được đặt trong chữ nhật xác định bởi tọa độ x, y cực đại và cực tiểu của đối tượng. Tập hợp các chữ nhật được tổ chức trong tập các “thùng” (bucket) và nó được sử dụng như chỉ số các đặc trưng. Chỉ số này rất hiệu quả khi khai thác đối tượng tại vị trí cho trước. Để xâm nhập dữ liệu ta phải tìm toàn bộ các hộp chứa điểm yêu cầu, sau đó xâm nhập đối tượng trong các hộp đó. R – Tree cho phép các vùng chỉ số phủ lên nhau. [1]
Hình 2.10: Sơ đồ R - Tree
Mỗi R-Tree kết hợp với một thứ tự là một số nguyên K. Mỗi nút R-Tree
không phải là lá bao gồm một tập từ K/2 đến K hình chữ nhật. Bằng trực quan thấy rằng mỗi nút không phải là lá và không phải là gốc chứa từ m đến M cành con. Đặc điểm này làm cho R-Tree thích hợp với việc truy vấn đĩa bởi vì mỗi truy cập đĩa
một số hình chữ nhật trong một trang, chiều cao của R-Tree sử dụng để lưu trữ tập hợp các hình chữ nhật thường rất nhỏ. Do vậy số lần truy cập đĩa giảm bớt so với các cây mô tả trên. Một hình chữ nhật hoặc là “thực” hoặc là một hình bao một nhóm hình chữ nhật. Các nút lá bao gồm một hình chữ nhật “thực” trong khi các nút không lá bao gồm các hình chữ nhật nhóm từ một tập các hình chữ nhật nhỏ hơn. Hình 2.11 chỉ ra cách nhóm các hình chữ nhật như sau: R – Tree với m= 2, M= 4, hình R bao gồm 14 đối tượng, nhóm các hình chữ nhật biểu diễn nút lá gồm a, b, c, d được biểu diễn bằng các hình có viền chấm mờ nhỏ. [5], [6]
Nhóm Các hình chữ nhật
A 1, 2, 5, 6
B 3, 4, 7, 10
C 8, 9, 14
D 11, 12, 13
Hình 2. 11: Bản đồ mẫu mô tả cách nhóm các hình chữ nhật minh họa cây R
Hình 2.11 chỉ ra cây R bậc 4 liên kết với các chữ nhật trên hình 2.11. Cấu trúc của một R-Tree được định nghĩa như sau:
rtnodetype = record
Rect1, ..., Rectk:Rectangle; P1, ..., Pk: rtnodetype; End
Quy tắc căn bản cho thành lập R - Tree rất giống trên B - Tree. Mỗi mục trong nút lá là 2 – tuple (bộ nhận dạng) của công thức (R, 0) sao cho R là hình chữ nhật nhỏ nhất chứa đối tượng 0. Mỗi mục trong nút không lá là 2 - tuple của lập công thức (R, P) sao cho R là hình chữ nhật nhỏ nhất chứa hình chữ nhật m nút con
chỉ vào P. Nút gốc chứa ít nhất hai mục trừ trường hợp nó là nút lá. Mỗi nút lá không phải là gốc chứa từ m đến M bản ghi chỉ số, m ∈ [ 0, M / 2 ]; M: số mục tối đa trong nút, có thể khác nhau với nút lá và nút không lá. M= size (P)/size (E), P là số trang đĩa; E là số mục. Mỗi đầu vào <E, ptr> trong nút không phải lá, E là chữ nhật nhỏ nhất chứa các nút con. Gốc có ít nhất 2 cành trừ khi nó là nút lá d + 1. Tất cả nút lá ở cùng một mức. Độ sâu của R – Tree chỉ mục d ít nhất Md+1 đối tượng và nhiều nhất Md+1 đối tượng. [4]
Hình 2.12: Ví dụ về tập hợp các đoạn thẳng được nhúng với lưới 4 x 4
Xét tập hợp các đoạn thẳng m ở ví dụ trên được chỉ ra rằng nhúng m lưới 4x4. Với M = 3 và m = 2. Một R- tree thu thập được cho trước m ở hình vẽ 2.12a. Hình 2.12b cho thấy khối lưu trữ không gian riêng của hình chữ nhật bao của nút m ở hình vẽ 2.12a, với tuyến chỉ rõ hình chữ nhật phù hợp với cây con khởi tạo tại nút không là nút lá. Lưu ý rằng R- Tree không phải là duy nhất. Cấu trúc của nó phụ thuộc chặt chẽ vào thứ tự đoạn thẳng m được đưa vào trong cây. [4]
Hình 2.13: Tập hợp các đoạn thẳng và không gian được bao bởi các hình chữ nhật