| CPC G06F 16/24568 (2019.01) [G06F 16/2246 (2019.01); G06F 16/2477 (2019.01); G06F 16/25 (2019.01)] | 20 Claims |

|
1. A method comprising:
receiving a time series of radio data;
for each of a plurality of buffer periods, at the end of a most recently elapsed buffer period, analysing the radio data of that buffer period to detect signals;
in response to detecting one or more signals ending within that buffer period:
determining a start time and an end time of that signal, and one or more signal properties corresponding to that signal, the signal properties including at least a duration;
storing that signal to a detailed database and a summary database;
wherein the detailed database comprises a plurality of levels, each level comprising one or more detailed nodes, the detailed nodes within each level sub-dividing time into consecutive detailed node periods, wherein storing a signal to the detailed database comprises storing the signal properties corresponding to that signal into the lowest level available detailed node corresponding to a detailed node time period encompassing the start time and end time of that signal;
wherein the summary database comprises an auxiliary database and a tree-structure of summary nodes having a plurality of levels, wherein the summary nodes at each level correspond to consecutive summary node periods of equal length, each summary node storing a summary data structure which stores, for each unique combination of quantised signal property values, a count of the number of signals corresponding to the respective summary node period which have that unique combination of quantised signal property values;
wherein storing a signal to the summary database comprises, at each level of the summary database:
updating, based on the signal properties, the summary data structures of one or more summary nodes having summary node periods overlapping the duration of that signal; or
storing the signal properties corresponding to that signal in the auxiliary database.
|