Segment databases store N non-crossing but possibly touching segments in secondary storage. Efficient data structures have been proposed to determine all segments intersecting a vertical line (stabbing queries). In this paper, we consider a more general type of query for segment databases, determining intersections with respect to a generalized segment (a fine, a ray, a segment) with a fixed angular coefficient. We propose two solutions to solve this problem. The first solution has optimal O(N/B) space complexity, where N is the database size and B is the page size, but the query time is far from optimal. The second solution requires O(N/Blog2 B) space, the query time is O(logB N/B(logB N/B+ log2 B + IL*(B)) + T/B), which is very close to the optimal, and insertion amortized time is O(logB N/B+ log2B + 1/B log B2 N/B ), where T is the size of the query result, and IL*(B) is a small constant, representing the number of times we must repeatedly apply the log* function to B before the result becomes ≤ 2.
CITATION STYLE
Bertino, E., Catania, B., & Shidlovsky, B. (1998). Towards optimal indexing for segment databases. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 1377 LNCS, pp. 39–53). Springer Verlag. https://doi.org/10.1007/bfb0100976
Mendeley helps you to discover research relevant for your work.