Skip to content

dalelane/ibm-ace-avrodeserialize

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

IBM App Connect Enterprise Compute node for parsing Apache Avro data

Overview

msgflow screenshot

Sample compute node implementation for processing Kafka messages that have been serialized using Apache Avro schemas from a schema registry.

It turns json-encoded or binary-encoded Avro data into a JSON object that can be processed using standard native App Connect transformation nodes. This can be used with messages that contain schema IDs in message headers, or with schema IDs in the message payload.

Contents

Details

msgflow screenshot

input terminal format details
input BLOB serialized message data retrieved by a KafkaConsumer node
output terminal format details
out JSON JSON object deserialized using an Apache Avro schema
alt BLOB messages that could not be deserialized*

Possible reasons for messages not being de-serializable:

  • Schema has been deleted from the Schema Registry since the message was produced to the Kafka topic
  • Schema Registry is not currently available
  • Invalid schema registry credentials provided in the config policy

Dependencies

Configuration

The compute node has a run-time dependency on a policy for providing the configuration information about the Avro schema registry to use.

A sample policy is provided and needs to be deployed with any message flows using this compute node.

Jars

The compute node implementation has compile and run-time dependencies on the following jars. See the IBM App Connect Enterprise documentation on Adding Java code dependencies for guidance on how to do this.

Schema Registry

The compute node implementation is based on schemas from an Apicurio Schema Registry, such as the registry that is included with IBM Event Streams or run as a stand-alone open source registry.

It can be simply modified to support the use of other schema registries - comments in the Java compute node code identify where these changes are needed.

Background

https://dalelane.co.uk/blog/?p=4518

About

Sample IBM App Connect Enterprise Compute node for parsing Apache Avro data

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages