On Wednesday StreamBase announced version 6.6 at TradeTech in London. The focus of this new release of StreamBase reflects the growth of CEP and the fact that firms are developing applications with larger teams and extending participation to business users who want to work collaboratively with IT on CEP-based development. And, as always, our improvements aren’t all about what you see – we continue on our never-ending pursuit of optimization and analysis for high-performance, low-latency computing in the financial markets.
For StreamBase, a great developer experience results in a great company, so we take usability seriously. StreamBase already famously enables developers, quants, analysts, and traders to work together in one powerful “whiteboard programming” environment, and the latest version of StreamBase helps bring that vision one step closer to reality with StreamSQL EventFlow interfaces and extension points.
Interfaces and Extension Points define a specification for an extensible StreamBase module and containing application. Other team members or indeed business users that reside outside the purview of IT, can implement StreamBase logic independently according to the interface, and easily integrate that logic into the application.
- Interfaces in Version 6.6 provide the benefit of encapsulation and help users easily define a programming interface (inputs and outputs, and so on) that another developer can code to without knowing the underlying implementation.
- Extension points build on interfaces by defining a region where multiple StreamBase modules can drop in that match the same interface, and the code can decide to dispatch to any of these modules at runtime.
For example, interfaces and extension points make it easy for quants to design their own trading algorithms that then snap in to a highly tuned, scalable and bullet-proof trading infrastructure that aggregate high-speed feeds and execute trades quickly via low-latency connections to brokers. So, the high-speed, low latency parts of the application are built by IT, but traders can develop, customize, and evolve innovative trading algorithms by using interfaces and extension points.
StreamBase 6.6 doesn’t just make it easier for the enterprise to build CEP applications, it make it easier to test that what’s developed is correct. We have been adding unit testing features since Version 6.0, and in Version 6.6 sbunit is introduced – which is a new unit testing facility which extends and integrates with the standard Java-based JUnit system.
Using sbunit, developers can build test fixtures to backtest, performance test, force error conditions, and otherwise probe an application for bugs. These test fixtures can be shared with quants and analysts. By running sbunit tests automatically, teams can pinpoint when bugs are introduced, and keep projects moving.
StreamBase is well-known as the fastest CEP platform in the market – it is constant work to maintain that performance edge as customers require more features and the demands for microsecond-level latency increase. To help customers maximize throughput and minimize latency, 6.6 brings many new features around dispatching and concurrency. Applications can now specify per-stream data dispatch patterns, and integrate dispatch patterns with extension points, so that data is processed by only the modules that require it. To minimize latency, dispatch patterns do not require thread context switches. And the performance of data passing between StreamBase compute threads has been enhanced.
Finally, with all these improvements for our enterprise customers, we’ve also provided integrated support for our growing network of StreamBase developers with studio support for the StreamBase Component Exchange, SBX. SBX allows anyone using StreamBase to download open source components. The exchange includes adapters, algorithms, integrations, and utilities, all available on SBX website. Version 6.6 adds integration of SBX into the StreamBase Studio. SBX components form an extension of the standard StreamBase palette, saving work for developers and accelerating time to market.
For more information on these new features in StreamBase 6.6, read our new and noteworthy section of the StreamBase 6.6 documentation , or go ahead and try them for yourself by downloading StreamBase 6.6.