Frext architecture

In short, this is how Frext works: a change on the master database is recorded in a log table, an agent converts the change into a file message. An agent from the remote database picks up this file and executes SQL commands against the remote database, thus replicating the data change.

Description

Described is a complete replication cycle between two databases.
  • (On the sending database)
  • Recording. A operation, e.g. insert, update or delete is recorded in the Frext transaction log
  • Generating messages. An agent scans the transaction log for non replicated changes and produces messages in the Frext message table
  • Writing messages to files. Each message containing a change or group of changes (transaction) is converted to a file by the agent; the file contains all information for compiling SQL commands (but without containing the actual SQL command)
  • File(s) is transported (copied) to the remote location
  • (On the receiving or remote database)
  • Importing messages files. The agent for the remote database reads the message file(s) into the database
  • Applying messages. Every message will be applied, i.e. the agent compiles SQL commands; SQL commands are executed against the remote databases, thus replicating the data change enforced the the master database
  • Writing confirmations. After applying, a conformation message is written; this is transported back to the receiver and read in by the receiver
  • File(s) is transported (copied) to the sender location
  • (On the sending database)
  • Read confirmations.
  • Apply confirmations.