1. A method for distributing a query, wherein the query comprises one or more sub-clauses, wherein each sub-clause comprises a triple pattern having three components for use with a distributed system, the method comprising: identifying each sub-clause; analysing three components of each sub-clause in accordance with one or more analysis rules in order to determine the proportion of values to variables; in response to the determination, testing the sub-clause against one or more execution rules, wherein the execution rules are associated with an order of processing of a sub-clause based on the proportion of values to variables; and in response to the testing, generating a sub-query associated with a first sub-clause having the largest proportion of values to variables.