42238558
A crash recovery algorithm based on multiple logs that exploits parallelism
The paper describes an efficient algorithm for recovery based on multiple logs. The standard WAL algorithm is designed to work with a single log. Since each transaction is required to write a commit record to the log, it imposes limits on the maximum achievable throughput even if group commits are allowed. These limits are well below the needs of high transaction rate systems in airlines and in other areas. Another problem with a 'single log' algorithm is that the tail of the log is a 'hot spot' because of severe contention for it. It is shown that both these problems are solved by extending the write-ahead logging method into a multiple log algorithm which allows transactions to write to one of several logs, and also permits each log to perform checkpoints and I/O operations in parallel. A further advantage of multiple logs is that parallelism can be exploited at recovery time. An algorithm is outlined that speeds up recovery by scanning the multiple logs in parallel.<<ETX>>
206778468
A performance study of general grid structures for replicated data
Recently, there has been considerable interest in the study of replica-control protocols which are based on organizing several copies of an object into logical structures, such as rectangular grids. In addition to high availability, another objective in exploiting such structures is to improve the degree of load sharing in a system. The authors extend the scope of grid structures to general grids, which allow holes in various positions of a rectangular structure and are useful to consider because they often produce availabilities that are higher than solid grids, where every position must be occupied by a node. In addition to proposing an improvement to the existing grid protocol, new insights are offered into the performance of the grids, from both availability and load sharing points of view. Algorithms for designing grids to maximize availability independently and also in conjunction with a load sharing constraint are given.<<ETX>>
14897390
Meta workflows as a control and coordination mechanism for exception handling in workflow systems
A higher level control and coordination mechanism is required for exception handling in workflow systems. This paper describes such a framework based on events, states, and a new kind of process called a meta workflow. Meta workflows have five kinds of meta activities and facilitate control over base workflows. We describe the framework and illustrate it with examples to show its features. The paper gives an architecture for incorporating it into existing workflows and also provides a formal semantics of execution. This framework can be used in Web services, supply chains, and inter-organizational applications where coordination requirements are complex, and flexible and adaptable workflows are needed. It is also useful for handling not just failure recovery but also various kinds of special situations, which arise frequently in web-based applications.
45847616
EROICA: A Rule-Based Approach to Organizational Policy Management in Workflow Systems
Conventional workflow management systems have been criticized for being too rigid in dealing with changes in organizational policies, in particular for the lack of flexible mechanisms for handling complex role resolution. In this paper we describe a rule-based approach (EROICA) for managing organizational policies in workflow systems. Our approach extends the well-known ECA (event-condition-action) approach used in database systems by elevating roles, objects and time intervals to first class citizens, hence the term EROICA (event-role-object-interval-condition-action). In this paper, we focus on the development of a flexible role resolution mechanism that operates under various business constraints specified with EROICA rules. We further discuss the issues of architecture and implementation and demonstrate that the EROICA framework is promising in making next generation of workflow systems more powerful and flexible.
59757838
Operating System Support for Data Management.
16012186
A fine-grained, controllable, user-to-user delegation method in RBAC
This paper addresses the issues surrounding user-to-user delegation in RBAC. We show how delegations can be incorporated into the RBAC model in a simple and straightforward manner. A special feature of the model is that it allows fine-grained control over what rights a user wishes to delegate as opposed to delegation at the role level where all the rights of a role must be delegated. In addition, the model provides a rich set of controls regarding further delegations of a right, generic constraints that further control delegations, and an innovative model for revocations. Properties of both delegation and revocation are discussed, and our work is compared with other related research.
995281
Deterministic wavelet thresholding for maximum-error metrics
Several studies have demonstrated the effectiveness of the wavelet, decomposition as a tool for reducing large amounts of data down to compact, wavelet synopses that can be used to obtain fast, accurate approximate answers to user queries. While conventional wavelet synopses are based on greedily minimizing the overall root-mean-squared (i.e., L2-norm) error in the data approximation, recent work has demonstrated that such synopses can suffer from important problems, including severe bias and wide variance in the quality of the data reconstruction, and lack of non-trivial guarantees for individual approximate answers. As a result, probabilistic thresholding schemes have been recently proposed as a means of building wavelet synopses that try to probabilistically control other approximation-error metrics, such as the maximum relative error in data-value reconstruction, which is arguably the most important for approximate query answers and meaningful error guarantees.One of the main open problems posed by this earlier work is whether it is possible to design efficient deterministic wavelet-thresholding algorithms for minimizing non-L2 error metrics that are relevant to approximate query processing systems, such as maximum relative or maximum absolute error. Obviously, such algorithms can guarantee better wavelet synopses and avoid the pitfalls of probabilistic techniques (e.g., "bad" coin-flip sequences) leading to poor solutions. In this paper, we address this problem and propose novel, computationally efficient schemes for deterministic wavelet thresholding with the objective of optimizing maximum-error metrics. We introduce an optimal low polynomial-time algorithm for one-dimensional wavelet thresholding--our algorithm is based on a new Dynamic-Programming (DP) formulation, and can be employed to minimize the maximum relative or absolute error in the data reconstruction. Unfortunately, directly extending our one-dimensional DP algorithm to multi-dimensional wavelets results in a super-exponential increase in time complexity with the data dimensionality. Thus, we also introduce novel, polynomial-time approximation schemes (with tunable approximation guarantees for the target maximum-error metric) for deterministic wavelet thresholding in multiple dimensions.
14590041
Designing Access Methods for Bitemporal Databases
By supporting the valid and transaction time dimensions, bitemporal databases represent reality more accurately than conventional databases. The authors examine the issues involved in designing efficient access methods for bitemporal databases, and propose the partial-persistence and the double-tree methodologies. The partial-persistence methodology reduces bitemporal queries to partial persistence problems for which an efficient access method is then designed. The double-tree methodology "sees" each bitemporal data object as consisting of two intervals (a valid-time and a transaction-time interval) and divides objects into two categories according to whether the right endpoint of the transaction time interval is already known. A common characteristic of both methodologies is that they take into account the properties of each time dimension. Their performance is compared with a straightforward approach that "sees" the intervals associated with a bitemporal object as composing one rectangle, which is stored in a single multidimensional access method. Given that some limited additional space is available, the experimental results show that the partial-persistence methodology provides the best overall performance, especially for transaction timeslice queries. For those applications that require ready, off-the-shelf, access methods, the double-tree methodology is a good alternative.
2987975
Data streaming algorithms for efficient and accurate estimation of flow size distribution
Knowing the distribution of the sizes of traffic flows passing through a network link helps a network operator to characterize network resource usage, infer traffic demands, detect traffic anomalies, and accommodate new traffic demands through better traffic engineering. Previous work on estimating the flow size distribution has been focused on making inferences from sampled network traffic. Its accuracy is limited by the (typically) low sampling rate required to make the sampling operation affordable. In this paper we present a novel data streaming algorithm to provide much more accurate estimates of flow distribution, using a "lossy data structure" which consists of an array of counters fitted well into SRAM. For each incoming packet, our algorithm only needs to increment one underlying counter, making the algorithm fast enough even for 40 Gbps (OC-768) links. The data structure is lossy in the sense that sizes of multiple flows may collide into the same counter. Our algorithm uses Bayesian statistical methods such as Expectation Maximization to infer the most likely flow size distribution that results in the observed counter values after collision. Evaluations of this algorithm on large Internet traces obtained from several sources (including a tier-1 ISP) demonstrate that it has very high measurement accuracy (within 2%). Our algorithm not only dramatically improves the accuracy of flow distribution measurement, but also contributes to the field of data streaming by formalizing an existing methodology and applying it to the context of estimating the flow-distribution.
36436312
Simplifying CORBA Security Service to Support Service Level Access Control
The CORBA Security Service provides a domain based access control model in which interfaces are grouped in domains and a single security policy applies to all the interfaces in the domain. CORBA Security Service does not directly support object and method level access control rules. Grouping interfaces in domains helps in reducing access control rules in a large system with a large number of objects. In an environment where services are provided using methods and similar services are grouped as the methods of an interface, providing service and interface level access control is desirable.
5053302
Componentxchange: An E-Exchange for Software Components
A key challenge in Component-Based Software Engineering (CBSE) is finding appropriate software components for reuse. A component broker that allows component vendors to make available their modules, and also allows component integrators to search and select components matching their requirements will help solve this problem. In this paper, we describe an E-Exchange for buying and selling of software components over the World Wide Web. The ComponentXchange uses an XML based specification language for components, which is a semi-formal specification language that can describe a rich and an extensible set of component properties including functional properties, non-functional attributes and licensing aspects. ComponentXchange supports two models of component trading. A component can be used either by downloading it and integrating it into the client application or by accessing it remotely over the network. It has a licensing server that enforces the licensing terms and conditions. ComponentXchange can be easily extended to support different payment models like pay-per-use, pay-per-user, etc.