Adapters and Integration

In practice, every real-world CEP application requires integration with some form of existing middleware, applications or stored data. The flexible architecture of the Coral8 Engine provides easy integration with existing data, applications, and middleware, with an eye to maximizing application performance.

Input/Output Adapters

Input/Output adapters enable rapid integration with event data streams and sources, and the ability to deliver CEP event results to applications or user interfaces. The Coral8 Engine offers two mechanisms to run input/output adapters: out-of-process for flexible, network-based deployments, and in-process for low-latency environments.

The current list of available Coral8 input/ouptut adapters include:

  • TIBCO Rendezvous
  • JMS (includes TIBCO EMS)
  • IBM WebSphere MQ
  • Microsoft MQ
  • Reuters RMDS
  • Microsoft Excel RTD
  • Web Server Log
  • Windows Event Log
  • SNMP
  • Ganglia
  • Data Replay from Database
  • File (CSV, XML, Binary, Regular Expression)
  • Database Read/Write
  • E-mail
  • ATOM
  • RSS
  • XML over HTTP
  • Socket (CSV, XML, Binary)

The following input/output adapters are available from Coral8 partners:

  • Wombat MAMA
  • Tealeaf CX
  • Radware Inflight
  • RTI DDS
  • IBM RFID Information Center

Database Adapters

Most real-world CEP applications require the use of databases for reference, historical and execution data to provide proper business context of events. Coral8 offers a suite of database adapters that take full advantage of the unique transparent data caching, and asynchronous data write services in the Coral8 Engine, and the database sub-query features of Coral8 CCL.

Coral8 offers database adapters for the following data sources:

  • Oracle
  • Kx Systems kdb+
  • ODBC, which supports:
    • Microsoft SQL Server
    • Sybase ASE
    • IBM DB2
    • ANTs data server
    • MySQL
    • MaxDB
    • Any ODBC data source

RFC/RPC Plug-ins

RFC/RPC plug-ins provide a flexible means for developers to extend the data integration capabilities of the Coral8 Server. The RFC/RPC feature allows CCL statements to execute a function or procedure that is running outside the Coral8 Server process, for easy, inline integration of this remote data into the CEP application.

The RPC plug-in calls the remote procedure, typically using Simple Object Access Protocol (SOAP), HTTP, or another protocol. The plug-in takes information from the CCL statement and passes the information to the remote procedure, receives results and makes these available to the CCL statement.

The RFC/RPC plug-ins automatically take advantage of the Coral8 server data caching feature to reduce external calls for existing data and maintain high performance.

SDK

And finally, if you need to write your own adapters, the Coral8 adapter SDK gives developers an easy means to create custom adapters for new data streams or applications in a matter of hours. The SDK allows you to write custom adapters in the following languages, interfaces and toolkits:

  • C/C++
  • Java
  • .Net (C#, VB.NET)
  • Perl
  • Python