An efficient strategy for storing and searching binary trees in WORM external memory
Consider the problem of searching and storing a massive binary tree in WORM (Write Once Read Many) secondary memory. Tree nodes are organized in pages, each of which contains a fixed number of nodes. Pages are transferred to primary memory as the tree is traversed. This work presents a new strategy for paging that aims to decrease the amount of unused space in each page as well as to reduce the total number of pages required to store the tree while also reduce the number of pages accessed for searching. The algorithm employs an efficient strategy based on bin packing for allocating unbalanced trees. Experimental results are reported comparing the performance of two bin-packing heuristics, as well as other paging strategies and B-trees. Results confirm the superior performance of the proposed approach both in terms of the number of page transfers required for searching and the page filling percentage.
binary trees secondary memory bin packing paging trees storing trees