Normal Silhouette Operation [ Silhouette Reference Manual ] MPE/iX 5.0 Documentation
Silhouette Reference Manual
Normal Silhouette Operation
Silhouette sends the information from a logfile on a primary system to a
duplicate logfile on the secondary system(s). Figure 3-1 shows the path
Silhouette uses to transport records from the logfile on the primary
system to the logfile and duplicated database on the secondary system.
Silhouette is transparent to users and only the Operator who started the
duplicating process is aware of its operation.
Figure 3-1. The Silhouette Data Path
As shown in Figure 3-1 the user application program maintains a database
that has been enabled for logging. When Silhouette is operating the
following events occur:
* Transactions which alter the contents of the primary database are
automatically logged (written) to the primary logfile.
* These records are read by the Silhouette primary system Communication
Process (CP).
* The CP sends the records over the communication line to the
Silhouette Secondary Communication Process (SP) on the secondary
system.
* The SP passes the records to the Silhouette Recovery Process (RP) on
the secondary system.
* The RP posts these records to the duplicate logfile, SAVE file, and
the duplicate database maintained on the secondary system.
* Users on the secondary system can then access (for inquiry purposes
only) the records in the duplicated database.
Figure 3-2 shows the normal path Silhouette data follows once the records
are written to the logfile on the primary system.
___________________________________________________________
| |
| Primary Logfile |
| | |
| |-->Communication Process (CP) |
| | |
| |-->Communication Line |
| | |
| |-->Secondary Communication Process (SP)|
| | |
| |-->Recovery Process (RP) |
| | |
| |-->Secondary Logfile |
| |-->Duplicated Database |
___________________________________________________________
Figure 3-2. Silhouette Data Flow
This data flow illustrates the primary purpose of Silhouette which is to
maintain an up-to-date duplicate copy of the primary logfile on the
secondary system(s). For Silhouette to be effective, data must be
transmitted over this path with both speed and reliability.
Speed
Silhouette maintains an up-to-date duplicate copy of the primary logfile
on the secondary system. Therefore, it must be very efficient in its
data transfer methods. The Communication Process (CP) regularly checks
the primary logfile to determine if it has received any new records. The
CP buffers any records it finds and then transports a block of records at
a time to the Secondary Communication Process (SP). This transport
facility does not wait for the buffer to fill. At the required time
interval (specified by the WAIT = keyword in the configuration file) the
CP transports all the records it has collected.
This data transport design ensures that operation of the Silhouette
program has little impact on the performance of the primary system since
the CP is efficiently reading and transmitting records.
Reliability
Silhouette is designed so the Communication Process (CP) can determine if
the data it has sent has been received correctly. The Secondary
Communication Process (SP) informs the CP on the primary system that it
has received the data correctly. Both the CP and the SP use sequential
record numbers to verify that all records have been sent.
If the SP on the secondary system cannot reply to the CP on the primary
system, the CP transmits the same data again. If the SP is now able to
receive the data and reply the SP discards any information it may have
received with the same record numbers (but was not able to inform the CP
about). This allows the SP on the secondary system to determine if it
successfully informed the CP on the primary system that data was received
correctly.
As a further reliability measure, the SP on the secondary system passes
the data to the Recovery Process (RP). Silhouette uses two processes on
the secondary system since the SP is vulnerable to communication line
failures. It is possible that a line failure could cause the SP to be
aborted by the MPE operating system on the secondary machine. If this
happened while the SP was updating the duplicate logfile, data could be
lost. The design of the CP to SP link guarantees that all records are
passed to the RP before the SP reports back to the CP. In this way, if
the communications line fails and the SP aborts, no data is lost. The SP
is an extension of the CP but resident on the secondary system.
Heartbeats
The design of the transport mechanism includes a heartbeat status request
sent by the Communication Process (CP) on the primary system to the
Recovery Process (RP) on the secondary system. This heartbeat allows the
CP to determine if the RP on the secondary system is still operating and
obtain information on its current status. For example, the RP informs
the CP via the heartbeat that the secondary database has been released
for backup.
The RP also expects to be asked for a heartbeat status which it uses to
determine if the CP is still operating. If either process misses a
heartbeat, the other process informs the Silhouette Operator. If both
processes are still active but the communications link is broken, both
processes miss heartbeats and both inform their respective Silhouette
Operators that something is wrong with the duplication process.
Silhouette software is self-monitoring and causes action to be taken when
the software detects that transport is no longer occurring.
MPE/iX 5.0 Documentation