Results 1  10
of
824
Optimal Aggregation Algorithms for Middleware
 IN PODS
, 2001
"... Assume that each object in a database has m grades, or scores, one for each of m attributes. For example, an object can have a color grade, that tells how red it is, and a shape grade, that tells how round it is. For each attribute, there is a sorted list, which lists each object and its grade under ..."
Abstract

Cited by 717 (4 self)
 Add to MetaCart
Assume that each object in a database has m grades, or scores, one for each of m attributes. For example, an object can have a color grade, that tells how red it is, and a shape grade, that tells how round it is. For each attribute, there is a sorted list, which lists each object and its grade under that attribute, sorted by grade (highest grade first). There is some monotone aggregation function, or combining rule, such as min or average, that combines the individual grades to obtain an overall grade. To determine the top k objects (that have the best overall grades), the naive algorithm must access every object in the database, to find its grade under each attribute. Fagin has given an algorithm (“Fagin’s Algorithm”, or FA) that is much more efficient. For some monotone aggregation functions, FA is optimal with high probability in the worst case. We analyze an elegant and remarkably simple algorithm (“the threshold algorithm”, or TA) that is optimal in a much stronger sense than FA. We show that TA is essentially optimal, not just for some monotone aggregation functions, but for all of them, and not just in a highprobability worstcase sense, but over every database. Unlike FA, which requires large buffers (whose size may grow unboundedly as the database size grows), TA requires only a small, constantsize buffer. TA allows early stopping, which yields, in a precise sense, an approximate version of the top k answers. We distinguish
Selfadjusting binary search trees
, 1985
"... The splay tree, a selfadjusting form of binary search tree, is developed and analyzed. The binary search tree is a data structure for representing tables and lists so that accessing, inserting, and deleting items is easy. On an nnode splay tree, all the standard search tree operations have an am ..."
Abstract

Cited by 432 (18 self)
 Add to MetaCart
The splay tree, a selfadjusting form of binary search tree, is developed and analyzed. The binary search tree is a data structure for representing tables and lists so that accessing, inserting, and deleting items is easy. On an nnode splay tree, all the standard search tree operations have an amortized time bound of O(log n) per operation, where by “amortized time ” is meant the time per operation averaged over a worstcase sequence of operations. Thus splay trees are as efficient as balanced trees when total running time is the measure of interest. In addition, for sufficiently long access sequences, splay trees are as efficient, to within a constant factor, as static optimum search trees. The efftciency of splay trees comes not from an explicit structural constraint, as with balanced trees, but from applying a simple restructuring heuristic, called splaying, whenever the tree is accessed. Extensions of splaying give simplified forms of two other data structures: lexicographic or multidimensional search trees and link/ cut trees.
Efficient Fair Queuing using Deficit Round Robin
 SIGCOMM '95
, 1995
"... Fair queuing is a technique that allows each flow passing through a network device to have a fair share of network resources. Previous schemes for fair queuing that achieved nearly perfect fairness were expensive to implement: specifically, the work required to process a packet in these schemes was ..."
Abstract

Cited by 359 (4 self)
 Add to MetaCart
(Show Context)
Fair queuing is a technique that allows each flow passing through a network device to have a fair share of network resources. Previous schemes for fair queuing that achieved nearly perfect fairness were expensive to implement: specifically, the work required to process a packet in these schemes was O(log(n)), where n is the number of active flows. This is expensive at high speeds. On the other hand, cheaper approximations of fair queuing that have been reported in the literature exhibit unfair behavior. In this paper, we describe a new approximation of fair queuing, that we call Deficit Round Robin. Our scheme achieves nearly perfect fairness in terms of throughput, requires only O(1) work to process a packet, and is simple enough to implement in hardware. Deficit Round Robin is also applicable to other scheduling problems where servicing cannot be broken up into smaller units, and to distributed queues.
Probabilistic Approximation of Metric Spaces and its Algorithmic Applications
 In 37th Annual Symposium on Foundations of Computer Science
, 1996
"... The goal of approximating metric spaces by more simple metric spaces has led to the notion of graph spanners [PU89, PS89] and to lowdistortion embeddings in lowdimensional spaces [LLR94], having many algorithmic applications. This paper provides a novel technique for the analysis of randomized ..."
Abstract

Cited by 351 (32 self)
 Add to MetaCart
(Show Context)
The goal of approximating metric spaces by more simple metric spaces has led to the notion of graph spanners [PU89, PS89] and to lowdistortion embeddings in lowdimensional spaces [LLR94], having many algorithmic applications. This paper provides a novel technique for the analysis of randomized algorithms for optimization problems on metric spaces, by relating the randomized performance ratio for any metric space to the randomized performance ratio for a set of "simple" metric spaces. We define a notion of a set of metric spaces that probabilisticallyapproximates another metric space. We prove that any metric space can be probabilisticallyapproximated by hierarchically wellseparated trees (HST) with a polylogarithmic distortion. These metric spaces are "simple" as being: (1) tree metrics. (2) natural for applying a divideandconquer algorithmic approach. The technique presented is of particular interest in the context of online computation. A large number of online al...
Q: A Low Overhead High Performance Buffer Management Replacement Algorithm
"... In a pathbreaking paper last year Pat and Betty O'Neil and Gerhard Weikum proposed a selftuning improvement to the Least Recently Used (LRU) buffer management algorithm[15]. Their improvement is called LRU/k and advocates giving priority to buffer pages based on the kth most recent access. (T ..."
Abstract

Cited by 231 (2 self)
 Add to MetaCart
