Results 1  10
of
11
An asymptotically optimal multiversion Btree
, 1996
"... In a variety of applications, we need to keep track of the development of a data set over time. For maintaining and querying these multiversion data efficiently, external storage structures are an absolute necessity. We propose a multiversion Btree that supports insertions and deletions of data ite ..."
Abstract

Cited by 162 (8 self)
 Add to MetaCart
In a variety of applications, we need to keep track of the development of a data set over time. For maintaining and querying these multiversion data efficiently, external storage structures are an absolute necessity. We propose a multiversion Btree that supports insertions and deletions of data items at the current version and range queries and exact match queries for any version, current or past. Our multiversion Btree is asymptotically optimal in the sense that the time and space bounds are asymptotically the same as those of the (singleversion) Btree in the worst case. The technique we present for transforming a (singleversion) Btree into a multiversion Btree is quite general: it applies to a number of hierarchical external access structures with certain properties directly, and it can be modified for others.
Indexing for data models with constraints and classes
 Journal of Computer and System Sciences
, 1996
"... We examine I Oefficient 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 objectoriented programming (e.g., objects a ..."
Abstract

Cited by 113 (20 self)
 Add to MetaCart
We examine I Oefficient 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 objectoriented programming (e.g., objects are organized in class hierarchies). Let n be the size of the database, c the number of classes, B the page size on secondary storage, and t the 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 twodimensional range searching. We present a semidynamic data structure for this problem that has worstcase space O(n B) pages, query I O time O(logB n+t B) and O(logB n+(logB n) 2 B) amortized insert I O time. Note that, for the static version of this problem, this is the first worstcase optimal solution. (2) Indexing by one attribute and by class name in an objectoriented model, where objects are organized
A Comparison of Sequential Delaunay Triangulation Algorithms
, 1996
"... This paper presents an experimental comparison of a number of different algorithms for computing the Deluanay triangulation. The algorithms examined are: Dwyer’s divide and conquer algorithm, Fortune’s sweepline algorithm, several versions of the incremental algorithm (including one by Ohya, Iri, an ..."
Abstract

Cited by 55 (0 self)
 Add to MetaCart
This paper presents an experimental comparison of a number of different algorithms for computing the Deluanay triangulation. The algorithms examined are: Dwyer’s divide and conquer algorithm, Fortune’s sweepline algorithm, several versions of the incremental algorithm (including one by Ohya, Iri, and Murota, a new bucketingbased algorithm described in this paper, and Devillers’s version of a Delaunaytree based algorithm that appears in LEDA), an algorithm that incrementally adds a correct Delaunay triangle adjacent to a current triangle in a manner similar to gift wrapping algorithms for convex hulls, and Barber’s convex hull based algorithm. Most of the algorithms examined are designed for good performance on uniformly distributed sites. However, we also test implementations of these algorithms on a number of nonuniform distibutions. The experiments go beyond measuring total running time, which tends to be machinedependent. We also analyze the major highlevel primitives that algorithms use and do an experimental analysis of how often implementations of these algorithms perform each operation.
Efficient ExternalMemory Data Structures and Applications
, 1996
"... In this thesis we study the Input/Output (I/O) complexity of largescale problems arising e.g. in the areas of database systems, geographic information systems, VLSI design systems and computer graphics, and design I/Oefficient algorithms for them. A general theme in our work is to design I/Oeffic ..."
Abstract

Cited by 38 (12 self)
 Add to MetaCart
In this thesis we study the Input/Output (I/O) complexity of largescale problems arising e.g. in the areas of database systems, geographic information systems, VLSI design systems and computer graphics, and design I/Oefficient algorithms for them. A general theme in our work is to design I/Oefficient algorithms through the design of I/Oefficient data structures. One of our philosophies is to try to isolate all the I/O specific parts of an algorithm in the data structures, that is, to try to design I/O algorithms from internal memory algorithms by exchanging the data structures used in internal memory with their external memory counterparts. The results in the thesis include a technique for transforming an internal memory tree data structure into an external data structure which can be used in a batched dynamic setting, that is, a setting where we for example do not require that the result of a search operation is returned immediately. Using this technique we develop batched dynamic external versions of the (onedimensional) rangetree and the segmenttree and we develop an external priority queue. Following our general philosophy we show how these structures can be used in standard internal memory sorting algorithms
The I/OComplexity of Ordered BinaryDecision Diagram Manipulation
 UNIVERSITY OF AARHUS
, 1995
"... Ordered BinaryDecision Diagrams (OBDD) are the stateoftheart data structure for boolean function manipulation and there exist several software packages for OBDD manipulation. OBDDs have been successfully used to solve problems in e.g. digitalsystems design, verification and testing, in math ..."
Abstract

Cited by 28 (17 self)
 Add to MetaCart
Ordered BinaryDecision Diagrams (OBDD) are the stateoftheart data structure for boolean function manipulation and there exist several software packages for OBDD manipulation. OBDDs have been successfully used to solve problems in e.g. digitalsystems design, verification and testing, in mathematical logic, concurrent system design and in artificial intelligence. The OBDDs used in many of these applications quickly get larger than the avaliable main memory and it becomes essential to consider the problem of minimizing the Input/Output (I/O) communication. In this paper we analyze why existing OBDD manipulation algorithms perform poorly in an I/O environment and develop new I/Oefficient algorithms.
ExternalMemory Algorithms with Applications in Geographic Information Systems
 Algorithmic Foundations of GIS
