Implementing the architecture

With the design in place, we can turn our attention to the implementation. The sequence diagram for the implementation is shown as follows:

Implementing the architecture

The preceding diagram implements the state machine shown in the design. Once the real-time server is started, Druid polls the StormFirehose object using the hasMore() method. The contract with Druid specifies that the Firehose object's implementation should block until data is available. While Druid is polling and the Firehose object is blocking, Storm delivers tuples into the DruidState object's message buffer. When the batch is complete, Storm calls the commit() method on the ...

Get Storm Blueprints: Patterns for Distributed Real-time Computation now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.