The latest version of Apama Community Edition has arrived bringing many improvements including new connectivity options, enhancements to EPL and support for additional platforms.
Apama Community Edition core components
The Apama Community Edition core components form a lightweight Apama package that makes it easy to create re-distributable projects based on Apama. The core components do not include any of the commercial third party components that would restrict your freedom to include the Apama Streaming Analytics engine in your own re-distributable projects. The core components are effectively just the Apama correlator and the command-line utilities that complement it. The package does not include the Eclipse-based development environment, the dashboarding components or the database adapters. This keeps the package compact and ideal for deploying via container technologies such as Docker.
The Apama Community Edition core components were also released for 9.10 just before the launch of the version for 9.12.
As well as supporting Intel processors, there is a version of the core components that is compatible with ARM v7 processors allowing you to use Apama on the Raspberry Pi 2 and 3.
The core components are accompanied by an Apama plug-in that allows you to communicate with a Raspberry Pi’s GPIO ports from EPL. You can create Raspberry Pi projects that make use of the GPIO ports by responding to incoming events from sensors and sending output events to control connected components such as motors.
Connectivity plug-in enhancements
Apama’s connectivity plug-ins provide a flexible framework for integrating Apama with the outside world. In this version a wide-ranging set of connectivity plug-in enhancements focus on usability to help make developing your connectivity plug-ins significantly easier:
- Spread your connectivity plug-in configuration across multiple .yaml files
- Specify a folder that contains your .yaml and .properties files
- Configuration can include substitutions specified in .properties files or via the command-line
- Connectivity chains can be dynamically created from EPL as well as statically from your configuration files
- Testing is made easier with the inclusion of the UnitTestHarness codec and NullTransport transport which allow you to pass test messages into a connectivity chain and write out received messages to a text file without incorporating any EPL
- Diagnostic codec logs events as they pass through a connectivity chain helping you diagnose any problems
- Mapper codec allows you to specify defaults values to use if a field in the incoming event is missing
Apama queries enhancements
Apama queries provide you with a powerful mechanism, optionally using a business analyst-friendly UI, to define patterns of incoming events to look for and the actions to perform when the patterns are found.
In this release Apama queries have been enhanced to allow you to use the result of an action on an incoming event as one of the query’s partition keys.
EPL optional type
Apama’s event-based programming language, EPL, provides you with a purpose-built high level language for creating your streaming analytics applications.
This latest version of Apama includes an optional type in EPL. An optional can be either a value of a specified EPL type (e.g. a string value of “Apama”) or empty and have no value. This type can be useful when mapping to null values in Java or for event fields that are missing a value.
The new ifpresent statement helps you check if an optional value is empty.
Other EPL improvements
The string type now supports searching and replacing using regular expressions using the new methods matches, search and replace.
The decimal type is now supported by:
- Data views, allowing decimal types to be displayed in Scenario Browser
- C and C++ plug-ins, where they map to a uint64
- Java plug-ins, where they map to a Number (or BigDecimal for compatibility)
- MemoryStore, you can cache decimal type data that is accessible from multiple contexts in the same correlator
Correlator utility enhancements
Apama applications can be configured during startup using .yaml files. This can help you deploy Apama in a container environment , such as Docker, where it is not possible to run Java tools to startup your application.
9.12 full commercial edition
In addition to the above new features in Apama Community Edition, the full commercial edition of Apama 9.12 also includes advanced integration with other Software AG products, new Web-based management and monitoring capabilities from Command Central, and additional support for Capital Markets. Please refer to the release notes for the complete set of new features in Apama 9.12.
Find out more
Apama 9.12 Community Edition is available now for you to download. More information about the new capabilities mentioned here and the numerous other smaller improvements is described in the release notes and product documentation available with the downloads.
The Software AG Apama team is extremely proud of this new version. Please give Apama 9.12 a try and let us know how you get on!
– Rob Jones