Message oriented technologies are an essential component of enterprise wide business operations. Messaging products allow heterogeneous applications to inter-operate across an enterprise by providing a form of loosely coupled distributed communication. Java Message Service (JMS) is an integral part of Java 2 Enterprise Edition (J2EE). JMS provides a standard interface for Java applications to create, send, receive, and read an enterprise messaging system’s messages.
Most enterprises build custom JMS applications to read messages from a JMS Queue and update a database table using information stored in the message. However, most applications are built for a specific table with specific types of updates such as insert, delete, and, update.
The initial request to develop this solution was to satisfy customer requirements to integrate JMS with Teradata. The requirement reflected a desire to load data sourced from JMS messages into Teradata tables. To satisfy this requirement, the Teradata JMS Universal Connector was developed.
Teradata JMS Universal Connector is a J2EE application that executes in a Web Server. The Loader component receives messages from a JMS Queue or JMS Topic and processes the message payload according to user specified message properties. Any JMS client application could propagate updates to Teradata by sending messages to any JMS Queue or Topic. JMS Universal Connector uses JDBC and standard SQL to achieve near-real time updates to the Data Warehouse. The Extractor component allows users to consume data from a Teradata Queue Table and publish the data to any JMS Queue or JMS Topic.
The diagram below depicts the Teradata JMS Universal Connector architecture.