Question

I have a set of messages which each have an arrival timestamp. I would like to analyze the set and determine the periodicities of the messages' arrival. (Having that, I can then detect with some degree of certainty, when subsequent messages are late or missing.) So a discrete Fourier transform seems the logical choice to pull the frequency(ies) from the set.

However, all the explanations of discrete Fourier transforms which I've seen, start from a finite set of values sampled at a constant frequency. Whereas what I have is simply a set of values (monotonically increasing timestamp values.)

Convert to time series data?

I've thought of selecting a small resolution -- e.g. one second -- and then producing a time series beginning at the time of the first message, through the current real time, and a corresponding value of (0,1) at each of those time points. (Mostly zeros, with ones at the arrival time of each message.)

More specifics

I have many sets: I need to perform this calculation many times as I have many different sets of messages to analyze. Each set of messages might be on the order of 1,000 messages spanning up to a year of real time. So if I converted, (as I'm thinking above,) one set of messages into a time series; that's ~32 million (seconds in a year) time series data points, with only ~1,000 non-zero values.

Some of the message sets are more frequent: ~5,000 message over the scale of days -- so that would be more like ~400,000 time series data points, but still with only ~5,000 non-zero values.

Is this sane (convert arrival times to a time series and then head for plain FFT work)? Or is there a different way to apply Fourier transforms to my actual data (message arrival times)?

Was it helpful?

Solution

I suggest that you bin the message counts into evenly-spaced bins of a suitable duration, and then treat these bins as a time series and generate a spectrum from the series, using e.g. an FFT-based method. The resulting spectrum should show any periodicities as peaks around particular bin frequencies.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top