consistency maintenance based on the mark & retrace technique in groupware systems

32
ACM Group 2005 Conference Consistency Maintenance Based on the Mark & Retrace Technique in Groupware Systems Ning Gu, Jiang-Ming Yang and Qi-Wei Zhang Fudan University Jiang-Ming Yang

Upload: kali

Post on 12-Jan-2016

34 views

Category:

Documents


0 download

DESCRIPTION

Consistency Maintenance Based on the Mark & Retrace Technique in Groupware Systems. Ning Gu, Jiang-Ming Yang and Qi-Wei Zhang Fudan University. Jiang-Ming Yang. OUTLINE. Introduction & Motivation Address Space Transformation Mark & Retrace Technique Efficiency Analysis Undo Supported - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Consistency Maintenance Based on the Mark & Retrace Technique in Groupware Systems

ACM Group 2005 Conference

Consistency Maintenance Based on the Mark

& Retrace Technique in Groupware Systems

Ning Gu, Jiang-Ming Yang and Qi-Wei ZhangFudan University

Jiang-Ming Yang

Page 2: Consistency Maintenance Based on the Mark & Retrace Technique in Groupware Systems

ACM Group 2005 Conference

April 21, 2023 Fudan University, Cooperative Information and Systems Laboratory 2

OUTLINE

Introduction & Motivation

Address Space Transformation

Mark & Retrace Technique

Efficiency Analysis

Undo Supported

Related Works & Conclusions

Page 3: Consistency Maintenance Based on the Mark & Retrace Technique in Groupware Systems

ACM Group 2005 Conference

April 21, 2023 Fudan University, Cooperative Information and Systems Laboratory 3

OUTLINE

Introduction & Motivation

Address Space Transformation

Mark & Retrace Technique

Efficiency Analysis

Undo Supported

Related Works & Conclusions

Page 4: Consistency Maintenance Based on the Mark & Retrace Technique in Groupware Systems

ACM Group 2005 Conference

April 21, 2023 Fudan University, Cooperative Information and Systems Laboratory 4

INTRODUCTION What’s Group Editors?

Most commonly used groupware applications. Multiple users’ participationUser can edit and modify shared data objects,

such as word, graphics, and media documents, using a computer network.

Techniques for building group editors have been widely applied and practiced.

A Powerful research vehicles in exploring solution to consistency problems.

Page 5: Consistency Maintenance Based on the Mark & Retrace Technique in Groupware Systems

ACM Group 2005 Conference

April 21, 2023 Fudan University, Cooperative Information and Systems Laboratory 5

MOTIVATION & CHALLENGE In the past decade, OT method has been

gradually improved.

Control AlgorithmsOT Functions

An OT algorithm which can maintains the CCI model and solved TP2 puzzle and false-tie (ERV) puzzle will be very intricate.

Page 6: Consistency Maintenance Based on the Mark & Retrace Technique in Groupware Systems

ACM Group 2005 Conference

April 21, 2023 Fudan University, Cooperative Information and Systems Laboratory 6

OUTLINE

Introduction & Motivation

Address Space Transformation

Mark & Retrace Technique

Efficiency Analysis

Undo Supported

Related Works & Conclusions

Page 7: Consistency Maintenance Based on the Mark & Retrace Technique in Groupware Systems

ACM Group 2005 Conference

April 21, 2023 Fudan University, Cooperative Information and Systems Laboratory 7

ADDRESS SPACE TRANSFORMATION

Example 1:

Initial document is “abd”.

O4 and O5 are two concurrent operations.

In OT Technique, due to the existence of concurrent operation O4, O5 shall be transformed to Insert [“c”, 2] before execution on site U1.

Page 8: Consistency Maintenance Based on the Mark & Retrace Technique in Groupware Systems

ACM Group 2005 Conference

April 21, 2023 Fudan University, Cooperative Information and Systems Laboratory 8

ADDRESS SPACE TRANSFORMATION

Page 9: Consistency Maintenance Based on the Mark & Retrace Technique in Groupware Systems

ACM Group 2005 Conference

