Component Information for the iWay Log Event Adapter for Microsoft SQL Server

In this section:

The iWay Log Event Adapter for Microsoft SQL Server (MS SQL) works in conjunction with the following components:


Top of page

x
iWay Service Manager

iWay Service Manager is the heart of the Universal Adapter Framework and is an open transport service bus. Service Manager uses graphical tools to create sophisticated integration services without writing custom integration code by:

Its capability to manage complex adapter interactions makes it ideally suited to be the foundation of a service-oriented architecture.


Top of page

x
Log Event Adapter

The Log Event Adapter (a DOT NET application) uses the ApexSQL Log API, which captures the changed data by reading transaction records directly from the transaction log files. The following types of operations are captured by the adapter:

The Log Event Adapter starts capturing transactions from the transaction log and processes all transactions sequentially. Upon initial startup, the adapter captures data at the Last Sequence Number (LSN). On subsequent attempts to capture data, the adapter will restart at the point in the transaction logs where data capture was stopped during the previous cycle. Data capture does not go backwards in time through the transaction logs to capture the history of the table or perform random seeking in the transaction logs. The Log Event Adapter returns the transactions in XML format as output.

Sample XML Request Schema:

<?xml version="1.0" encoding="UTF-8" ?> 
<!--   Generated by the iBSE 2010-09-29T19:12:30Z  --> 
<xs:schema targetNamespace="urn:iwaysoftware:ibse:jul2003:executeLEA" xmlns:tns="urn:iwaysoftware:ibse:jul2003:executeLEA" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="executeLEA">
<xs:complexType>
<xs:sequence>
  <xs:element name="servername" type="xs:string" minOccurs="0" maxOccurs="unbounded" /> 
  <xs:element name="database" type="xs:string" minOccurs="0" maxOccurs="unbounded" /> 
  <xs:element name="user" type="xs:string" minOccurs="0" maxOccurs="unbounded" /> 
  <xs:element name="password" type="xs:string" minOccurs="0" maxOccurs="unbounded" /> 
  <xs:element name="ntauth" type="xs:boolean" minOccurs="0" maxOccurs="unbounded" /> 
  <xs:element name="productKey" type="xs:string" minOccurs="0" maxOccurs="unbounded" /> 
  <xs:element name="logEnabled" type="xs:boolean" minOccurs="0" maxOccurs="unbounded" /> 
  <xs:element name="logFileFormat" type="xs:string" minOccurs="0" maxOccurs="unbounded" /> 
  <xs:element name="logFolder" type="xs:string" minOccurs="0" maxOccurs="unbounded" /> 
  <xs:element name="maxLogSize" type="xs:int" minOccurs="0" maxOccurs="unbounded" /> 
  <xs:element name="maxNumberOfLogBackups" type="xs:int" minOccurs="0" maxOccurs="unbounded" /> 
  <xs:element name="numRequestedOperations" type="xs:int" minOccurs="0" maxOccurs="unbounded" /> 
  <xs:element name="tables" type="xs:string" minOccurs="0" maxOccurs="unbounded" /> 
  <xs:element name="markerFile" type="xs:string" minOccurs="0" maxOccurs="unbounded" /> 
  </xs:sequence>
  <xs:attribute name="location" use="optional" fixed="/iwsqlsrvlogevent.dll/SqlTransaction.SqlTransaction/executeLEA(Sys
tem.String,System.String,System.String,System.String,System.Boolean,Syste
m.String,System.Boolean,System.String,System.String,System.Int32,System.I
nt32,System.Int32,System.String,System.String)" /> 
  </xs:complexType>
  </xs:element>
  </xs:schema>

Sample XML Response Schema:

<?xml version="1.0" encoding="UTF-8" ?> 
<!--**********************************************************************************************************
LOG EVENT ADAPTER MODEL SCHEMA
DATE:  8/31/2010 4:33 PM
********************************************************************************************************** --> 
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:simpleType name="operations">
<xs:restriction base="xs:string">
  <xs:enumeration value="DELETE" /> 
  <xs:enumeration value="INSERT" /> 
  <xs:enumeration value="UPDATE" /> 
  <xs:enumeration value="DDL" /> 
  </xs:restriction>
  </xs:simpleType>
<xs:simpleType name="bvalue">
<xs:restriction base="xs:string">
  <xs:pattern value="[Tt][Rr][Uu][Ee]" /> 
  <xs:pattern value="[Ff][Aa][Ll][Ss][Ee]" /> 
  </xs:restriction>
  </xs:simpleType>
<xs:element name="response">
<xs:complexType>
<xs:sequence>
  <xs:element ref="transaction" minOccurs="0" maxOccurs="unbounded" /> 
  </xs:sequence>
  <xs:attribute name="productversion" use="optional" /> 
  </xs:complexType>
  </xs:element>
<xs:element name="transaction">
<xs:complexType>
<xs:sequence>
<xs:element name="column" maxOccurs="unbounded">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:string">
  <xs:attribute name="name" type="xs:string" use="required" /> 
  <xs:attribute name="type" type="xs:string" use="required" /> 
  <xs:attribute name="key" type="bvalue" use="optional" /> 
<xs:attribute name="updatemode" use="optional">
<xs:simpleType>
<xs:restriction base="xs:string">
  <xs:enumeration value="before" /> 
  <xs:enumeration value="after" /> 
  </xs:restriction>
  </xs:simpleType>
  </xs:attribute>
  <xs:attribute name="nullval" type="xs:string" use="optional" /> 
  <xs:attribute name="encode" type="xs:string" use="optional" /> 
  </xs:extension>
  </xs:simpleContent>
  </xs:complexType>
  </xs:element>
  </xs:sequence>
  <xs:attribute name="type" type="operations" use="required" /> 
  <xs:attribute name="table" type="xs:string" use="required" /> 
  <xs:attribute name="transactionid" use="required" /> 
  <xs:attribute name="timestamp" use="required" /> 
  <xs:attribute name="lsn" use="required" /> 
  <xs:attribute name="database" use="required" /> 
  </xs:complexType>
  </xs:element>
  </xs:schema>

Top of page

x
iWay CDC SQL Batch Agent

The iWay CDC SQL Batch Agent (XDCDCSQLBatchAgent) is a component of an iWay Service Manager (iSM) channel. This agent executes the incoming DML statements onto the destination database. For more information, see Configuring the iWay CDC SQL Batch Agent.


iWay Software