1. A method for detecting at least one hierarchical heavy hitter from a stream of packets, comprising: receiving at least one packet from said stream of packets; associating at least one key with at least one field of said at least one packet; applying an adaptive trie data structure, where each node of said adaptive trie data structure is associated with one of said at least one key; and using said adaptive trie data structure to determine said at least one hierarchical heavy hitter.