April 21, 2023 Fudan University, Cooperative Information and Systems Laboratory 9

OUTLINE

Introduction & Motivation

Address Space Transformation

Mark & Retrace Technique

Efficiency Analysis

Undo Supported

Related Works & Conclusions

Page 10: Consistency Maintenance Based on the Mark & Retrace Technique in Groupware Systems

ACM Group 2005 Conference

April 21, 2023 Fudan University, Cooperative Information and Systems Laboratory 10

THE STRUCTURE OF MARK & RETRACE A document is a liner

structure composed of characters.

Each character may have several operations targeting itself while each operation targets only one character.

Add the effective / ineffective mark information to every node in the liner structure.

The address space can be expressed as the effective character nodes from left to right.

Page 11: Consistency Maintenance Based on the Mark & Retrace Technique in Groupware Systems

ACM Group 2005 Conference

April 21, 2023 Fudan University, Cooperative Information and Systems Laboratory 11

THE RETRACING PROCEDURE The goal of the Retracing procedure is to retrace

the address space to the state at a given timestamp SV.

Consider the following four situations. if SVOins ≥ SV , then this node is marked ineffective;

if SVOins ≤ SV and there is no Delete targeting this character node, then this node is marked effective;

if SVOins ≤ SV and SVOdel ≥ SV , then this node is marked effective;

if SVOins ≤ SV but SVOdel ≤ SV , then this node is marked ineffective.

Page 12: Consistency Maintenance Based on the Mark & Retrace Technique in Groupware Systems

ACM Group 2005 Conference

April 21, 2023 Fudan University, Cooperative Information and Systems Laboratory 12

THE CONTROL ALGORITHM Control-Algorithm (DocS, O), execute O on

DocS.

Retracing(DocS, SVO)

Execute the operation O, and attach the operation with its timestamp to the character node.

SVS[R] ⇐ SVS[R] + 1

Retracing(DocS, SVS)

Page 13: Consistency Maintenance Based on the Mark & Retrace Technique in Groupware Systems

ACM Group 2005 Conference

April 21, 2023 Fudan University, Cooperative Information and Systems Laboratory 13

EXAMPLE 1: Effective node & ineffective

node

User U1 intends to execute operation Insert[“c”, 3] with timestamp <1,1,2>.

User’s view is “ad”.

Page 14: Consistency Maintenance Based on the Mark & Retrace Technique in Groupware Systems

ACM Group 2005 Conference

April 21, 2023 Fudan University, Cooperative Information and Systems Laboratory 14

EXAMPLE 1: First, retrace the

document to the state at the time of timestamp <1,1,2>.

Conceal the effect of operation Delete[“b”, 2].

Character node “b” become “Effective”.

User’s view is “abd”.

Page 15: Consistency Maintenance Based on the Mark & Retrace Technique in Groupware Systems

ACM Group 2005 Conference

April 21, 2023 Fudan University, Cooperative Information and Systems Laboratory 15

EXAMPLE 1: The document’s state at the time of timestamp

<1,1,2> is the state at the time of operation’s ( Insert [“c”, 3] ) generation.

Operation Insert [“c”, 3] can be executed directly in this new address space.

Page 16: Consistency Maintenance Based on the Mark & Retrace Technique in Groupware Systems

ACM Group 2005 Conference

April 21, 2023 Fudan University, Cooperative Information and Systems Laboratory 16

EXAMPLE 1: The State Vector of the local site has been adjusted to

<2,1,2> after the execution is finished.

And then it retraces to the view “acd” of new State Vector by restoring the effect of operation Delete[“b”, 2] and adding the execution effect of the new operation Insert[“c”, 3].

Page 17: Consistency Maintenance Based on the Mark & Retrace Technique in Groupware Systems

ACM Group 2005 Conference

April 21, 2023 Fudan University, Cooperative Information and Systems Laboratory 17

OPERATION EXECUTION The Delete operation’s execution is simple. The process is to find the

corresponding character node, attach the operation on the character node and then perform the Retracing procedure to give this node a correct effective/ineffective mark.

