Indexing for Data Models with Constraints and Classes

作者:

Highlights:

摘要

We examine I/O-efficient data structures that provide indexing support for new data models. The database languages of these models include concepts from constraint programming (e.g., relational tuples are generated to conjunctions of constraints) and from object-oriented programming (e.g., objects are organized in class hierarchies). Letnbe the size of the database,cthe number of classes,Bthe page size on secondary storage, andtthe size of the output of a query: (1) Indexing by one attribute in many constraint data models is equivalent to external dynamic interval management, which is a special case of external dynamic two-dimensional range searching. We present a semi-dynamic data structure for this problem that has worst-case spaceO(n/B) pages, query I/O timeO(logB n+t/B) andO(logB n+(logB n)2/B) amortized insert I/O time. Note that, for the static version of this problem, this is the first worst-case optimal solution. (2) Indexing by one attribute and by class name in an object-oriented model, where objects are organized as a forest hierarchy of classes, is also a special case of external dynamic two-dimensional range searching. Based on this observation, we first identify a simple algorithm with good worst-case performance, query I/O timeO(log2 c logB n+t/B), update I/O timeO(log2 c logB n) and spaceO((n/B) log2 c) pages for the class indexing problem. Using the forest structure of the class hierarchy and techniques from the constraint indexing problem, we improve its query I/O time toO(logB n+t/B+log2 B).

论文关键词:

论文评审过程:Received 20 November 1995, Available online 25 May 2002.

论文官网地址:https://doi.org/10.1006/jcss.1996.0043