Results 1  10
of
16
Geometric Range Searching and Its Relatives
 CONTEMPORARY MATHEMATICS
"... ... process a set S of points in so that the points of S lying inside a query R region can be reported or counted quickly. Wesurvey the known techniques and data structures for range searching and describe their application to other related searching problems. ..."
Abstract

Cited by 280 (41 self)
 Add to MetaCart
... process a set S of points in so that the points of S lying inside a query R region can be reported or counted quickly. Wesurvey the known techniques and data structures for range searching and describe their application to other related searching problems.
External Memory Data Structures
, 2001
"... In many massive dataset applications the data must be stored in space and query efficient data structures on external storage devices. Often the data needs to be changed dynamically. In this chapter we discuss recent advances in the development of provably worstcase efficient external memory dynami ..."
Abstract

Cited by 76 (32 self)
 Add to MetaCart
In many massive dataset applications the data must be stored in space and query efficient data structures on external storage devices. Often the data needs to be changed dynamically. In this chapter we discuss recent advances in the development of provably worstcase efficient external memory dynamic data structures. We also briefly discuss some of the most popular external data structures used in practice.
Optimal external memory interval management
 SIAM Journal on Computing
"... This work has been made available by the University of Kansas ..."
Abstract

Cited by 50 (7 self)
 Add to MetaCart
(Show Context)
This work has been made available by the University of Kansas
Optimal Dynamic Range Searching in Nonreplicating Index Structures
 In Proc. International Conference on Database Theory, LNCS 1540
, 1997
"... We consider the problem of dynamic range searching in tree structures that do not replicate data. We propose a new dynamic structure, called the Otree, that achieves a query time complexity of O(n (d\Gamma1)=d ) on n ddimensional points and an amortized insertion/deletion time complexity of O(l ..."
Abstract

Cited by 30 (2 self)
 Add to MetaCart
