A system including instructions recorded on a computer-readable medium, the system comprising: a query pattern handler configured to determine at least one query pattern (104, 106) from a large number of query patterns to be matched against a stream of a large number of events, and configured to determine a plurality of run-time patterns (104A, 104B, 106A, 106B) representing active instances of the at least one query pattern (104, 106) which are currently available for matching, and which each include a plurality of states; an event scheduler configured to receive an event of the stream of events, the event associated with a current event set of the stream of events; a run-time pattern scheduler configured to determine a ranked set of the run-time patterns based on a priority metric which characterizes, for each run-time pattern (104A, 104B, 106A, 106B), an advancement of each run-time pattern (104A, 104B, 106A, 106B) from a current state thereof when matched against the current event set, wherein the run-time pattern scheduler comprises: a pattern list manager configured to maintain a pending list of the runtime patterns (104A, 104B, 106A, 106B) which are available for matching, and a running list which includes a subset of the pending list, including the ranked set, for provision to the pattern match evaluator therefrom; and a priority manager configured to calculate the priority metric based on characteristics of the stream of events and based on a current state of each runtime pattern (104A, 104B, 106A, 106B) using an expectation of a runtime pattern (104A, 104B, 106A, 106B) and an expected cost of the run-time pattern (104A, 104B, 106A, 106B), wherein the expectation of the run-time pattern (104A, 104B, 106A, 106B) is the probability that the runtime pattern (104A, 104B, 106A, 106B) generates a pattern matching on the stream so that the priority metric expresses an extent to which one or more events of the current event set, if matched against a particular runtime pattern, will significantly advance that runtime pattern toward completion; and a pattern match evaluator configured to evaluate each run-time pattern (104A, 104B, 106A, 106B) of the ranked set, in turn, against the current event set. a query pattern handler configured to determine at least one query pattern (104, 106) from a large number of query patterns to be matched against a stream of a large number of events, and configured to determine a plurality of run-time patterns (104A, 104B, 106A, 106B) representing active instances of the at least one query pattern (104, 106) which are currently available for matching, and which each include a plurality of states; an event scheduler configured to receive an event of the stream of events, the event associated with a current event set of the stream of events; a run-time pattern scheduler configured to determine a ranked set of the run-time patterns based on a priority metric which characterizes, for each run-time pattern (104A, 104B, 106A, 106B), an advancement of each run-time pattern (104A, 104B, 106A, 106B) from a current state thereof when matched against the current event set, wherein the run-time pattern scheduler comprises: a pattern list manager configured to maintain a pending list of the runtime patterns (104A, 104B, 106A, 106B) which are available for matching, and a running list which includes a subset of the pending list, including the ranked set, for provision to the pattern match evaluator therefrom; and a priority manager configured to calculate the priority metric based on characteristics of the stream of events and based on a current state of each runtime pattern (104A, 104B, 106A, 106B) using an expectation of a runtime pattern (104A, 104B, 106A, 106B) and an expected cost of the run-time pattern (104A, 104B, 106A, 106B), wherein the expectation of the run-time pattern (104A, 104B, 106A, 106B) is the probability that the runtime pattern (104A, 104B, 106A, 106B) generates a pattern matching on the stream so that the priority metric expresses an extent to which one or more events of the current event set, if matched against a particular runtime pattern, will significantly advance that runtime pattern toward completion; and a pattern list manager configured to maintain a pending list of the runtime patterns (104A, 104B, 106A, 106B) which are available for matching, and a running list which includes a subset of the pending list, including the ranked set, for provision to the pattern match evaluator therefrom; and a priority manager configured to calculate the priority metric based on characteristics of the stream of events and based on a current state of each runtime pattern (104A, 104B, 106A, 106B) using an expectation of a runtime pattern (104A, 104B, 106A, 106B) and an expected cost of the run-time pattern (104A, 104B, 106A, 106B), wherein the expectation of the run-time pattern (104A, 104B, 106A, 106B) is the probability that the runtime pattern (104A, 104B, 106A, 106B) generates a pattern matching on the stream so that the priority metric expresses an extent to which one or more events of the current event set, if matched against a particular runtime pattern, will significantly advance that runtime pattern toward completion; and a pattern match evaluator configured to evaluate each run-time pattern (104A, 104B, 106A, 106B) of the ranked set, in turn, against the current event set.