OGSA-DAI Trigger
The OGSA-DAI Trigger component provides a mechanism to notify an OGSA-DAI server when a table in an SQL database has had its rows modified. It then executes a stored OGSA-DAI workflow to perform an action based on the notification. The trigger also provides the old and new values for the modified row which allows specific actions to be taken based on the exact database changes. These actions can use the full range of access, transformation and delivery functionality available in OGSA-DAI.
Download
Download the component from here.
Usage Scenario
One possible use of this component is to keep two different databases in sync. In a simple replication scenario with 2 identical databases a vendor-specific solution will solve almost all your problems. However, often in the modern business world different systems have to be brought together to inter-operate.
For example, say company A and company B wish to share customer address information. Company A stores their customer information in a MySQL database, whilst company B are using Informix. In addition, the schema used in each company differs. To keep the address information in sync, A and B must either input the same information twice (potentially introducing errors) or link the databases together somehow.
By using the OGSA-DAI Trigger component, company A can automatically trigger an update on B's database when A's database is changed and vice-versa. This can be achieved without altering the existing mechanisms within the organisations. The change gets picked up as it enters the database and is replicated on the remote database by way of an OGSA-DAI workflow.
There is a large degree of flexibility in the component as it allows any OGSA-DAI workflow composed of database operations, transformations and different delivery mechanisms to be executed. The component therefore has scope to execute a whole range of activities in response to a change in a database and can be used for many other scenarios, not just data replication.
Further Information
Further information on the component, including its architecture and dependencies is available here.










