Results 1 - 10
of
109
Optimistic replication
- ACM COMPUTING SURVEYS
, 2005
"... Data replication is a key technology in distributed data sharing systems, enabling higher availability and performance. This paper surveys optimistic replication algorithms that allow replica contents to diverge in the short term, in order to support concurrent work practices and to tolerate failure ..."
Abstract
-
Cited by 290 (19 self)
- Add to MetaCart
Data replication is a key technology in distributed data sharing systems, enabling higher availability and performance. This paper surveys optimistic replication algorithms that allow replica contents to diverge in the short term, in order to support concurrent work practices and to tolerate failures in low-quality communication links. The importance of such techniques is increasing as collaboration through wide-area and mobile networks becomes popular. Optimistic replication techniques are different from traditional “pessimistic” ones. Instead of synchronous replica coordination, an optimistic algorithm propagates changes in the background, discovers conflicts after they happen and reaches agreement on the final contents incrementally. We explore the solution space for optimistic replication algorithms. This paper identifies key challenges facing optimistic replication systems — ordering operations, detecting and resolving conflicts, propagating changes efficiently, and bounding replica divergence — and provides a comprehensive survey of techniques developed for addressing these challenges.
Operational Transformation in Real-Time Group Editors: Issues, Algorithms, and Achievements
, 1998
"... Real-time group editors allow a group of users to view and edit the same document at the same time from geographically dispersed sites connected by communication networks. Consistency maintenance is one of the most significant challenges in the design and implementation of these types of systems. Re ..."
Abstract
-
Cited by 180 (11 self)
- Add to MetaCart
Real-time group editors allow a group of users to view and edit the same document at the same time from geographically dispersed sites connected by communication networks. Consistency maintenance is one of the most significant challenges in the design and implementation of these types of systems. Research on real-time group editors in the past decade has invented an innovative technique for consistency maintenance, called operational transformation. This paper presents an integrative review of the evolution of operational transformation techniques, with the goals of identifying the major issues, algorithms, achievements, and remaining challenges. In addition, this paper contributes a new optimized generic operational transformation control algorithm. Keywords Consistency maintenance, operational transformation, convergence, causality preservation, intention preservation, group editors, groupware, distributed computing. INTRODUCTION Real-time group editors allow a group of users to ...
Consistency Maintenance in Real-Time Collaborative Graphics Editing Systems
- ACM Transactions on Computer-Human Interaction
, 2002
"... this article, we propose an object-level multi-versioning approach to consistency maintenance in real-time collaborative graphic editors ..."
Abstract
-
Cited by 88 (6 self)
- Add to MetaCart
(Show Context)
this article, we propose an object-level multi-versioning approach to consistency maintenance in real-time collaborative graphic editors
Flexible Collaboration Transparency: Supporting Worker Independence in Replicated Application-Sharing Systems
, 1998
"... This dissertation analyzes the usefulness of existing "conventional" collaboration-transparency systems, which permit the shared use of legacy, single-user applications. I find that conventional collaboration-transparency systems do not use network resources efficiently, and they impose an ..."
Abstract
-
Cited by 87 (5 self)
- Add to MetaCart
This dissertation analyzes the usefulness of existing "conventional" collaboration-transparency systems, which permit the shared use of legacy, single-user applications. I find that conventional collaboration-transparency systems do not use network resources efficiently, and they impose an inflexible, tightly coupled style of collaboration because they do not adequately support important groupware principles: concurrent work, relaxed WYSIWIS, group awareness, and inherently collaborative tasks. This dissertation proposes and explores solutions to those deficiencies. The primary goal of this work is to maintain the benefits of collaboration transparency while relieving some of its disadvantages. To that end, I present an alternate implementation approach that provides many features previously seen only in applications specifically designed to support cooperative work, called collaboration-aware applications. The new approach uses a replicated architecture, in which a copy of the application resides on each user's machine, and the users' input events are broadcast to each copy. I discuss solutions to certain key problems in replicated architectures, such as maintaining consistency, unanticipated sharing, supporting late-joiners, and replicating system resources (e.g., files, sockets, and random number generators). To enhance the collaborative usability of a legacy application, the new approach transparently replaces selected single-user interface objects with multi-user versions at runtime. There are four requirements of an application platform needed to implement this approach: process migration, run-time object replacement, dynamic binding, and the ability to intercept and introduce low-level user input events. As an instance of this approach, I describe its incorpor...
Local-lag and Timewarp: Providing Consistency for Replicated Continuous Applications
, 2002
"... In this paper we investigate how consistency can be established for replicated applications changing their state in reaction to user-initiated operations as well as the passing of time. Typical examples of these applications are networked computer games and distributed virtual environments. We give ..."
Abstract
-
Cited by 73 (5 self)
- Add to MetaCart
In this paper we investigate how consistency can be established for replicated applications changing their state in reaction to user-initiated operations as well as the passing of time. Typical examples of these applications are networked computer games and distributed virtual environments. We give a formal definition of the terms consistency and correctness for this application class. Based on these definitions, it is shown that an important tradeoff relationship exists between the responsiveness of the application and the appearance of short-term inconsistencies. We propose to exploit the knowledge of this tradeo by voluntarily decreasing the responsiveness of the application in order to eliminate short-term inconsistencies. This concept is called local-lag. Furthermore, a timewarp scheme is presented that complements local-lag by guaranteeing consistency and correctness for replicated continuous applications. The computational complexity of the timewarp algorithm is determined in theory and practice by examining a simple networked computer game. The timewarp scheme is then compared to the wellknown dead-reckoning approach. It is shown that the choice between both schemes is application-dependent.
Leveraging single-user applications for multi-user collaboration: the coword approach
- In Proceedings of the 2004 ACM Conference on Computer Supported Cooperative Work
, 2004
"... ..."
Using the transformational approach to build a safe and generic data synchronizer
- In Proceedings of ACM Group 2003 Conference, November 9–12 2003
, 2003
"... Reconciliating divergent data is an important issue in concurrent engineering, mobile computing and software configuration management. Currently, a lot of synchronizers or merge tools perform reconciliations. However, they do not define what is the correctness of their synchronisation. In this paper ..."
Abstract
-
Cited by 38 (19 self)
- Add to MetaCart
(Show Context)
Reconciliating divergent data is an important issue in concurrent engineering, mobile computing and software configuration management. Currently, a lot of synchronizers or merge tools perform reconciliations. However, they do not define what is the correctness of their synchronisation. In this paper, we propose to use a transformational approach as the basic model for reasonning about synchronisation. We propose an algorithm and specific transformation functions that realize a file system synchronisation. Unlike classic synchronizers, our synchronizer ensures properties of convergence, causality and intention preservation and is extensible to new data types.
Transparent sharing and interoperation of heterogeneous single-user applications
- In CSCW
, 2002
"... Multi-user applications generally lag behind in features or compatibility with single-user applications. As a result, users are often not motivated to abandon their favorite single-user applications for groupware features that are less frequently used. A well-accepted approach, collaboration transpa ..."
Abstract
-
Cited by 38 (2 self)
- Add to MetaCart
(Show Context)
Multi-user applications generally lag behind in features or compatibility with single-user applications. As a result, users are often not motivated to abandon their favorite single-user applications for groupware features that are less frequently used. A well-accepted approach, collaboration transparency, is able to convert off-the-shelf single-user applications into groupware without modifying the source code. However, existing systems have been largely striving to develop generic application-sharing mechanisms and undesirably force users to share the same application in cooperative work. In this paper we analyze this problem and present a novel approach (called intelligent collaboration transparency) to addressing this problem. Our approach allows for heterogeneous application sharing by considering the particular semantics of the applications and the collaboration task in question.
Undo Any Operation at Any Time in Group Editors
- In Computer-Supported Cooperative Work (CSCW
, 2000
"... The ability to undo operations is an indispensable feature of real-time group editors, but supporting group undo is a difficult problem. None of the existing solutions for group undo is able to support undoing any operation at any time with guaranteed success. In this paper, we contribute a novel gr ..."
Abstract
-
Cited by 28 (4 self)
- Add to MetaCart
(Show Context)
The ability to undo operations is an indispensable feature of real-time group editors, but supporting group undo is a difficult problem. None of the existing solutions for group undo is able to support undoing any operation at any time with guaranteed success. In this paper, we contribute a novel group undo solution with such a capability. The basic idea is to interpret an undo command as a concurrent inverse operation by means of operational transformation, so that an operation is always undoable regardless of its undo context. By separating undo policy from undo mechanism, multiple undo modes, such as single-step undo, chronological undo, and selective undo, can be supported in the same collaborative editing session. In addition, solutions to known undo puzzles are also provided. A web-based group text editor using the proposed undo solution has been implemented and is accessible at: http://reduce.qpsf.edu.au.
Consistency in Replicated Continuous Interactive Media
, 2000
"... In this paper we investigate how consistency can be ensured for replicated continuous interactive media, i.e., replicated media which change their state in reaction to user initiated operations as well as because of the passing of time. Typical examples for this media class are networked computer ga ..."
Abstract
-
Cited by 28 (1 self)
- Add to MetaCart
In this paper we investigate how consistency can be ensured for replicated continuous interactive media, i.e., replicated media which change their state in reaction to user initiated operations as well as because of the passing of time. Typical examples for this media class are networked computer games and distributed VR applications. Existing approaches to reach consistency for replicated discrete interactive media are briefly outlined and it is shown that these fail in the continuous domain. In order to allow a thorough discussion of the problem, a formal definition of the term consistency in the continuous domain is given. Based on this definition we show that an important tradeoff relationship exists between the responsiveness of the medium and the appearance of short-term inconsistencies. Until now this tradeoff was not taken into consideration for consistency in the continuous domain, thereby severely limiting the consistency related fidelity for a large number of applications. We show that for those applications the fidelity can be significantly raised by voluntarily decreasing the responsiveness of the medium. This concept is called local lag. It enables the distribution of continuous interactive media that are more vulnerable to short-term inconsistencies than, e.g., battlefield simulations. We prove that the concept of local lag is valid by describing how local lag was successfully used to ensure consistency in a 3D telecooperation application.