A method for aggregating an incoming data stream containing a telecommunication subscriber activity data at a computing device having a processor, a non-transitory computer readable medium, and a memory, the computing device capable of a deep packet inspection (DPI) during consumption by the computing device, the method comprising the steps of:
- establishing the incoming data stream to the computing device;
- parsing on-the-fly said DPI data on a per-subscriber basis based into a plurality of dimensions, said plurality of dimensions correspond to a plurality of subscriber session attributes and a plurality of values corresponding to said plurality of subscriber session attributes;
- separating on-the-fly a plurality of volatile datasets of said plurality of subscriber session attributes, a plurality of semi-volatile datasets of said plurality of subscriber session attributes, and a plurality of non-volatile datasets of said plurality of subscriber session attributes into a plurality of distinct memory bins for each plurality of datasets;
- expanding an at least one of said plurality of distinct memory bins when said at least one of said plurality of distinct memory bins is consumed;
- generating an in-memory hypercube having a plurality of hypercube dimensions each corresponding to said plurality of dimensions;
- numerically translating an input query into an access query for said in-memory hypercube, said input query comprising an at least one subscriber attribute;
- and
- returning a list of subscribers in response to said input query;
- wherein said plurality of subscriber session attributes comprise a download volume, an upload volume, a traffic type, a session duration, a geolocation, and a quality of service.