Можно ли преобразовать любое дерево в R-дерево? - PullRequest
1 голос
/ 05 марта 2012

Возможно ли теоретически преобразовать любое дерево в R-дерево? Например, скажем, у меня есть дерево узлов, каждый из которых характеризуется идентификатором, значением и N функциями. Имеет ли смысл преобразовать это в (N + 2) мерное R-дерево? Как это повлияет на время поиска и размер дерева на диске? Что произойдет, если количество функций не является постоянным для каждого узла?

1 Ответ

1 голос
/ 08 марта 2012

Если дерево не сбалансировано или не имеет контролируемого разветвления , это не будет правильным R-деревом.

КонечноВы можете вычислить MBR, и оно станет «вложенным деревом прямоугольников».Но R-дерево - это нечто большее, чем просто использование прямоугольников;ключевой момент R-дерева - быть сбалансированным .

Очевидно, что вводить идентификатор в качестве дополнительной функции не имеет особого смысла.Это не приведет к ощутимым расколам .Конечно, вы можете сохранить идентификатор, но я не буду использовать его для индексации.

Вы действительно должны учитывать запросов , которые вы хотите выполнить. Любой индекс должен соответствовать вашим запросам, а не только вашим данным !

...