我只是想知道为什么总是将kd-tree视为主要的内存结构。这意味着每个节点都保存在主内存中,不是吗?
与B树(每个节点都应适合一个磁盘块)相比,这对我来说没有太大意义。谁能解释一下?谢谢 :)
为了将树有效地存储在磁盘上,它应适合8k页(大多数硬盘驱动器的页面大小)。如果使用kd树,这将是巨大的浪费,并且效率很低。
因此,将kd-tree写入磁盘不会奏效。
另一方面,可以设置B树,以便它们使用整个磁盘页面。这很重要,因为磁盘在访问块(甚至更好:块的范围)时比在随机访问字节时效率更高。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句