55 research outputs found
Scalable XML Collaborative Editing with Undo short paper
Commutative Replicated Data-Type (CRDT) is a new class of algorithms that
ensures scalable consistency of replicated data. It has been successfully
applied to collaborative editing of texts without complex concurrency control.
In this paper, we present a CRDT to edit XML data. Compared to existing
approaches for XML collaborative editing, our approach is more scalable and
handles all the XML editing aspects : elements, contents, attributes and undo.
Indeed, undo is recognized as an important feature for collaborative editing
that allows to overcome system complexity through error recovery or
collaborative conflict resolution
Abstract unordered and ordered trees CRDT
Trees are fundamental data structure for many areas of computer science and
system engineering. In this report, we show how to ensure eventual consistency
of optimistically replicated trees. In optimistic replication, the different
replicas of a distributed system are allowed to diverge but should eventually
reach the same value if no more mutations occur. A new method to ensure
eventual consistency is to design Conflict-free Replicated Data Types (CRDT).
In this report, we design a collection of tree CRDT using existing set CRDTs.
The remaining concurrency problems particular to tree data structure are
resolved using one or two layers of correction algorithm. For each of these
layer, we propose different and independent policies. Any combination of set
CRDT and policies can be constructed, giving to the distributed application
programmer the entire control of the behavior of the shared data in face of
concurrent mutations. We also propose to order these trees by adding a
positioning layer which is also independent to obtain a collection of ordered
tree CRDTs
"Term Partition" for Mathematical Induction
A key new concept, {\em term partition}, allows to design a new method for proving theorems whose proof usually requires mathematical induction. A term partition of a term is a well-defined splitting of into a pair of terms that describes the {\em language of normal forms of the ground instances of }. If \A {\em monomorphic} set of axioms (rules) and (a,b)t\Aany ground instance of can be ``divided'' into the normal forms (obtained by using \Athe corresponding ground instances of abt = s\Aartition of and a partition of is computed. If and , then is an inductive theorem of \A The method is conceptually different to the classical theorem proving approaches since it tries to directly mechanize the \omega$-rule. It allows to obtain elegant and natural proofs of a large number of conjectures (including non-linear ones) without additional lemmas and/or generalizations
Real time group editors without Operational transformation
A real time group editor allows multiple users to edit the same text at the same time from multiple sites across Internet. The real time group editors community has developed a framework called Operational Transformation (OT) for maintaining consistency of shared data. OT differs from other optimistic replication systems by not only ensuring content consistency but also intention consistency. In this paper, we describe the WOOT (WithOut Operational Transformation) framework that ensures intention consistency without following the OT approach. However, thanks to its new viewpoint, WOOT is drastically simpler, more efficient and does not require vector clocks or central sites. The WOOT framework is particularly adapted to very large peer-to-peer networks
Data Consistency for P2P Collaborative Editing
http://portal.acm.org/Peer-to-peer (P2P) networks are very efficient for distributing content. We want to use this potential to allow not only distribution but collaborative editing of this content. Existing collaborative editing systems are centralised or depend on the number of sites. such systems cannot scale when deployed on P2P networks. In this paper, we propose a new model for building a collaborative editing system. This model is fully decentralised and does not depend on the number of sites
Scalable XML Collaborative Editing with Undo
Commutative Replicated Data-Type (CRDT) is a new class of algorithms that ensure scalable consistency of replicated data. It has been successfully applied to collaborative editing of texts without complex concurrency control. In this paper, we present a CRDT to edit XML data. Compared to existing approaches for XML collaborative editing, our approach is more scalable and handles all the XML editing aspects : elements, contents, attributes and undo. Indeed, undo is recognized as an important feature for collaborative editing that allows to overcome system complexity through error recovery or collaborative conflict resolution.Le type de données répliqué commutatives (CRDT) est une nouvelle classe d'algorithmes qui assurent la cohérence des données répliquées tout en passant à l'échelle. Il a été appliqué avec succès à l'édition collaborative de textes sans mécanisme de contrôle de la concurrence complexe. Dans cet article, nous présentons un CRDT pour éditer des données XML. Par rapport aux approches existantes pour l'édition collaborative d'XML, notre approche offre un meilleur passage à l'échelle et gère tous les aspects de l'édition de document XML: éléments, le contenu, les attributs et l'annulation. En effet, l'annulation est reconnue comme un élément important pour l'édition collaborative qui permet de surmonter la complexité du système de collaboration grâce à la récupération d'erreur ou de résolution des conflits
Optimistic Replication for Massive Collaborative Editing
In recent times, Wikipedia has opened the way to massive collaborative editing. More specifically, it has demonstrated what can be achieved with a massive collaborative effort. Massive collaborative editing implies scalability and pessimistic replication scales poorly in the wide area. Optimistic replication offers better performance but has severe drawbacks for maintaining consistency. In this paper, we propose a new optimistic replication algorithm for massive collaborative editing called WOOT. It is designed to scale as well as to ensure eventual consistency and intention preservation. It is important to point out that WOOT's efficiency does not depend on a number of sites and can be deployed on a very large, pure peer-to-peer network
File system on CRDT
In this report we show how to manage a distributed hierarchical structure
representing a file system. This structure is optimistically replicated, each
user work on his local replica, and updates are sent to other replica. The
different replicas eventually observe same view of file systems. At this stage,
conflicts between updates are very common. We claim that conflict resolution
should rely as little as possible on users. In this report we propose a simple
and modular solution to resolve these problems and maintain data consistency
Software Engineering Education by Example
Based on the old but famous distinction between "in the small" and "in the
large" software development, at Nancy Universit\'e, UHP Nancy 1, we experience
for a while software engineering education thanks to actual project
engineering. This education method has the merit to enable students to discover
and to overcome actual problems when faced to a large project which may be
conducted by a large development team. The mode of education is a simulation of
an actual software engineering project as encountered in "real life\'e"
activities
Logoot: a P2P collaborative editing system
Massive collaborative editing becomes a reality through leading projects such as the Wikipedia. Such massive collaboration is currently supported with costly central service. To avoid such costs, we aim to provide a peer-to-peer collaborative editing system. Existing approaches that propose distributed collaborative distributed either do not scale in term of users number or in term of editions number. We present the Logoot approach that scales in these both dimensions while ensuring causality, consistency and intention criteria. We evaluate the Logoot approach and compare it to others with a corpus of all the editions applied on a set of the most edited and biggest page of the Wikipedia
- …