In an embodiment, an improved computer-implemented method of efficiently determining actions to perform based on data from a streaming continuous queries in a distributed computer system comprises, at a central control computer, receiving a streaming continuous query and a rule-set; wherein the rule-set comprises decision data representing decisions based on attributes produced by the query, and action data representing end actions based on the decisions, wherein the attributes comprise data processed by one or more networked computers; separating the streaming continuous query into a sub-query executable at one or more edge computers; categorizing end actions from the set based on decisions requiring attributes available from the sub-query into a set of one or more edge expressions that are configured to be evaluated at an edge agent to cause an action; providing the set of edge expressions and the sub-query to at least one edge computer with instructions to process visible attributes on the edge computer and to evaluate the set of one or more edge expressions independently from the central control computer; wherein the method is performed by one or more computing devices.
Please help me write a proper abstract based on the patent claims. CLAIM: 1. An improved computer-implemented method of efficiently determining actions to perform based on data from streaming continuous queries in a distributed computer system, the method comprising: at a central control computer: receiving a streaming continuous query and a rule-set; wherein the rule-set comprises decision data representing a plurality of decisions based on a plurality of attributes produced by the streaming continuous query, and action data representing end actions based on the plurality of decisions, wherein the plurality of attributes comprise data processed by one or more networked computers; separating the streaming continuous query into a sub-query executable at one or more edge computers; categorizing each rule from the rule-set into a set of one or more edge expressions that are configured to be evaluated at an edge computer to cause an action; providing the set of one or more edge expressions and the sub-query to at least one edge computer with instructions to process visible attributes on the edge computer and to evaluate the set of one or more edge expressions independently from the central control computer; wherein the method is performed by one or more computing devices. 2. The method of claim 1, wherein separating the streaming continuous query further comprises: retrieving a first set of attributes available at a particular edge computer of the one or more edge computers; comparing the first set of attributes available at the particular edge computer with a second set of attributes requested in the streaming continuous query; creating, from the streaming continuous query, the sub-query to request a third set of attributes, wherein the third set of attributes comprises an intersection of attributes from the first set of attributes available at the particular edge computer and the second set of attributes requested in the streaming continuous query. 3. The method of claim 2, wherein retrieving the first set of attributes available at the particular edge computer includes scanning the particular edge computer for metadata of visible attributes at the particular edge computer. 4. The method of claim 1, wherein separating the streaming continuous query comprises separating the streaming continuous query into the sub-query executable at the one or more edge computers, and a super-query comprising at least some attributes and syntax from the streaming continuous query and not in the sub-query; wherein the super-query aggregates attributes provided by a propagation action performed at a plurality of edge computers including the one or more edge computers. 5. The method of claim 1, wherein the rule-set is expressed as a decision tree, wherein each branch in the tree represents a true outcome of a decision applied to a set of one or more attributes and each leaf in the tree represents an end action taken on a networked computer, wherein each rule in the rule-set is derived by combining each branch in a path to an end action with an AND operator, and combining multiple paths to a single end action with an OR operator. 6. The method of claim 1, wherein the categorizing step includes applying a set of one or more computer specific constraints to the plurality of attributes within each expression to determine whether evaluation of any expression results permanently in a false decision such that the central control computer determines not to provide that particular expression to the edge computer. 7. The method of claim 1, wherein categorizing each rule from the rule-set includes parsing each rule into a first set of expressions based on decisions requiring attributes available at the edge computer and a second set of expressions based on decisions requiring attributes from a plurality of edge computers; wherein the first set of expressions are categorized into the set of one or more edge expressions that are configured to be evaluated at the edge computer to cause the action. 8. The method of claim 7, further comprising creating a separate rule for a propagation action when parsing a given rule from the rule-set results in a first decision from the given rule in the first set of expressions and a second decision from the given rule in the second set of expressions. 9. The method of claim 8, further comprising combining the separate rule for the propagation action with another rule for the propagation action when both rules result in the propagation action of a same attribute. 10. The method of claim 1, wherein the networked computers comprise a multi-tiered hierarchy, wherein edge specific attributes with respect to an intermediate computer represent attributes from more than one computer with respect to a lower tiered computer, and the intermediate computer represents the central control computer with respect to the lower tiered computer; wherein the intermediate computer represents the edge computer to a higher tiered computer; wherein the steps are applied recursively to available networked computers except for any computer on a lowest tier. 11. A system comprising: a controller computer, coupled to one or more edge computers; receiving logic, in the controller computer, that is configured to receive a streaming continuous query and a rule-set; wherein the rule-set comprises decisions based on attributes produced by the query, and end actions based on the decisions, wherein the attributes comprise data processed by one or more computers on a network; separating logic, in the controller computer, that is configured to separate the streaming continuous query into a sub-query executable at one or more edge computers; categorizing logic, in the controller computer, that is configured to categorize each rule from the rule-set based on decisions requiring attributes available from the sub-query into a set of one or more edge expressions evaluable at an edge computer to cause an action; distributing logic, in the controller computer, that is configured to provide the set of one or more edge expressions and the sub-query to at least one edge computer to enable processing of visible attributes on the edge computer and evaluation of an action independently from the controller computer. 12. The system of claim 11, wherein the receiving logic is configured to receive the rule-set expressed as a decision tree, wherein each branch in the tree represents a true outcome of a decision applied to a set of one or more attributes and each leaf in the tree represents an end action taken on the network, wherein the rule-set is derived by combining each branch in a path to an end action with an AND operator, and combining multiple paths to a single end action with an OR operator. 13. The system of claim 11, wherein the separating logic, in the controller computer, is configured to separate the streaming continuous query by looping through each edge computer from the one or more edge computers on the network to determine attributes that are visible at a particular edge computer, and creating the sub-query for the particular edge computer by removing, from the streaming continuous query, a statement requiring an attribute unavailable at the particular edge computer. 14. The system of claim 13, wherein the separating logic, in the controller computer, is configured to separate the streaming continuous query by separating the streaming continuous query into the sub-query executable at one or more edge computers, and a super-query comprising at least some attributes and syntax from the streaming continuous query but not in the sub-query. 15. The system of claim 11, wherein the categorizing logic, in the controller computer, is configure to review metadata on each computer to determine actions requiring expressions based on edge specific attributes and expressions based on attributes from more than one computer, wherein an action requiring both expressions is separated into two actions, wherein a propagation action is created for expressions based on edge specific attributes. 16. A system comprising: a controller computer, coupled to one or more intermediate computers each of which is coupled to one or more lower tiered computers; receiving logic, in the controller computer, that is configured to receive a streaming continuous query and a rule-set; wherein the rule-set comprises decisions based on attributes produced by the query, and end actions based on the decisions, wherein the attributes comprise data processed by one or more computers on a network; separating logic, in the controller computer, that is configured to separate the streaming continuous query into a sub-query executable at the intermediate computer; categorizing logic, in the controller computer, that is configured to categorize each rule from the rule-set based on decisions requiring attributes available from the sub-query into a set of one or more edge expressions evaluable at the intermediate computer to cause an action; distributing logic, in the controller computer, that is configured to provide the set of one or more edge expressions and the sub-query to at least one intermediate computer to enable processing of visible attributes on the intermediate computer and evaluation of an action independently from the controller computer. 17. The system of claim 16, wherein the receiving logic is configured to receive the rule-set expressed as a decision tree, wherein each branch in the tree represents a true outcome of a decision applied to a set of one or more attributes and each leaf in the tree represents an end action taken on the network, wherein the rule-set is derived by combining each branch in a path to an end action with an AND operator, and combining multiple paths to a single end action with an OR operator. 18. The system of claim 16, wherein the separating logic, in the controller computer, is configured to separate the streaming continuous query by looping through each edge computer from the one or more edge computers on the network to determine attributes that are visible at a particular edge computer, and creating the sub-query for the particular edge computer by removing, from the streaming continuous query, a statement requiring an attribute unavailable at the particular edge computer. 19. The system of claim 18, wherein the separating logic, in the controller computer, is configured to separate the streaming continuous query by separating the streaming continuous query into the sub-query executable at one or more edge computers, and a super-query comprising at least some attributes and syntax from the streaming continuous query but not in the sub-query. 20. The system of claim 16, wherein the categorizing logic, in the controller computer, is configure to review metadata on each computer to determine actions requiring expressions based on edge specific attributes and expressions based on attributes from more than one computer, wherein an action requiring both expressions is separated into two actions, wherein a propagation action is created for expressions based on edge specific attributes.