- StreamBase LiveView
- StreamBase CEP
- StreamBase Adapters
- Use Cases
- News & Events
The StreamBase Server, the run-time engine of the StreamBase Event Processing Platform, is an ultra low-latency application server optimized for processing real-time streaming event data at throughput rates of 10s of thousands of messages/second up to 500,000+ messages/second or more on multi-core CPU hardware.
The Server’s multi-threaded architecture runs in 64-bit operating systems, takes full advantage of multi-core CPUs, scales readily across blades and clusters, and offers enterprise-class resilience (high availability) and security options.
The StreamBase Server achieves factors of 5-10x faster performance than other systems by utilizing our patent-pending second generation Dynamic Stream CompilerTM technology. Using this innovative technology, the StreamBase Server compiles multiple StreamSQL queries at run-time into single, highly efficient execution units, and then executes the compiled application at ultra low latency. It also offers fine-grained parallelism controls to optimize message throughput and application scalability.
Whether you’re dealing with high-volume data from low-latency financial market feeds, intelligence networks, or distributed message-based systems, StreamBase’s enterprise-class server can process, analyze, and act on fast-moving data instantly upon arrival.
To learn more and test-drive StreamBase, download the StreamBase Developer Edition.
StreamBase’s server is distinguished by the following core capabilities.
StreamBase has been benchmarked processing data at rates of more than 500,000 messages/second on a single processor, with the capacity of scaling to process millions of messages/second on multi-processor systems. This superior performance enables you to run StreamBase applications with a fraction of the hardware and administrative resources of competitive systems and ensures headroom to support future growth as data volumes continue growing.
Deterministic, Predictable Processing
The StreamBase Server uses an innovative compilation technology that translates high-level StreamBase specifications into low-level highly-optimized code. This compilation-based approach ensures correct, deterministic execution even during parallel operation on multiple processors, while achieving extraordinary performance.
Embedded Persistence and Storage
Since many complex event processing tasks require accessing historical data or maintaining intermediate “scratch pad” information, StreamBase offers a rich set of storage options so that application developers retain fine-grained control over performance and capacity trade-offs. These options for dealing with stored data include: in-memory tables optimized for extremely fast access, an embedded disk-resident database offering high-capacity disk storage without the latency delays of a process switch, JDBC access to external databases or data stores.
Scalability Up and Out
StreamBase is designed to scale up from a single-CPU implementation to a large distributed multi-server deployment. Support for 64-bit machines enables you to make maximum use of your system resources – including increased memory sizes. This is key for the near-zero latency demands of streaming applications, which often require that data be stored in memory rather than on disk. The StreamBase Server’s multi-threaded architecture also provides optimal performance on symmetric multi-processing machines and multi-core processors as additional CPUs are added.
For even higher scalability, and handling of unpredictable peak loads, StreamBase processing may be distributed to a cluster of machines across a fast local-area network or even more widely distributed (for higher availability). StreamBase provides users with tools for capacity planning and configuring multiple servers.
To preserve the integrity of mission-critical information and to avoid disruptions in real-time processing, StreamBase uses a high-availability (HA) solution. The solution is based on a standard process-pairs approach in which two servers, a primary and a secondary, operate as a processing pair. The primary houses the live execution, and the secondary houses a backup process that accumulates enough information, through a novel light-weight checkpointing and synchronization approach, to be able to pick up execution without gaps in the production of results, should the primary fail. In this way, failover is transparent to the client applications whose input comes from StreamBase or whose output goes to StreamBase.
StreamBase runs on off-the-shelf hardware and common operating systems including Linux, Windows, or Solaris.