The Insert is to search for an Inserting position in the address space, which is corresponding to a range in document between two effective character nodes. There may exist some other ineffective character nodes in this range.

A Range-Scan process to determine the right-and-left relation between the new Insert and these ineffective character nodes and then find an accurate position.

Page 18: Consistency Maintenance Based on the Mark & Retrace Technique in Groupware Systems

ACM Group 2005 Conference

April 21, 2023 Fudan University, Cooperative Information and Systems Laboratory 18

OPERATION EXECUTION To realize the comparability between two Insert

operations, define a TOrder function:

Given two character nodes CNa and CNb. The attached operations are generated at site a and site b, and are timestamped by SVa and SVb.

TOrder(CNa) < TOrder(CNb), iff

sum(SVa) < sum(SVb)

a < b, when sum(SVa) = sum(SVb)

Where sum(SV) =

Page 19: Consistency Maintenance Based on the Mark & Retrace Technique in Groupware Systems

ACM Group 2005 Conference

April 21, 2023 Fudan University, Cooperative Information and Systems Laboratory 19

OPERATION EXECUTION INSERT RULES:

1) The new character node should be inserted in the range.

2) If there is a existed character node CN, the insert operation of CN is causally before CNnew, CNnew should be inserted on the left of CN.

3) If there is a existed character node CN1, TOrder(CNnew)<TOrder(CN1) and CN1 do not meets the rule 4, CNnew should be insert on the left of CN1.

4) Otherwise, if there is two existed character node CN1 and CN2, CN2 is on the right of CN1, CNnew should be inserted on the right of CN2 when :

TOrder(CNnew)<TOrder(CN1)

TOrder(CNnew)>TOrder(CN2)

CN2 is causally before CN1

Page 20: Consistency Maintenance Based on the Mark & Retrace Technique in Groupware Systems

ACM Group 2005 Conference

April 21, 2023 Fudan University, Cooperative Information and Systems Laboratory 20

OPERATION EXECUTION INSERT EXECUTION:

Scan the range from left to right. If there is a existed character node meets the rule 2,

return this position immediately. If there is a existed character node meets the rule 3,

record this position into a variable P. If the record meets the rule 4, clean the record.

Page 21: Consistency Maintenance Based on the Mark & Retrace Technique in Groupware Systems

ACM Group 2005 Conference

April 21, 2023 Fudan University, Cooperative Information and Systems Laboratory 21

CAUSALITY PRESERVATION To achieve causality preservation, we only

need to ensure that every remote operation is causally-ready before its execution, which we call execution condition.

It should be noted that even if causality is preserved, the execution order of the operations would still be different because of their different orders of arrival at different sites.

Page 22: Consistency Maintenance Based on the Mark & Retrace Technique in Groupware Systems

ACM Group 2005 Conference

April 21, 2023 Fudan University, Cooperative Information and Systems Laboratory 22

CONVERGENCE

The Proof:

2 operations

Same Scan-Ranges Different Scan-Ranges

n operations

Page 23: Consistency Maintenance Based on the Mark & Retrace Technique in Groupware Systems

ACM Group 2005 Conference

April 21, 2023 Fudan University, Cooperative Information and Systems Laboratory 23

INTENTION PRESERVATION Since a Insert operation can find the correct scan-

range and a Delete operation can find its corresponding character node at any sites and they do not interfere with other operations, those satisfy operations’ definition.

However, there are still some arguments about the proof of achieving intention preservation, we plan to present more about intention’s formal definition and the complete proof in the next future.

Page 24: Consistency Maintenance Based on the Mark & Retrace Technique in Groupware Systems

ACM Group 2005 Conference

April 21, 2023 Fudan University, Cooperative Information and Systems Laboratory 24

OUTLINE

Introduction & Motivation

Address Space Transformation

Mark & Retrace Technique

Efficiency Analysis

Undo Supported

Related Works & Conclusions

Page 25: Consistency Maintenance Based on the Mark & Retrace Technique in Groupware Systems

ACM Group 2005 Conference

