The invention provides for employing a complex data structure to optimize
the retrieval of data from a data store over a network. The complex data
structure includes two separate sub-data structures (Trie and List) that
separately reference the same data objects in a data store. The complex
data structure employs a functional interface to determine which data
structure matches a particular function request for data. A Trie sub-data
structure is used to fulfill a single data object request. The List
sub-data structure is employed with function requests related to several
data objects. Each data object is associated with a parent object that
includes a list of every reference to the data object in both the Trie
and List sub-data structures. When a data object is subsequently deleted,
the parent object list is employed to automatically delete every
reference to the deleted data object in both the Trie and List sub-data
structures. A collector object is a type of data object that is
associated with a member object and which includes a list of other
related data/collector objects. When data associated with the collector
object is requested, other data associated with the other data/collector
objects on the member object list are automatically retrieved. The
complex data structure can also use a Hash sub-data structure to retrieve
single data objects.