Data Replication with SQL Remote
PART 1. Introduction to SQL Remote
CHAPTER 2. SQL Remote Replication Concepts
Data replication is the sharing of data among physically distinct databases. Changes made to shared data at any one database are replicated to the other databases in the replication setup. The SQL Remote data replication system enables replication of data among Adaptive Server Anywhere or Adaptive Server Enterprise databases.
One of the key benefits of a data replication system is that data is made available locally, rather than through potentially expensive, less reliable, and slow connections to a single central database. Data is accessible locally even in the absence of any connection to a central server, so that you are not cut off from data in the event of a failure of a long-distance network connection.
Replication improves response times for data requests for two reasons. Requests are processed on a local server without accessing some wide area network, so that retrieval rates are faster. Also, local processing offloads work from a central database server so that competition for processor time is decreased.
Any replication technology must address several challenges that arise as a result of the increased flexibility permitted by replication.
One of the challenges of any replication system is to ensure that each database retains transactional integrity at all times. Today's replication systems, such as Sybase Replication Server and SQL Remote, replicate portions of the transaction log in such a way that transactions are replicated atomically: either a whole transaction is replicated, or none of it is replicated. This ensures transactional integrity at each database in the setup.
Another challenge to replication systems is to maintain data consistency throughout the setup. SQL Remote maintains a loose consistency in the setup as a whole: that is, all changes are replicated to each site over time in a consistent manner, but because of the time lag different sites may have different copies of data at any instant.
Sybase provides two replication technologies; SQL Remote and Replication Server.
SQL Remote is designed for two-way replication involving a consolidated data server and large numbers of remote databases, typically including many mobile databases. Administration and resource requirements at the remote sites are minimal, and a typical time lag between the consolidated and remote databases is on the order of hours.
Replication Server is designed for replication among relatively small numbers of data servers, with a typical time lag between primary data and replicate data of a few seconds, and generally with an administrator at each site.
SQL Remote is designed for replication installations with the following requirements:
Large numbers of databases SQL Remote is designed to support potentially large number of remote databases. It can support thousands of remote databases in a single installation.
Occasionally connected Remote databases that are occasionally connected or indirectly connected to the network on which the server is running.
High latency High latency means a long lag time between data being entered at one database and being replicated to each database in the installation. With SQL Remote, replication messages are sent typically at periods of hours or days.
Low volume As replication messages are delivered occasionally, high volume can lead to very large numbers of messages being sent. SQL Remote is best suited to systems with a relatively low volume of replicated data per database.
Homogeneous databases SQL Remote supports Adaptive Server Enterprise and Adaptive Server Anywhere databases. Each database in the system must have a very similar schema.
Replication Server is designed for replication installations with the following requirements:
Small numbers of databases Replication Server is designed to support replication among servers, with installations typically involving under one hundred servers.
Continuously connected Connections between primary sites and replicate sites may be over a wide area network, but Replication Server is designed for situations where there is a near-continuous connection path for data exchange among the servers in the installation.
Low latency Low latency means a short lag time between data being entered at one database and being replicated to each database in the installation. With Replication Server, replication messages are sent typically within seconds of being entered at a primary site.
High volume With near-continuous connections and high performance, Replication Server is designed for a high volume of replication messages.
Heterogeneous databases Replication Server supports several leading DBMS's, and allows mapping of object names during replication, so that support for heterogeneous databases is provided.
Sybase SQL Remote technology is provided in two forms:
SQL Remote for Adaptive Server Anywhere Enables replication between a consolidated Adaptive Server Anywhere database and a large number of remote databases.
SQL Remote for Adaptive Server Enterprise Enables replication between a consolidated Adaptive Server Enterprise database and a large number of remote databases.
This book describes both of these technologies.
In a SQL Remote installation, you must have properly licensed SQL Remote software at each participating database.