(Show Context)
We consider the problem of dynamic range searching in tree structures that do not replicate data. We propose a new dynamic structure, called the Otree, that achieves a query time complexity of O(n (d\Gamma1)=d ) on n ddimensional points and an amortized insertion/deletion time complexity of O(log n). We show that this structure is optimal when data is not replicated. In addition to optimal query and insertion/deletion times, the Otree also supports exact match queries in worstcase logarithmic time. 1 Introduction Given a set S of ddimensional points, a range query q is specified by d 1dimensional intervals [q s i ; q e i ], one for each dimension i, and retrieves all points p = (p 1 ; p 2 ; : : : p d ) in S such that h8i 2 f1; : : : ; dg : q s i p i q e i i. This type of searching in multidimensional space has important applications in geographic information systems, image databases, and computer graphics. Several structures such as the range trees [3], Prange trees [29...
Efficient CrossTrees for External Memory
, 1998
"... . We describe efficient methods for organizing and maintaining large multidimensional data sets in external memory. This is particular important as access to external memory is currently several order of magnitudes slower than access to main memory, and current technology advances are likely to make ..."
Abstract

Cited by 21 (1 self)
 Add to MetaCart
. We describe efficient methods for organizing and maintaining large multidimensional data sets in external memory. This is particular important as access to external memory is currently several order of magnitudes slower than access to main memory, and current technology advances are likely to make this gap even wider. We focus particularly on multidimensional data sets which must be kept simultaneously sorted under several total orderings: these orderings may be defined by the user, and may also be changed dynamically by the user throughout the lifetime of the data structures, according to the application at hand. Besides standard insertions and deletions of data, our proposed solution can perform efficiently split and concatenate operations on the whole data sets according to any ordering. This allows the user: (1) to dynamically rearrange any ordering of a segment of data, in a time that is faster than recomputing the new ordering from scratch; (2) to efficiently answer queries rel...
Revised version of "Efficient CrossTrees for External Memory"
, 2000
"... Due to a printing problem, the revised version of our paper [19] has been replaced by the (shorter) submitted version. In this technical report, we include the revised version that has not been published by mistake. In particular, we describe ecient methods for organizing and maintaining large m ..."
Abstract

Cited by 8 (0 self)
 Add to MetaCart
Due to a printing problem, the revised version of our paper [19] has been replaced by the (shorter) submitted version. In this technical report, we include the revised version that has not been published by mistake. In particular, we describe ecient methods for organizing and maintaining large multidimensional data sets in external memory. This is particular important as access to external memory is currently several order of magnitudes slower than access to main memory, and current technology advances are likely to make this gap even wider. We focus particularly on multidimensional data sets which must be kept simultaneously sorted under several total orderings: these orderings may be dened by the user, and may also be changed dynamically by the user throughout the lifetime of the data structures, according to the application at hand. Besides standard insertions and deletions of data, our proposed solution can perform eciently split and concatenate operations on the whole data sets according to any ordering. This allows the user: (1) to dynamically rearrange any ordering of a segment of data, in a time that is faster than recomputing the new ordering from scratch; (2) to eciently answer queries related to the data contained in a particular range of the current orderings. Our solution fully generalizes the notion of Btrees to higher dimensions by carefully combining spacedriven and datadriven partitions. Balancing is easy as we introduce a new multidimensional data structure, the crosstree, that is the cross product of balanced trees. As a result, the crosstree is competitive with other popular index data structures that require linear space (including kd trees, quadtrees, grid les, space lling curves, hBtrees, and Rtrees). Diparti...
Validity Information Retrieval for SpatioTemporal Queries: Theoretical Performance Bounds
 Proc. Symp. Spatial and Temporal Databases (SSTD
, 2003
"... The results of traditional spatial queries (i.e., range search, nearest neighbor, etc.) are usually meaningless in spatiotemporal applications, because they will be invalidated by the movements of query and/or data objects. In practice, a query result R should be accompanied with validity inform ..."
Abstract

Cited by 6 (0 self)
 Add to MetaCart
(Show Context)
The results of traditional spatial queries (i.e., range search, nearest neighbor, etc.) are usually meaningless in spatiotemporal applications, because they will be invalidated by the movements of query and/or data objects. In practice, a query result R should be accompanied with validity information specifying (i) the (future) time T that R will expire, and (ii) the change C of R at time T (so that R can be updated incrementally). Although several algorithms have been proposed for this problem, their worstcase performance is the same as that of sequential scan. This paper presents the first theoretical study on validity queries, and develops indexes and algorithms with attractive I/O complexities.
Connectivity Oracles for Failure Prone Graphs ∗
"... Dynamic graph connectivity algorithms have been studied for many years, but typically in the most general possible setting, where the graph can evolve in completely arbitrary ways. In this paper we consider a dynamic subgraph model. We assume there is some fixed, underlying graph that can be preproc ..."
Abstract

Cited by 6 (4 self)
 Add to MetaCart
Dynamic graph connectivity algorithms have been studied for many years, but typically in the most general possible setting, where the graph can evolve in completely arbitrary ways. In this paper we consider a dynamic subgraph model. We assume there is some fixed, underlying graph that can be preprocessed ahead of time. The graph is subject only to vertices and edges flipping “off ” (failing) and “on ” (recovering), where queries naturally apply to the subgraph on edges/vertices currently flipped on. This model fits most real world scenarios, where the topology of the graph in question (say a router network or road network) is constantly evolving due to temporary failures but never deviates too far from the ideal failurefree state. We present the first efficient connectivity oracle for graphs susceptible to vertex failures. Given vertices u and v and a set D of d failed vertices, we can determine if there is a path from u to v avoiding D in time polynomial in d log n. There is a tradeoff in our oracle between the space, which is roughly mn ɛ, for 0 < ɛ ≤ 1, and the polynomial query time, which depends on ɛ. If one wanted to achieve the same functionality with existing data structures (based on edge failures or twin vertex failures) the resulting connectivity oracle would either need exorbitant space (Ω(n d)) or update time Ω(dn), that is, linear in the number of vertices. Our connectivity oracle is therefore the first of its kind. As a byproduct of our oracle for vertex failures we reduce the problem of constructing an edgefailure oracle to 2D range searching over the integers. We show there is an Õ(m)space oracle that processes any set of d failed edges in O(d 2 log log n) time and, thereafter, answers connectivity queries in O(log log n) time. Our update time is exponentially faster than a recent connectivity oracle of Pǎtra¸scu and Thorup for bounded d, but slower as a function of d.
A general approach for cacheoblivious range reporting and approximate range counting
 Computational Geometry: Theory and Applications
"... We present cacheoblivious solutions to two important variants of range searching: range reporting and approximate range counting. The main contribution of our paper is a general approach for constructing cacheoblivious data structures that provide relative (1+ε)approximations for a general class ..."
Abstract

Cited by 5 (3 self)
 Add to MetaCart
(Show Context)
We present cacheoblivious solutions to two important variants of range searching: range reporting and approximate range counting. The main contribution of our paper is a general approach for constructing cacheoblivious data structures that provide relative (1+ε)approximations for a general class of range counting queries. This class includes threesided range counting, 3d dominance counting, and 3d halfspace range counting. Our technique allows us to obtain data structures that use linear space and answer queries in the optimal query bound of O(logB (N/K)) block transfers in the worst case, where K is the number of points in the query range. Using the same technique, we also obtain the first approximate 3d halfspace range counting and 3d dominance counting data structures with a worstcase query time of O(log (N/K)) in internal memory. An easy but important consequence of our main result is the existence of O(N log N)space cacheoblivious data structures with an optimal query bound of O(logB N+K/B) block transfers for the reporting versions of the above problems. Using standard reductions, these data structures allow us to obtain the first cacheoblivious data structures that use nearlinear space and achieve the optimal query bound for circular range reporting and Knearest neighbour searching in the plane, as well as for orthogonal range reporting in three dimensions. Part of this work was done while visiting Dalhousie University.
Cacheoblivious range reporting with optimal queries requires superlinear space
 In Proceedings of the 25th ACM Symposium on Computational Geometry
, 2009
"... We consider a number of range reporting problems in two and three dimensions and prove lower bounds on the amount of space required by any cacheoblivious data structure for these problems that achieves an optimal query bound of O(log B N + K/B) block transfers in the worst case, where K is the size ..."
Abstract

Cited by 4 (2 self)
 Add to MetaCart
(Show Context)
We consider a number of range reporting problems in two and three dimensions and prove lower bounds on the amount of space required by any cacheoblivious data structure for these problems that achieves an optimal query bound of O(log B N + K/B) block transfers in the worst case, where K is the size of the query output. The problems we study are threesided range reporting, 3d dominance reporting, and 3d halfspace range reporting. We prove that, in order to achieve the above query bound or even a bound of O((log B N) c (1 + K/B)), for any constant c> 0, the structure has to use Ω(N(log log N) ε) space, where ε> 0 is a constant that depends on c and on the constant hidden in the bigOh notation of the query bound. Our result has a number of interesting consequences. The first one is a new type of separation between the I/O model and the cacheoblivious model, as I/Oefficient data structures with the optimal query bound and using linear or O(N log ∗ N) space are known for the above problems. The second consequence is the nonexistence of a linearspace cacheoblivious persistent Btree with worstcase optimal 1d range reporting queries. Part of this work was done while visiting Dalhousie University.