Apama 4.2 release - Cruising in the fast lane
Posted by The Progress Guys
The current v4.2 release, the third in the v4.x family adds significant enhancements in three concurrent themes - Performance, Productivity and Integration. This consistent thematic model is one we've held for a number of years. Below I've touched upon the highlights of the current release along these themes:
- Performance
High Performance Parallelism for Developers. The Apama Event Processing Language (EPL) provides a set of features
uniquely suited to build scalable event-driven applications. The
language natively offers capabilities for event handling, correlating
event streams, pattern matching and defining temporal logic, etc. Equally
important, the language provides a flexible means to process events in
parallel. For this we provide a context model and a new high performance scheduler.
Contexts can be thought of as silos of execution, where CEP
applications run in parallel. The scheduler's role is to manage the
runtime execution in an intelligent high-performance way, and
to leverage the underlying operating system threading model. It’s
via
the context architecture that the Apama Correlator squeezes the most
out of operating system threads to achieve maximum use of multi-core
processors for massive vertical scalability. For IT developers,
this is a effective and efficient means to build high performance, low
latency CEP applications without the pitfalls of thread-based
programming, such as deadlocks and race conditions.
High Performance Parallelism for Business Analysts.
Not to be left out of the race, we've also ensured the scalable
parallelism provided in the Apama CEP engine is available through our
graphical modeling tool, the Event Modeler. We've had this graphical
modeling capability since the very first release of Apama. This
tool designed for analysts, quantitative researchers and of
course developers, allows you to design and build complete CEP
applications is a graphical model. Parallelism is as easy as an
automatic transmission, simply select P for parallel.
- Productivity
Real men do use Debuggers (and Profilers too). The Apama Studio now sports major new functionality for development, a source level debugger and a production profiler. Building applications for an event-driven world presents new programming challenges. Having state-of-the-art development tools for this paradigm is a mandate. The Apama EPL is the right language for building event-driven applications - now we have a source-level debugger designed for this event paradigm. Available in the Eclipse-based Apama Studio it provides breakpoints to suspend applications at specific points, examine contents of program variables and single stepping. It works in concert with our parallelism as well. Profiling is a means to examine deployed Apama applications to identify possible bottlenecks in CPU usage.
Jamming with Java. We've enhanced our support for Java for building CEP applications. The Apama Studio includes a complete set of wizards for creating monitors, listeners, and events to improve the development process when building java-based CEP applications in Apama.
- Integration
The (relational) world plays the event game.
While we have provided connectivity to relational databases for many
years we've made a significant re-design in the architecture of how we
do it with the new Apama Database Connector (ADBC). The ADBC provides a
universal interface to any database and includes standard connectors to
ODBC and JDBC. Through the ADBC, Apama applications can store and
retrieve data in standard database formats using general database
queries, effectively turning these relational engines into timeseries
databases. The data can be used for application enrichment and playback
purposes. To manage playback the Apama Studio includes a new Data Player
that enables back-testing and event playback from a range of data
sources via the ADBC. One can replay at varying speeds event data and
time itself. The tested CEP applications behaves temporally consistent even as data is replayed at lightening speed.
Cruising at memory speed with MemoryStore. The
MemoryStore is a massively scalable in-memory caching facility with
in-built navigation, persistence and visualization
functionality. This allows CEP applications, which typically
scan, correlate and discard data very quickly to retain selected
portions in memory for later access at extreme speed. This could be for
managing a financial Order Book, Payments or other data elements that
the application needs to be able to access at user’s requests
quickly. Furthermore, if required the in-memory image can be persisted
to a relational database for recovery or other retrieval purposes, and
lastly the MemoryStore allows selected portions of the in-memory cache
to be automatically mapped to dashboards.
Well that's the highlights. There were also about a dozen other features within each of these three themes, just too numerous to mention.
We are committed to improving the Apama product by listening to our many customers, paying close attention to the ever-changing competitive landscape and researching new opportunities.
Again thanks for reading, you can also follow me at twitter, here.
Louie
Comments