|
There are three basic types of replication that we discuss here:
Session Based, Message Based and Connection Based.
Session Based Replication
In a session-based replication scheme, synchronization occurs in
real time over some sort of direct communications link. For example,
the connection could be over a modem, network, or radio modem. Remote
sites connect at intervals of minutes, hours, days, or weeks.
A session-based synchronization process is analogous to a telephone
conversation in which all extant issues at both ends are resolved. The
process follows a particular format. An Asta SkySync remote site begins
by opening a connection to an Asta SkySync synchronization server and
uploading a complete list of all the changes made to the remote
database since the previous synchronization. Upon receiving this data,
the server updates the consolidated database, and then sends back all
relevant changes. The remote site incorporates the entire set of
changes, then sends back a confirmation and closes the connection.
Message Based Replication
Data is exchanged between databases using messages. Messages are
typically files, placed in a particular directory, or specially
formatted e-mail messages. A message agent, attached to each database,
sends messages regarding changes to its own data. The same agent also
receives messages from one or more other databases and modifies the
database, according to the contents of the received messages. This
system allows replication between databases that have no direct
connection: an occasional message-based connection such as e-mail or a
periodic dial-up link is sufficient.
In message-based communications, each message carries its
destination address and other control information, so that no direct
connection is needed between applications exchanging information. For
example, an e-mail message contains the destination address; there is
no direct connection between the sending server and the recipient.
Message services use store and forward methods. Just as
session-based client/server applications rely on network communication
protocol stacks, such as TCP/IP, so message-based applications rely on
message services such as Internet Simple Mail Transfer Protocol (SMTP)
or a simple shared file link. Message services use store-and-forward
methods to get each message to its destination: for example, e-mail
systems store messages until the recipient opens their mail folder to
read their mail, at which time the e-mail system forwards the message.
Building a replication system on top of a message system means that
a message-based replication system does not need to implement a
store-and-forward system to get messages to their destination.
To work reliably, a message-based system must both guarantee that
all messages reach their destination and that the messages are applied
in the same order that they are sent.
Connection Based Replication
Some replication technologies rely on the presence of a continuous,
or at least almost continuous, connection between the databases.
Through this connection, the two databases conduct an ongoing dialogue.
These types of systems excel at replicating changes quickly. Indeed,
given sufficient resources and channel capacity, replication can occur
reliably with a lag time of no more than a few seconds. These systems
should incorporate store-and-forward techniques that allow replication
to continue automatically if a connection is lost and later
re-established.
The main drawback of this type of system is that a reliable,
continuous connection can be expensive to maintain. This restriction
makes connection-based technologies suited to replication between two
large, fixed databases. In environments where the remote machines are
mobile or are only occasionally connected, message-based or
session-based technologies provide more flexible solutions.
Asta SkySync uses of Connection Based Replication
|