April 21, 2023 Fudan University, Cooperative Information and Systems Laboratory 25

OPERATION EXECUTION EFFICIENCY Reorganize the character nodes to a Red-Black Tree and

ensure the result of pre-order traversal of the Black-Red tree is the original linear order.

Every node of the tree saves two additional data —the two numbers of the effective character nodes of left sub-tree and right sub-tree.

The amortized costs of Insert and Delete are both O(logn).

Page 26: Consistency Maintenance Based on the Mark & Retrace Technique in Groupware Systems

ACM Group 2005 Conference

April 21, 2023 Fudan University, Cooperative Information and Systems Laboratory 26

EFFICIENCY OPTIMIZATION OF RETRACING Use the “Garbage Collection” method to handle a

operation list containing the operations which haven’t been executed at some sites.

Suppose the length of operation list is h which means we need to check and change at most h character nodes’ effective/ineffective mark during Retracting process.

In the second Retracing process, we restore the changed nodes instead of the Retracing process. After then, we only need to deal with the targeting character node of the new operation.

Page 27: Consistency Maintenance Based on the Mark & Retrace Technique in Groupware Systems

ACM Group 2005 Conference

April 21, 2023 Fudan University, Cooperative Information and Systems Laboratory 27

OUTLINE

Introduction & Motivation

Address Space Transformation

Mark & Retrace Technique

Efficiency Analysis

Undo Supported

Related Works & Conclusions

Page 28: Consistency Maintenance Based on the Mark & Retrace Technique in Groupware Systems

ACM Group 2005 Conference

April 21, 2023 Fudan University, Cooperative Information and Systems Laboratory 28

UNDO SUPPORTED Given an Undo operation O2, Undo[O1], in which O1’s

target position is P1 and timestamped by SVO1. The execution process can be performed as follow.

Retrace the address space to the state at the time SVO1; count to the P1th effective character node and attach O2

on it. Then the second Retracing process takes this new Undo

into consideration and gives this node the correct effective / ineffective mark.

Append a Delete counter to every character node to realize the Multi-version / Single-display strategy.

Page 29: Consistency Maintenance Based on the Mark & Retrace Technique in Groupware Systems

ACM Group 2005 Conference

April 21, 2023 Fudan University, Cooperative Information and Systems Laboratory 29

OUTLINE

Introduction & Motivation

Address Space Transformation

Mark & Retrace Technique

Efficiency Analysis

Undo Supported

Related Works & Conclusions

Page 30: Consistency Maintenance Based on the Mark & Retrace Technique in Groupware Systems

ACM Group 2005 Conference

April 21, 2023 Fudan University, Cooperative Information and Systems Laboratory 30

RELATED WORKS The initial concept of Mark & Retrace was proposed early in

Document Mark Technique but was not able to solve the dOPT puzzle.

dOPT, adOPTed and GOTO cannot fully satisfy TP2.

NICE and SOCT3/4 is not able to resolve the false-tie (ERV) puzzle.

GOT fail in the case of complicated false-tie (ERV) scenarios.

Imine et al. tried to support TP2 by expanding IT function but fails in solving dOPT puzzle.

A solution of false-tie (ERV) has been realized in Co-Word system, it is still not published.

Li et al. also reported a solution and gave the proof.

Page 31: Consistency Maintenance Based on the Mark & Retrace Technique in Groupware Systems

ACM Group 2005 Conference

April 21, 2023 Fudan University, Cooperative Information and Systems Laboratory 31

CONCLUSIONS In this paper we propose a strategy which can

maintain CCI model and is different from OT. It does not ensure the operation’s execution correctness by modifying the operation’s address but by transforming the address space of the document.

Since the Mark & Retrace processes do not affect the relative position (left or right) between characters, it is easier to maintain operations’ order. It can not only achieve all the consistency criteria, but can support any Undo as well.

Page 32: Consistency Maintenance Based on the Mark & Retrace Technique in Groupware Systems

ACM Group 2005 Conference

April 21, 2023 Fudan University, Cooperative Information and Systems Laboratory 32

Thanks!