In a pathbreaking paper last year Pat and Betty O'Neil and Gerhard Weikum proposed a selftuning improvement to the Least Recently Used (LRU) buffer management algorithm[15]. Their improvement is called LRU/k and advocates giving priority to buffer pages based on the kth most recent access. (The standard LRU algorithm is denoted LRU/1 according to this terminology.) If P1's kth most recent access is more more recent than P2's, then P1 will be replaced after P2. Intuitively, LRU/k for k ? 1 is a good strategy, because it gives low priority to pages that have been scanned or to pages that belong to a big randomly accessed file (e.g., the account file in TPC/A). They found that LRU/2 achieves most of the advantage of their method. The one problem of LRU/2 is the processor Supported by U.S. Office of Naval Research #N0001491J1472 and #N0001492J1719, U.S. National Science Foundation grants #CCR9103953 and IRI9224601, and USRA #555519. Part of this work was performed while Theodo...
ARC: A SelfTuning, Low Overhead Replacement Cache
 In Proceedings of the 2003 Conference on File and Storage Technologies (FAST
, 2003
"... We consider the problem of cache management in a demand paging scenario with uniform page sizes. We propose a new cache management policy, namely, Adaptive Replacement Cache (ARC), that has several advantages. ..."
Abstract

Cited by 225 (5 self)
 Add to MetaCart
We consider the problem of cache management in a demand paging scenario with uniform page sizes. We propose a new cache management policy, namely, Adaptive Replacement Cache (ARC), that has several advantages.
ThroughputCompetitive OnLine Routing
, 1993
"... We develop a framework that allows us to address the issues of admission control and routing in highspeed networks under the restriction that once a call is admitted and routed, it has to proceed to completion and no reroutings are allowed. The "no rerouting" restriction appears in all th ..."
Abstract

Cited by 217 (42 self)
 Add to MetaCart
We develop a framework that allows us to address the issues of admission control and routing in highspeed networks under the restriction that once a call is admitted and routed, it has to proceed to completion and no reroutings are allowed. The "no rerouting" restriction appears in all the proposals for future highspeed networks and stems from current hardware limitations, in particular the fact that the bandwidthdelay product of the newly developed optical communication links far exceeds the buffer capacity of the network. In case the goal is to maximize the throughput, our framework yields an online O(lognT ) competitive strategy, where n is the number of nodes in the network and T is the maximum call duration. In other words, our strategy results in throughput that is within O(log nT ) factor of the highest possible throughput achievable by an omniscient algorithm that knows all of the requests in advance. Moreover, we show that no online strategy can achieve a better competit...
Speed is as Powerful as Clairvoyance
 Journal of the ACM
, 1995
"... We consider several well known nonclairvoyant scheduling problems, including the problem of minimizing the average response time, and besteffort firm realtime scheduling. It is known that there are no deterministic online algorithms for these problems with bounded (or even polylogarithmic in the n ..."
Abstract

Cited by 211 (26 self)
 Add to MetaCart
(Show Context)
We consider several well known nonclairvoyant scheduling problems, including the problem of minimizing the average response time, and besteffort firm realtime scheduling. It is known that there are no deterministic online algorithms for these problems with bounded (or even polylogarithmic in the number of jobs) competitive ratios. We show that moderately increasing the speed of the processor used by the nonclairvoyant scheduler effectively gives this scheduler the power of clairvoyance. Furthermore, we show that there exist online algorithms with bounded competitive ratios on all inputs that are not closely correlated with processor speed. 1 Introduction We consider several well known nonclairvoyant scheduling problems, including the problem of minimizing the average response time [13, 15], and besteffort firm realtime scheduling [1, 2, 3, 4, 8, 11, 12, 18]. (We postpone formally defining these problems until the next section.) In nonclairvoyant scheduling some relevant information...
An optimal online algorithm for metrical task systems
 JOURNAL OF THE ACM
, 1992
"... In practice, almost all dynamic systems require decisions to be made online, without full knowledge of their future impact on the system. A general model for the processing of sequences of tasks is introduced, and a general online decision algorithm is developed. It is shown that, for an importan ..."
Abstract

Cited by 209 (8 self)
 Add to MetaCart
(Show Context)
In practice, almost all dynamic systems require decisions to be made online, without full knowledge of their future impact on the system. A general model for the processing of sequences of tasks is introduced, and a general online decision algorithm is developed. It is shown that, for an important algorithms. class of special cases, this algorithm is optimal among all online Specifically, a task system (S. d) for processing sequences of tasks consists of a set S of states and a cost matrix d where d(i, j) is the cost of changing from state i to state j (we assume that d satisfies the triangle inequality and all diagonal entries are f)). The cost of processing a given task depends on the state of the system. A schedule for a sequence T1, T2,..., Tk of tasks is a sequence sl,s~,..., Sk of states where s ~ is the state in which T ’ is processed; the cost of a schedule is the sum of all task processing costs and state transition costs incurred. An online scheduling algorithm is one that chooses s, only knowing T1 Tz ~.. T’. Such an algorithm is wcompetitive if, on any input task sequence, its cost is within an additive constant of w times the optimal offline schedule cost. The competitive ratio w(S, d) is the infimum w for which there is a wcompetitive online scheduling algorithm for (S, d). It is shown that w(S, d) = 2 ISI – 1 for eoery task system in which d is symmetric, and w(S, d) = 0(1 S]2) for every task system. Finally, randomized online scheduling algorithms are introduced. It is shown that for the uniform task system (in which d(i, j) = 1 for all i, j), the expected competitive ratio w(S, d) =