1. A method of evaluating a query against a data repository comprising a non-transitory storage device having at least one data partition, the method comprising: receiving a query at a dispatcher; communicating the query from the dispatcher to a director, the director comprising a module enabled to determine at least one repository node needed to execute the query, wherein the at least one repository node is in the data repository; dividing the query into at least two subqueries at the director, each subquery corresponding to pertinent information residing in different collections of the data repository; dividing at least one partition comprising tenant data into a set of at least two collections, wherein the partition resides on the at least one repository node; defining the context at the director for each subquery so as to encompass a collection containing the information pertinent to each subquery; communicating the subqueries from the director to the dispatcher; distributing at least one of the subqueries to a subdispatcher; evaluating the at least one of the subqueries against the defined context for the at least one of the subqueries context at the subdispatcher; gathering the information responsive to the at least one subquery; and returning the information as the response to the received query.