15945659
Distributed Query Processing on the Grid
Distributed query processing (DQP) has been widely used in data intensive applications where data of relevance to users is stored in multiple locations. This paper argues: (i) that DQP can be important in the Grid, as a means of providing high-level, declarative languages for integrating data access and analysis; and (ii) that the Grid provides resource management facilities that are useful to developers of DQP systems. As well as discussing and illustrating how DQP technologies can be deployed within the Grid, the paper describes a prototype implementation of a DQP system running over Globus.
37610017
Validated Cost Models for Parallel OQL Query Processing
Query cost models are widely used, both for performance analysis and for comparing execution plans during query optimisation. In essence, a cost modelp redicts where time is being spent during query evaluation. Although many cost models have been proposed, for serial, parallel and distributed database systems, surprisingly few of these have been validated against real systems. This paper presents cost models for the parallel evaluation of ODMG OQL queries, which have been compared with experimental results obtained using the Polar object database system. The paper describes the validation of the cost model for a collection of queries, using three join algorithms over the OO7 benchmark database. The results show that the cost model generally both ranks alternative plans appropriately, and gives a useful indication of the response times that can be expected from a plan. The paper also illustrates the application of the cost model by highlighting the contributions of different features and operations to query response times.
16693115
An Experimental Performance Evaluation of Join Algorithms for Parallel Object Databases
Parallel relational databases have been successful in providing scalable performance for data intensive applications, and much work has been carried out on query processing techniques in such systems. However, although many applications associated with object databases also have stringent performance requirements, there has been much less work investigating parallel object database systems. An important feature for the performance of object databases is the speed at which relationships can be explored. In queries, this depends upon the effectiveness of different join algorithms into which queries that follow relationships can be compiled. This paper presents the results of empirical evaluations of four parallel join algorithms, two value based and two pointer based. The experiments have been run on Polar, a parallel ODMG object database system.
16226748
Polar: an architecture for a parallel ODMG compliant object database
Object database management systems (ODBMS) are now established as the database management technology of choice for a range of challenging data intensiv e applications. Furthermore, the applications associated with object databases typically have stringen t performance requirements, and some are associated with very large data sets. Ho w ever, despite the demands made on object databases by applications, there has been surprisingly little work on parallel object databases. This paper presents the arc hitecture and some preliminary performance results for the Polar ODMG compliant parallel object database. The architecture described has been implemented in a shared-nothing environment on a network of PCs. The paper describes how OQL queries are compiled, parallelized and executed in this environment, and includes some preliminary performance results for OQL queries using the 007 benchmark.
13121681
A parallel algebra for object databases
The paper describes an algebra for use with parallel object databases, and in particular ODMG compliant databases with OQL. Although there have been many proposals for parallel relational database systems, there has been much less work on parallel object databases, and on parallel query processing for object databases. The parallel algebra presented in the paper is an extension of an existing physical algebra for OQL, and has an important role during query optimization, and for describing execution plans. The paper presents not only the algebra, but also its role in the architecture of a parallel database.
18173287
Performance of Fault-Tolerant Data and Compute Intensive Programs over a Network of Workstations
A well-known structuring technique for a wide class of parallel applications is the bag of tasks, which allows a computation to be partitioned dynamically between a collection of concurrent processes. This paper describes a fault-tolerant implementation of this structure using atomic actions (atomic transactions) to operate on persistent objects, which are accessed in a distributed setting via a Remote Procedure Call (RPC). The system developed is suited to parallel execution of data and compute intensive programs that require persistent storage and fault tolerance facilities. The suitability of the system is examined in the context of the measured performance of three specific applications; ray tracing, matrix multiplication and Cholesky factorisation. The measured performance compares well with that predicted by analysis of the applications based on benchmark measurement of hardware parameters. The same analysis allows modelling of hardware upgrades.
42617820
The Optimal Deployment of Filters to Limit Forged Address Attacks in Communication Networks
We consider forged address attacks in communication networks, wherein an attacking node forges the address of communication requests sent to a victim node. Unless the victim can ascertain the origin of the attack, it must cease to respond to communication requests until the attack subsides. We examine the problem of identifying a minimum cardinality subset of nodes on a network, such that placing route-based filters on these nodes provides a prescribed level of security. We model the problem as an integer program and illustrate its performance on randomly generated networks. Next, we develop a greedy heuristic to deploy filters in these networks, and compare its solution quality to that of the integer programming approach. These findings are then used to motivate both the importance of addressing this problem by optimal techniques and to motivate future research approaches for solving such problems.
307899
Rapid profiling via stratified sampling
Sophisticated binary translators and dynamic optimizers demand a program profiler with low overhead, high accuracy, and the ability to collect a variety of profile types. A profiling scheme that achieves these goals is proposed. Conceptually, the hardware compresses a stream of profile data by counting identical events; the compressed profile dam is passed to software for analysis. Compressing the high-bandwidth event stream greatly reduces software overhead. Because optimizations can tolerate some profiling errors, we allow the stream compressor to be lossy, thereby enabling a low-cost sampling-based hardware design. Because the hardware compressor is insensitive to the event content, it supports various profile types and can process multiple types simultaneously.
Basic components of our framework are periodic and random samplers, counters, and hash functions. These components are composed to form a variety of stream compressors. One design is both simple and very effective: the input stream is hash-split into multiple substreams, each of which is fed into a simple periodic sampler that selects every kth event. This stratified periodic sampler performs better than conventional random sampling because it biases each substream towards a small number of unique events, thereby reducing sampling error, and allowing faster convergence to an accurate profile. For example, convergence to a given level of accuracy is about twice as fast for gcc. When sampling overhead is considered, the stratified periodic profiler achieves less than 3% error while incurring an overhead of only 3.5% for gcc.
11001529
A Stochastic Approach to Measuring the Robustness of Resource Allocations in Distributed Systems
Often, parallel and distributed computing systems must operate in an environment replete with uncertainty. Determining a resource allocation that accounts for this uncertainty in a way that can provide a probabilistic guarantee that a given level of quality of service (QoS) is achieved is an important research problem. This paper defines a stochastic methodology for quantifiably determining a resource allocation's ability to satisfy QoS constraints in the midst of uncertainty in system parameters. Uncertainty in system parameters and its impact on system performance are modeled stochastically. This stochastic model is then used to derive a quantitative expression for the robustness of a resource allocation. The paper investigates the utility of the proposed stochastic robustness metric by applying the metric to resource allocations in a simulated distributed system. The simulation results are then compared with deterministically defined metrics from the literature
17484895
Sequential processing for content-based retrieval of composite objects
It is becoming increasingly important for multimedia databases to provide capabilities for content-based retrieval of composite objects. Composite objects consist of several simple objects which have feature, spatial, temporal, semantic attributes, and spatial and temporal relationships between them. A content-based composite object query is satisfied by evaluating a program of content-based rules (i.e., color, texture), spatial and temporal rules (i.e., east, west), fuzzy conjunctions (i.e., appears similar AND is spatially near) and database lookups (i.e., semantics). We propose a new sequential processing method for efficiently computing content-based queries of composite objects. The proposed method evaluates the composite object queries by (1) defining an efficient ordering of the sub-goals of the query, which involve spatial, temporal, content-based and fuzzy rules, (2) developing a query block management strategy for generating, evaluating, and caching intermediate sub-goal results, and (3) conducting a best-first dynamic programming-based search with intelligent back-tracking. The method is guaranteed to find the optimal answer to the query and reduces the query time by avoiding the exploration of unlikely candidates.
18353433
VideoZoom Spatio-Temporal Video Browser
We describe a system for browsing and interactively retrieving video over the Internet at multiple spatial and temporal resolutions. The VideoZoom system enables users to start with coarse, low-resolution views of the sequences and selectively zoom-in in space and time. VideoZoom decomposes the video sequences into a hierarchy of view elements, which are retrieved in a progressive fashion. The client browser incrementally builds the views by retrieving, caching, and assembling the view elements, as needed. By integrating browsing and retrieval into a single progressive retrieval paradigm, VideoZoom provides a new and useful system for accessing video over the Internet. VideoZoom is suitable for digital video libraries and a number of other applications in which streaming methods provide insufficient quality of video, video downloading introduces large latencies, and generating video summaries is difficult or not well integrated with video retrieval tasks.