1. A method for querying data relationships over a network, comprising: receiving a single query including at least one hierarchical relationship between a first entity and a second entity over a network, wherein the first entity, the second entity, and the hierarchical relationship between the first entity and the second entity are stored in at least one database; retrieving, from the at least one database storing the first entity, the second entity, and the hierarchical relationship between the first entity and the second entity, only that amount of data related to the first entity and the second entity that is able to be efficiently returned responsive to the single query; and transmitting the retrieved data related to the first entity and the second entity over the network in response to the single query.