UtilityServices :: DBReplication - Replication Server
The ODABA replication server allows running databases on an internet server. Thus, clients distributed all over the world may access the same ODABA database.
Replication server access is transaction based and works on a local copy (replicate) of the master database. Replication server is the preferred access mode for distributed clients in the internet. In this case, the server must run on an internet server, which is known to the clients.
Since reading data happens with local access speed, replication server access is fast as long as update load is low. Long transaction or frequent updates (more than 10 transactions per second and user) may cause delay, since the replication server will serialize update requests from different clients.
Updates are sent to the clients when starting up a client. Running clients receive a dirty flag, which causes the client synchronizing its local database when executing the next database function. While synchronizing (receiving latest transaction data), appropriate update events are sent to registered property handles.
For running a database as replication database, it must be enabled as such. A database runs either in RDB mode or not, i.e one cannot run the same database in local and RDB mode at the same time. One may, however, send ODABA Server requests to an replication server. Running an application configured for local access to a replication database, the user is ask to stop replication server connection and use the database locally. In order to switch back to replication server access, the local database has to be renamed or deleted.
Replication databases do have some limitations, which will be removed in later versions.
PIF - Replication server do not support Plattform independent data format. Replication databases require compatible hardware on client and server side, i.e. both, client and server must be high-endean, or both must be low Endean machines.
Database object spaces - Replication databases do not support multiple database object spaces in this version, i.e. the database must consist only of the root object space (or other sub-database object spaces are not of interest).
Versions - Replication servers do provide data for the current version, only, i.e. one may not access older versions via the server. This is not really a problem, since usually older versions are already present on the client database. It means, however, that the master database must completely be copied, when versioning has been made.