The rythmer bolt emits messages according to a provided timestamp. It can be used to replay some data in a way to reproduce a given time sequence, for example the one that was observed when the data was first received in a PunchPlatform topology.
In order to reproduce the same time pacing between subsequent message, the RytmerBolt uses a busy wait loop. It uses a single thread. It replays 1000 events per seconds with an error of less than 10%.
Note that the RythmerBolt expects to received tuple sorted in time. If you need to replay some data, make sure you get an ordered list. This can easily be achieved by preparing your data and make it available in a file or in a Kafka topic for example.
Streams And fields¶
The rythmer bolt is a proxy bolt, it emits tuples over the same stream than the input stream. Make sure you properly configure its storm settings configuration.
timestamp_field: String : timestamp
the storm field where the input timestamp is expected
threshold: Integer : 0
the number of input tuple required before starting the replay
date_formatString : "yyyy-MM-dd hh:mm:ss.SSSS"
the expected timestamp format