, 1997
"... In the design of algorithms for largescale applications it is essential to consider the problem of minimizing Input/Output (I/O) communication. Geographical information systems (GIS) are good examples of such largescale applications as they frequently handle huge amounts of spatial data. In this n ..."
Abstract

Cited by 27 (9 self)
 Add to MetaCart
In the design of algorithms for largescale applications it is essential to consider the problem of minimizing Input/Output (I/O) communication. Geographical information systems (GIS) are good examples of such largescale applications as they frequently handle huge amounts of spatial data. In this note we survey the recent developments in externalmemory algorithms with applications in GIS. First we discuss the AggarwalVitter I/Omodel and illustrate why normal internalmemory algorithms for even very simple problems can perform terribly in an I/Oenvironment. Then we describe the fundamental paradigms for designing I/Oefficient algorithms by using them to design efficient sorting algorithms. We then go on and survey externalmemory algorithms for computational geometry problems  with special emphasis on problems with applications in GIS  and techniques for designing such algorithms: Using the orthogonal line segment intersection problem we illustrate the distributionsweeping and ...
Topology BTrees and Their Applications
"... . The wellknown Btree data structure provides a mechanism for dynamically maintaining balanced binary trees in external memory. We present an externalmemory dynamic data structure for maintaining arbitrary binary trees. Our data structure, which we call the topology Btree, is an externalmemory ..."
Abstract

Cited by 15 (0 self)
 Add to MetaCart
. The wellknown Btree data structure provides a mechanism for dynamically maintaining balanced binary trees in external memory. We present an externalmemory dynamic data structure for maintaining arbitrary binary trees. Our data structure, which we call the topology Btree, is an externalmemory analogue to the internalmemory topology tree data structure of Frederickson. It allows for dynamic expression evaluation and updates as well as various tree searching and evaluation queries. We show how to apply this data structure to a number of externalmemory dynamic problems, including approximate nearestneighbor searching and closestpair maintenance. 1 Introduction The Btree [8, 12, 14, 15] data structure is a very efficient and powerful way for maintaining balanced binary trees in external memory [1, 11, 13, 18, 19, 21, 22, 2]. Indeed, in his wellknown survey paper [8], Comer calls Btrees "ubiquitous," for they are found in a host of different applications. Nevertheless, there ar...
Slabpose columnsort: A new oblivious algorithm for outofcore sorting on distributedmemory clusters
, 2004
"... Our goal is to develop a robust outofcore sorting program for a distributedmemory cluster. The literature contains two dominant paradigms for outofcore sorting algorithms: mergingbased and partitioningbased. We explore a third paradigm, that of oblivious algorithms. Unlike the two dominant pa ..."
Abstract

Cited by 1 (1 self)
 Add to MetaCart
Our goal is to develop a robust outofcore sorting program for a distributedmemory cluster. The literature contains two dominant paradigms for outofcore sorting algorithms: mergingbased and partitioningbased. We explore a third paradigm, that of oblivious algorithms. Unlike the two dominant paradigms, oblivious algorithms do not depend on the input keys and therefore lead to predetermined I/O and communication patterns in an outofcore setting. We have developed several outofcore sorting programs using this paradigm. Our baseline implementation, 3pass columnsort, was based on Leighton’s columnsort algorithm. Though efficient in terms of I/O and communication, 3pass columnsort has a restriction on the maximum problem size. As our first effort toward relaxing this restriction, we developed two implementations: subblock columnsort and Mcolumnsort. Both of these implementations incur substantial performance costs: subblock columnsort performs additional disk I/O, and Mcolumnsort needs substantial amounts of extra communication and computation. In this paper, we present slabpose columnsort, a new oblivious algorithm that we have designed explicitly for the outofcore setting. Slabpose columnsort relaxes the problemsize restriction at no extra I/O or communication cost. Experimental evidence on a Beowulf cluster shows that unlike subblock columnsort and Mcolumnsort, slabpose columnsort runs almost as fast as 3pass columnsort. To the best of our knowledge, our implementations are the first outofcore multiprocessor sorting algorithms that make no assumptions about the keys and produce output that is perfectly load balanced and in the striped order assumed by the Parallel Disk Model.
On superlinear lower bounds in complexity theory
 In Proc. 10th Annual IEEE Conference on Structure in Complexity Theory
, 1995
"... This paper first surveys the neartotal lack of superlinear lower bounds in complexity theory, for “natural” computational problems with respect to many models of computation. We note that the dividing line between models where such bounds are known and those where none are known comes when the mode ..."
Abstract

Cited by 1 (1 self)
 Add to MetaCart
This paper first surveys the neartotal lack of superlinear lower bounds in complexity theory, for “natural” computational problems with respect to many models of computation. We note that the dividing line between models where such bounds are known and those where none are known comes when the model allows nonlocal communication with memory at unit cost. We study a model that imposes a “fair cost ” for nonlocal communication, and obtain modest superlinear lower bounds for some problems via a Kolmogorovcomplexity argument. Then we look to the larger picture of what it will take to prove really striking lower bounds, and pull from ours and others’ work a concept of information vicinity that may offer new tools and modes of analysis to a young field that rather lacks them.