Model and classification of database replication techniques
Construction of a universal mathematic-logical model of replication processes in data bases is considered. The fundamental definitions of notions for different types of replication are given. The classification of replication techniques is proposed and the respective efficiency criteria are determin...
Gespeichert in:
Datum: | 2007 |
---|---|
Hauptverfasser: | , |
Format: | Artikel |
Sprache: | English |
Veröffentlicht: |
Інститут проблем реєстрації інформації НАН України
2007
|
Schriftenreihe: | Реєстрація, зберігання і обробка даних |
Schlagworte: | |
Online Zugang: | http://dspace.nbuv.gov.ua/handle/123456789/50889 |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
Назва журналу: | Digital Library of Periodicals of National Academy of Sciences of Ukraine |
Zitieren: | Model and classification of database replication techniques / W. Khadzynov, M. Maksymiuk // Реєстрація, зберігання і оброб. даних. — 2007. — Т. 9, № 2. — С. 77-87. — Бібліогр.: 8 назв. — англ. |
Institution
Digital Library of Periodicals of National Academy of Sciences of Ukraineid |
irk-123456789-50889 |
---|---|
record_format |
dspace |
spelling |
irk-123456789-508892013-11-07T03:08:58Z Model and classification of database replication techniques Khadzynov, W. Maksymiuk, M. Системи збереження і масового розповсюдження даних Construction of a universal mathematic-logical model of replication processes in data bases is considered. The fundamental definitions of notions for different types of replication are given. The classification of replication techniques is proposed and the respective efficiency criteria are determined. The variants of realization for system architecture, locking strategy, servers interaction, transaction termination, database platforms, correctness criteria of transaction terminator are discussed. Розглянуто побудову універсальної математико-логічної моделі процесів реплікації у базах даних. Наведено фундаментальні визначення понять для різних видів реплікації. Запропоновано класифікацію схем реплікації та визначено відповідні критерії ефективності. Обговорено варіанти реалізації системної архітектури, стратегії блокіровок, взаємодії серверів, завершення транзакцій, платформ баз даних, критерії коректності завершення транзакцій. Рассмотрено построение универсальной математико-логической модели процессов репликации в базах данных. Приведены фундаментальные определения понятий для разных видов репликации. Предложена классификация схем репликации и определены соответствующие критерии эффективности. Обсуждены варианты реализации системной архитектуры, стратегии блокировок, взаимодействия серверов, завершения транзакций, платформ баз данных, критерии корректности завершения транзакций. 2007 Article Model and classification of database replication techniques / W. Khadzynov, M. Maksymiuk // Реєстрація, зберігання і оброб. даних. — 2007. — Т. 9, № 2. — С. 77-87. — Бібліогр.: 8 назв. — англ. 1560-9189 http://dspace.nbuv.gov.ua/handle/123456789/50889 004.031 en Реєстрація, зберігання і обробка даних Інститут проблем реєстрації інформації НАН України |
institution |
Digital Library of Periodicals of National Academy of Sciences of Ukraine |
collection |
DSpace DC |
language |
English |
topic |
Системи збереження і масового розповсюдження даних Системи збереження і масового розповсюдження даних |
spellingShingle |
Системи збереження і масового розповсюдження даних Системи збереження і масового розповсюдження даних Khadzynov, W. Maksymiuk, M. Model and classification of database replication techniques Реєстрація, зберігання і обробка даних |
description |
Construction of a universal mathematic-logical model of replication processes in data bases is considered. The fundamental definitions of notions for different types of replication are given. The classification of replication techniques is proposed and the respective efficiency criteria are determined. The variants of realization for system architecture, locking strategy, servers interaction, transaction termination, database platforms, correctness criteria of transaction terminator are discussed. |
format |
Article |
author |
Khadzynov, W. Maksymiuk, M. |
author_facet |
Khadzynov, W. Maksymiuk, M. |
author_sort |
Khadzynov, W. |
title |
Model and classification of database replication techniques |
title_short |
Model and classification of database replication techniques |
title_full |
Model and classification of database replication techniques |
title_fullStr |
Model and classification of database replication techniques |
title_full_unstemmed |
Model and classification of database replication techniques |
title_sort |
model and classification of database replication techniques |
publisher |
Інститут проблем реєстрації інформації НАН України |
publishDate |
2007 |
topic_facet |
Системи збереження і масового розповсюдження даних |
url |
http://dspace.nbuv.gov.ua/handle/123456789/50889 |
citation_txt |
Model and classification of database replication techniques / W. Khadzynov, M. Maksymiuk // Реєстрація, зберігання і оброб. даних. — 2007. — Т. 9, № 2. — С. 77-87. — Бібліогр.: 8 назв. — англ. |
series |
Реєстрація, зберігання і обробка даних |
work_keys_str_mv |
AT khadzynovw modelandclassificationofdatabasereplicationtechniques AT maksymiukm modelandclassificationofdatabasereplicationtechniques |
first_indexed |
2025-07-04T12:45:32Z |
last_indexed |
2025-07-04T12:45:32Z |
_version_ |
1836720464991354880 |
fulltext |
Системи збереження
і масового розповсюдження даних
ISSN 1560-9189 Реєстрація, зберігання і обробка даних, 2007, Т. 9, № 2 77
UDC 004.031
Włodzimierz Khadzynov, Mateusz Maksymiuk
Politechnika Koszalińska, Katedra Inżynierii Komputerowej
ul. Śniadeckich, 2, 75-453 Koszalin, Polska
e-mail: hadginov@ie.tu.koszalin.pl, mateuszmaksymiuk@wp.pl
Model and classification of database replication techniques
Construction of a universal mathematic-logical model of replication
processes in data bases is considered. The fundamental definitions of no-
tions for different types of replication are given. The classification of repli-
cation techniques is proposed and the respective efficiency criteria are de-
termined. The variants of realization for system architecture, locking strate-
gy, servers interaction, transaction termination, database platforms, cor-
rectness criteria of transaction terminator are discussed.
Key words: database replication, distributed database, transaction, locking
transactions, isolation transactions.
1. Introduction
Recently there was occurred rapid development in a database replication area.
Many new methods and various techniques were proposed. Because database replica-
tion is used in many distinct scenarios (i.e. security, efficiency, accessibility), there is a
necessity for different techniques which are adapted to given requirements. Any imple-
mentation of database replication technique must be based on some fundamental analyt-
ic model which describes the behaviors of the system at high level of abstraction.
Model of the database replication process is the first stage during development of
new replication technique. Today there are known many various models of database
replication. Although every algorithm of database replication is unique and different, it
can be described using certain universal model and classified by standard criteria. In this
paper is presented the detailed classification of database replication issue, based on an
elementary criterion which allows to divide various techniques into different classes.
Moreover there is included a brief description of each case. The main purpose of this
work is a presentation of general analytic model of database replication, its classifica-
tion and various aspects of its techniques, methods and implementations.
© Włodzimierz Khadzynov, Mateusz Maksymiuk
Włodzimierz Khadzynov, Mateusz Maksymiuk
78
2. Model and definitions
2.1. Distributed database
We consider a system S which consists of a finite set of nodes with its cardinality
equal to n — formula 1:
{ }nsssS ,,, 21 K= . (1)
The term node (also known as site) means a single database which belongs to a dis-
tributed database. All nodes are in touch with one another through the network. In this
paper we omit the influence of the network topology to a distributed system and we
suppose that all nodes are connected through the WAN network in the way: peer-to-
peer.
Each node s of a considered system at any time can be in one of two states (correct
or faulty), which is returned by function )(sState — formula 2:
{ }faultycorrectsState ,)( Î . (2)
Moreover we suppose that when a node is in faulty state, it behaves as it does not
exist, which means it does not response to any request/messages. It means that we ex-
clude Byzantine failures, in which server may give false responses.
Distributed database W , which represents nodes of system S , contains a finite set
of data items jx (e.g. records) — formula 3:
{ }kxxx ,,, 21 K=W . (3)
Distributed database W is partitioned on partitions lD , where { }nl ,...,1 Î . Each
partition lD is replicated at m additional nodes. The case when 0=m implies replica-
tion does not exist, the case when 1-= nm implies full replication, for intermediate
values: }{ 2,1 -Î nm there is a partial replication. In our consideration there is as-
sumed a uniform partitioning, it means each partition is replicated at identical number
of nodes.
For each data item jx exists at least one node, which contains jx — formula 4:
)(sItemsx
Ssx
Î$"
ÎWÎ
. (4)
For each node SsÎ function )(sItems returns a set of all data items, which are stored
at node s . Function )(xSites returns a set of all nodes which contain a data item x .
2.2. Distributed transactions
Transaction t is a finite sequence of read/write operations io — formula 5. Every
transaction is terminated by commit or rollback action:
Model and classification of database replication techniques
ISSN 1560-9189 Реєстрація, зберігання і обробка даних, 2007, Т. 9, № 2 79
),,,( 21 mooot K= , (5)
Tt Î . (6)
Every transaction t belongs to a set of all possible transactions T , which can be
executed on distributed database — formula 6.
Functions in formulas 7 and 8 return sets of data items that are read and written by
transaction t .
)(tRS , (7)
)(tWS . (8)
Current state of transaction t is returned by function )(tState presented in formula
9. This state can have one of the four values: Executing (transaction executes read/write
operations), Certifying (verification of transaction before commit), Aborted (transaction
was rolled back), Committed (transaction was committed).
{ }CommitedAbortedCertyfyingExecutingtState ,,,)( Î . (9)
Distributed transactions can be divided in two groups (classes) according to classi-
fication proposed in [1]. Transaction of class I, means such transaction TtÎ started at
node SsÎ , which operates only on data items that belong to that node ( s ) — formula
10. For each transaction TtÎ , function Beginned At(t) returns the node in which given
transaction was started.
[ ]
ICLASS
Ss
tt
sItemstWStRS
stAtBeginned
Tt =Û
ú
ú
ú
û
ù
ê
ê
ê
ë
é
ÎÈ
Ù
=
Î $
Î )()()(
)(
: . (10)
Transaction of class II, means such transaction TtÎ , started at node SsÎ , which
operated on data items that do not belong to local node s — formula 11.
[ ]
[ ]
IICLASS
ss
Ss
Ss
tt
sItemstWStRS
sItemstWStRS
stAtBeginned
Tt =Û
ú
ú
ú
ú
ú
ú
û
ù
ê
ê
ê
ê
ê
ê
ë
é
ÎÈ
Ù
ÏÈ
Ù
=
Î $
¹
Î
Î
)()()(
)()()(
)(
:
1
0
0
10
1
0
. (11)
Transactions of class II are more difficult to execute, because they need to refer-
ence to remote nodes, i.e. during pessimistic locking, which reduces system efficiency.
This aspect was discussed in detail in [1].
Włodzimierz Khadzynov, Mateusz Maksymiuk
80
3. Classification
In order to classify replication issue, first there must be defined appropriate criteria,
according to which such classification occurs. Because researches on database replica-
tion issue are conducted for some time, there was proposed several classification sche-
mas and criteria. One of the most known classifications was proposed by Grey in [2]. It
is based on two basic criteria: where and when updates take place. More detailed classi-
fication presented by Wiesmann in [3, 8] is based on three parameters: system architec-
ture, interaction between servers and transaction termination method. In this paragraph
is presented classification of replication based on both proposals extended with addi-
tional criteria.
3.1. Transaction propagation mode
One of the basic criteria of the notion of replication is related to time domain. This
criterion is based on delay in time at transaction execution at different nodes of distri-
buted database. There are two possible cases: synchronous (immediately execution) and
asynchronous (deferred execution).
3.1.1. Synchronous mode
In synchronous mode transactions updating data, are executed at all nodes of a sys-
tem simultaneously ensuring full consistency and integrity of data. In any nodes
Sss Î21 , , for any data item WÎx which belongs to both nodes, at any time
>¥Î< ,0t , the value of this data item is identical — formula 12 (we consider only
committed transaction). Function ),( xsValue returns current value of data item WÎx at
node SsÎ .
),,(),,( 21
,0
)(
)(
)(
)(
),(
2
1
2
1
21
txsValuetxsValue
t
sItemsx
sItemsx
x
CorrectsState
CorrectsState
Sss
="""
>¥Î<
Î
Î
WÎ
=
=
Î
. (12)
In this mode distributed database meets 1-copy serializability condition. It means that
result of execution of any sequence of transactions at distributed database is identical as
the result of execution of the same sequence of transactions on the single database. Thus
any end-user cannot recognize that he is working with distributed database but he is
convinced to be working with single database. Synchronous mode causes many prob-
lems with its efficiency described at [6].
3.1.2. Asynchronous mode
In asynchronous mode transactions are executed only at local nodes. Propagation
of transactions to other nodes is realized in deferred times. It means that for every two
nodes Sss Î21, for any data item WÎx which is contained in these two nodes, for an
arbitrary transaction Tt Î , which modified data item x and was committed at time 0t
at node 1s , there exists such pair of finite times 2121 :),( tttt p , that values of data item
x will be different at time 1t and identical at time 2t — formula 13.
Model and classification of database replication techniques
ISSN 1560-9189 Реєстрація, зберігання і обробка даних, 2007, Т. 9, № 2 81
ú
ú
ú
û
ù
ê
ê
ê
ë
é
+=
Ù
+¹
$"""
Î
Î
Î
WÎ
=
=
Î ),,(),,(
),,(),,(
20201
10201
),(
),:(
)(
)(
)(
)(
),(
21
21
0
2
1
2
1
21 ttxsValuetxsValue
ttxsValuetxsValue
tt
tt
tst
Tt
sItemsx
sItemsx
x
CorrectsState
CorrectsState
Sss
p
. (13)
Minimum value of time 2t is called propagation time of modifications to all nodes
of distributed database. The less value of propagation time is the behavior of distributed
database is near synchronous mode. Because of deferred updates the transactions are
executed much faster, but its disadvantage is temporary data inconsistency.
3.2. System architecture
Architecture of distributed database system is an elementary criterion of classifica-
tion of replication systems. There can be distinguished two cases: centralized (Primary
Copy) in which exist some special nodes and decentralized (Update Everywhere) where
all nodes are uniform.
3.2.1. Primary Copy
In Primary Copy [6, 7] approach exists one special node in each partition of data
items, which is called Master. The Master node is responsible for execution of transac-
tions which modify data (or sets up the order of transaction processing) and back propa-
gation of these results to Slave nodes.
The Slave nodes are all nodes besides Master nodes. At Slave node there can only
occur read of data and any updates of data must be redirected to appropriate Master
node (Fig. 1). Unfortunately such solution brings crucial disadvantages. First, the Mas-
ter node may become «bottleneck» and cause low efficiency. Second, any failure of
Master node stops the execution of all update transactions that operate on data items
from given partition. One solution of that problem is the election of a new Master node
in case of failure of the previous one. System efficiency could be improved by incre-
menting the number of partitions, which also increment the number of Master nodes
and in case of single Master node failure only a small part of a system is disabled from
updates.
Fig. 1. Diagram of Primary Copy model
Włodzimierz Khadzynov, Mateusz Maksymiuk
82
3.2.2. Update everywhere
In Update Everywhere [6, 7] model the modification of data can occur at any node
of distributed system. All nodes have equal ability to read and write the data, which en-
sures system symmetry. Each modification is propagated to all other nodes of given par-
tition, however read-only transactions are executed locally at current node (if it contains
requested data). This method is called ROWA (Read One, Write All). To ensure data
consistency and integrity there are used appropriate group communications protocols
combined with proper locking strategies. The main advantage of such system is symme-
try and lack of special nodes (decentralization) what gives better reliability and elimi-
nates «bottleneck» nodes (such as Master node). But on the other side, decentralization
requires more sophisticated and complicated protocols, which cause much more net-
work traffic during group communication. Unproper selection of these protocols and its
parameters can greatly decrement system efficiency. Common model of Update every-
where is shown in Fig. 2.
Fig. 2. Model of Update Everywhere replication
3.3. Locking strategy
Execution of transactions in distributed database must concern concurrent access of
many other transactions to the same data. Because of that there are required specific al-
gorithms which ensure secure access to data. These methods are used to eliminate oc-
currences of conflicts and guarantee serializable access to the database. Generally, lock-
ing strategies could be divided into three classes: pessimistic, optimistic and semi-
pessimistic. Detailed analysis of influence of locking strategies to replication efficiency
is shown in [4].
3.3.1. Pessimistic locking
Pessimistic locking strategy assumes resource locking during transaction execution
(Fig. 3). Each read or write of data causes to acquire appropriate lock. Conditions re-
quired to acquisition of specific locks are shown in formulas 14 (read lock — shared)
and 15 (write lock — exclusive):
ú
ú
ú
û
ù
ê
ê
ê
ë
é
=
Ù
=
Û= "
Î falsexskedIsWriteLoc
falsexsadLockedIs
okxsLockWrite
xSitess ),(
),(Re
]),([
)(
1 , (14)
]),([]),(Re[
)(
1 falsexskedIsWriteLocokxsadLock
xSitess
=Û= "
Î
. (15)
Model and classification of database replication techniques
ISSN 1560-9189 Реєстрація, зберігання і обробка даних, 2007, Т. 9, № 2 83
Besides the type of lock (read or write), important thing is the kind of locked resource.
There can be locked various types of objects, such as single records, set of records,
tables, schemas etc. For example two transactions would not cause a conflict, if they
operate on the same table but separate sets of records. Locking eliminates possibility of
conflicts occurrence, but is not an ideal method because it reduces distributed database
efficiency and may cause deadlocks.
Fig. 3. 2-Phase Locking (2PL) protocol
3.3.2. Optimistic locking
Unlike pessimistic locking, the optimistic strategy does not block any resources
during transaction execution. Thus there is no possibility of deadlocks occurrence. Be-
cause there is no locking (which requires additional communication interaction between
nodes), there is no need for usage of locking protocols what leads to less network traffic
and better efficiency. Optimistic method allows concurrent transactions to continue si-
multaneous execution. Verification of transaction occurs just in its second phase, during
commit when occurrence of any conflicts is checked. In case of failure (when conflicts
occurred), what means that current transaction conflicts with these which have been al-
ready verified, current transaction is aborted. Condition for transaction 1t abortion dur-
ing its verification is shown in formula 16. This is a main disadvantage of optimistic
locking strategy: some part of transactions is aborted or alternatively requires repeated
execution:
ú
ú
ú
ú
ú
ú
ú
ú
ú
û
ù
ê
ê
ê
ê
ê
ê
ê
ê
ê
ë
é
÷
÷
÷
ø
ö
ç
ç
ç
è
æ
ƹÇ
Ú
ƹÇ
Ù
®ØÎ$
Ù
=
ºÎ
)()(
)()(
)(,
)(
),(
12
21
212
1
11
tWStRS
tWStRS
ttTt
commitingtState
TttAborted . (16)
Above condition contains several elements. The first one requires that transaction
has to be in a commit phase. Next is the time criterion. The symbol )( 21 tt ® means that
transaction 1t precedes transaction 2t , which is equivalent that 1t which started before
Włodzimierz Khadzynov, Mateusz Maksymiuk
84
start of 2t . Thus expression )( 21 tt ®Ø means that 2t began not later than 1t . The last
two elements check conflict occurrence between two transactions 1t and 2t .
3.3.3. Semi-optimistic locking
Semi-optimistic locking strategy does not bring any new algorithms, but is a com-
bination of both previous methods. For example, for I class transactions the pessimistic
locking is used and for II class transactions the optimistic one is used. Such solution
gives reasonable compromise between efficiency and amount of aborted transactions.
3.4. Server interaction
The network interaction between servers (nodes) is very time-consuming. Further-
more many nodes may be located in a very long distance from each other. Thus very
important issue is communication interaction between nodes. There are used many vari-
ous protocols based on group communication to implement database replication. The
main criterion of classification of these protocols is the number of messages transmitted
during execution of a single transaction. This number is expressed by function )(kf ,
which argument k is the number of operations (insert, update, delete) in given transac-
tion.
3.4.1. Constant interaction
In constant interaction case the number of messages )(kf transmitted in a single
transaction is constant, regardless of number of operations k contained in current trans-
action. This relationship is presented with big-O notation in formula 17.
)1()( Okf = . (17)
In most cases all operations contained in transaction are transmitted in a single
message. Because of this, a distributed system is less sensitive to the number of opera-
tions executed in a single transaction, what causes better efficiency.
3.4.2. Linear interaction
Unlike constant interaction, in the linear case the number of transmitted messages
is variable. Amount of messages is directly proportional to the number of operations in
a single transaction — formula 18:
)()( kOkf = . (18)
Usually, single message contains only one database operation. Thus if a transaction
has many operations, it requires transmitting many messages. Single message can con-
tain SQL statement or record from transaction log.
Model and classification of database replication techniques
ISSN 1560-9189 Реєстрація, зберігання і обробка даних, 2007, Т. 9, № 2 85
3.5. Transaction termination method
Execution of distributed transactions requires proper co-ordination of all nodes of a
distributed database. To maintain data consistency and integrity, there must be used ap-
propriate techniques. Depending on the way of implementation we can distinguish two
groups of algorithms: voting techniques and non-voting techniques.
3.5.1. Voting techniques
Voting techniques are often called atomic commitment protocols. In these tech-
niques, there is necessary a network communication between all nodes to commit trans-
action. Such network interaction is known as voting. During voting each node votes if
current transaction should be committed or rolled back. To commit given transaction
there must be positive voting result. As an example of voting techniques there can be
mentioned such methods as 2PC (Two-Phase Commit) — (Fig. 4), 3PC (Three-Phase
Commit) or quorum based methods.
Fig. 4. Two-Phase Commit diagram
3.5.2. Non-voting techniques
In these techniques, each node alone decides about transaction commit. There is no
need for network interaction such as voting between nodes. This method requires from
nodes deterministic behavior. Because of this determinism each node can make decision
by itself without communication or voting. Important issue in non-voting techniques are
so-called determinism points in transactions. Determinism point is such a point in trans-
action execution, from which rest of transaction execution behave deterministically.
Every transaction is executed only locally at current node. After reaching deterministic
point is propagated to other nodes of distributed database where it is also executed.
3.6. Correctness criterion
This criterion estimates in what degree distributed database reflects the ideal mod-
el. The ideal case is when database meets 1-copy serializability and ACID (Atomicity,
Consistency, Isolation and Durability). The first condition means that the result of ex-
ecution of any sequence of operations (transactions) on distributed database is identical
with the result of executing the same sequence of operations on single database. The
second one touches among other things the isolation issue. In theory every transaction
should be isolated from each other. Unfortunately, the ideal model is hard to implement
Włodzimierz Khadzynov, Mateusz Maksymiuk
86
in practice. Thus the most of available implementations offers only more restricted va-
riants of this criterion, i.e. various isolations level defined by ANSI, but not only. Be-
sides the ideal case (Serializable) there are used many other isolation levels, i.e. Snap-
shot, Repetable Read or Cursor Stability. Disadvantage of weaker isolation levels is
possibility of occurrences of certain anomalies, such as phantom reads or fuzzy reads,
but it is a compromise of efficiency and correctness. Detailed specification of correct-
ness issue is presented in [5] and characteristics of basic isolation levels are shown in
Table.
Isolation levels and their anomalies (legend: T — Yes, C — Sometimes)
Anomaly Dirty
Write
Dirty
Read
Cursor
Lost
Update
Lost
Update
Fuzzy
Read
Phantom
Read
Skew
Write
Skew Isolation level
Read Uncommitted – T T T T T T T
Read Committed – – T T T T T T
Cursor Stability – – – C C T T C
Repetable Read – – – – – T – –
Snapshot – – – – – C – T
Serializable – – – – – – – –
3.7. Platform diversity
Database platform diversity in distributed systems is a very important issue, espe-
cially in implementation phase. We distinguish two cases: homogeneous — which is
very simple to implement and heterogeneous which implementation is much more com-
plicated.
3.7.1. Homogeneous replication
This is a trivial case when all nodes represent an identical database platform. Be-
cause of this implementation of such system is simplified and has good efficiency. Most
implementations of database replication systems work in homogeneous environment.
3.7.2. Heterogeneous replication
If nodes of distributed system operate on different database platforms, it is called
heterogeneous replication. This case is much more complicated in its implementation.
There are necessarily additional intermediate layers responsible for migration and trans-
formation of data between servers. Because of large variety in interfaces, SQL syntax,
data types, transaction log formats, and other issues there are many problems to solve.
This significantly decreases distributed database efficiency in compare to homogeneous
case.
4. Summary
In the given paper are presented elementary aspects of database replication and re-
lated issues. Obviously the area of the replication issue is very wide and it was not poss-
Model and classification of database replication techniques
ISSN 1560-9189 Реєстрація, зберігання і обробка даних, 2007, Т. 9, № 2 87
ible to discuss it in much detail. Furthermore, there are still created new techniques and
algorithms of replication and these, which already exist, are still improved. Because of
that, this paper cannot be considered as a comprehensive study on replication issue, but
it only presents the main issues and problems related to database replication. Neverthe-
less these issues are quite universal and are connected with many much more advanced
and complicated cases.
1. Ciciani B., Dias D.M. Analysis of Replication in Distributed Database Systems // IEEE Transac-
tions on Knowledge and Data Engineering. — June, 1990. — Vol. 2, N 2.
2. Gray J.N., Helland P., O’Neil P., and Shasha D. The Dangers of Replication and a Solution //
Proc. of the 1996 International Conf. on Management of Data. — Montreal (Canada). — June, 1996.
3. Wiesmann M. Group Communications and Database Replication: Techniques, Issues and Per-
formance // Lausanne, EPFL. — 2002.
4. Carrey M.J., Livny M. Distributed Concurrency Control Performance: A Study of Algorithms,
Distribution, and Replication. — Los Angeles (California). — 1988.
5. Berenson H., Bernstein P. A Critique of ANSI SQL Isolation Levels. — San Jose, 1995.
6. Kemme B. Database Replication for Clusters of Workstations. — Swiss Federal Institute of
Technology (ETH). — Zurich, 2000.
7. Lin Y. Database Replication in Wide Area Networks. — 2005.
8. Wiesmann M., Pedone F., Schiper A., Kemme B., Alonso G. Database Replication Techniques: a
Three Parameter Classification. — Swiss Federal Institute of Technology (ETH). — Zurich, 2000.
Received 05.03.2007
Model and classification of database replication techniques
1. Introduction
2.1. Distributed database
2.2. Distributed transactions
3.1. Transaction propagation mode
3.1.1. Synchronous mode
3.1.2. Asynchronous mode
3.2. System architecture
3.2.1. Primary Copy
3.2.2. Update everywhere
3.3. Locking strategy
3.3.1. Pessimistic locking
3.3.2. Optimistic locking
3.3.3. Semi-optimistic locking
3.4. Server interaction
3.4.1. Constant interaction
3.4.2. Linear interaction
3.5. Transaction termination method
3.5.1. Voting techniques
3.5.2. Non-voting techniques
3.6. Correctness criterion
3.7. Platform diversity
3.7.1. Homogeneous replication
3.7.2. Heterogeneous replication
|