25.01.2015 Views

Cost-Based Optimization of Integration Flows - Datenbanken ...

Cost-Based Optimization of Integration Flows - Datenbanken ...

Cost-Based Optimization of Integration Flows - Datenbanken ...

SHOW MORE
SHOW LESS
  • No tags were found...

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

2 Preliminaries and Existing Techniques<br />

Message Broker [IBM10], MS Biztalk Server [Mic10], or Oracle SOA Suite [Ora10]. We<br />

generalize this widely-accepted 1 common architecture to a reference architecture for integration<br />

flows in order to survey existing work with regard to modeling, executing, and<br />

optimizing integration flows. Furthermore, this system architecture—which is illustrated<br />

in Figure 2.2—represents the foundation <strong>of</strong> this thesis from a system architecture perspective.<br />

In detail, two major components are relevant: (1) a modeling component for<br />

integration flow specification and (2) a runtime execution component that executes deployed<br />

integration flows.<br />

Modeling [Subsection 2.1.3]<br />

Flow<br />

Designer<br />

Flow<br />

External<br />

System<br />

External<br />

System<br />

External<br />

System<br />

Inbound<br />

Adapter 1<br />

...<br />

Inbound<br />

Adapter n<br />

sync<br />

async<br />

Plan<br />

Process Engine<br />

Scheduler<br />

Outbound<br />

Adapter 1<br />

...<br />

...<br />

Outbound<br />

Adapter k<br />

External<br />

System<br />

External<br />

System<br />

External<br />

System<br />

External<br />

System<br />

Temporary Datastore<br />

Execution [Subsection 2.1.4]<br />

Figure 2.2: Reference System Architecture for <strong>Integration</strong> <strong>Flows</strong><br />

The modeling component is used for specifying complex integration tasks by integration<br />

flows in the form <strong>of</strong> graphs or hierarchies <strong>of</strong> operators and edges. Typically, the<br />

configuration and administration <strong>of</strong> the execution environment is done via this modeling<br />

component as well. From a research perspective, we concentrate only on the specification<br />

<strong>of</strong> integration flows and discuss a classification as well as related approaches and languages<br />

in Subsection 2.1.3.<br />

The execution component consists <strong>of</strong> a set <strong>of</strong> inbound adapters, multiple message queues,<br />

an internal scheduler (for time-based integration flows), a central process execution engine,<br />

a set <strong>of</strong> outbound adapters, and a temporary data store (persistence <strong>of</strong> messages and<br />

configuration meta data). The inbound adapters listen for incoming messages, transform<br />

them into a common format (e.g., XML), and either append the messages to inbound<br />

queues (in case <strong>of</strong> asynchronous flow execution) or directly forward them to the process<br />

engine (in case <strong>of</strong> synchronous flow execution). Typically, those inbound adapters are<br />

realized as decoupled listener threads (e.g., a TCP Listener) or standard APIs (e.g., an<br />

HTTP implementation). Existing integration platforms provide many different technical<br />

and application-level adapters for domain-specific data exchange standards such as HL/7<br />

(Health Level 7) [hl707] or DICOM (Digital Imaging and Communications in Medicine)<br />

[dic09] and proprietary system APIs (e.g., SAP R/3). Within the process engine, compiled<br />

plans <strong>of</strong> deployed integration flows are executed. For this purpose, this engine includes<br />

a flow parser for the deployment <strong>of</strong> integration flows and a runtime environment for the<br />

1 There are plenty <strong>of</strong> existing application integration platforms. For a detailed survey <strong>of</strong> the major<br />

products, we refer the interested reader to a related study conducted by the market research organization<br />

Gartner [TSN + 08] and to a survey on SQL support in workflow products [VSRM08].<br />

8

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!