Reduction and optimization of information processing systems
First Claim
1. A method for arranging operations performable on message streams in a message processing system by a first operation sequence between two nodes in the system, the first operation sequence having a transform operation followed by a select operation, the method comprising:
- converting the first operation sequence into a second, equivalent operation sequence comprising a select operation followed by a transform operation.
2 Assignments
0 Petitions
Accused Products
Abstract
Techniques for arranging operations performable on information in an information processing system are provided. In a system having a plurality of information producers and a plurality of information subscribers, paths are identified over which information traverses, and within which the information is subject to select and/or transform operations. The present invention optimizes the system by reorganizing the sequence of select and transform operations so that transforms follow select operations; and by combining multiple select and transform operations into single select and transform operations, respectively. Using these optimizations, the processing resources of the system can be reorganized, and/or information flow graphs describing the system can be designed, so that the select operations are “pushed” toward the producers, and transform operations are “pushed” toward the subscribers. Efficient content-based routing systems can then be used to implement the select operations.
236 Citations
16 Claims
-
1. A method for arranging operations performable on message streams in a message processing system by a first operation sequence between two nodes in the system, the first operation sequence having a transform operation followed by a select operation, the method comprising:
-
converting the first operation sequence into a second, equivalent operation sequence comprising a select operation followed by a transform operation. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
combining the plurality of select operations into a single, equivalent select operation; and
combining the plurality of transform operations into a single, equivalent transform operation, whereby the second, equivalent operation sequence comprises the single, equivalent select operation followed by the single, equivalent transform operation.
-
-
4. A method for reorganizing message processing operations in a message processing system comprising using the arranging method of claim 1.
-
5. The method of claim 4, wherein said reorganizing is facilitated by an automated processing system.
-
6. A method for arranging an information flow graph descriptive of message processing operation for a method processing system, comprising using the arranging method of claim 1 on said information flow graph.
-
7. The method of claim 6, wherein said method for arranging the information flow graph is performed on an automated processing system, and wherein the information flow graph comprises information tangibly stored on media in said automated processing system.
-
8. The method of claim 1, wherein said converting comprises:
reducing a number of calculations required to determine the second, equivalent operation sequence by storing results of any common subexpressions thereof and using said stored results instead of recalculating the common subexpressions.
-
9. A system for arranging operation performable on message streams in a message processing system, comprising:
-
a first node and a second node, wherein a first operation sequence between the first node and second node comprises a transform operation followed by a select operation, wherein the select operation comprises determining whether input data satisfies one or more criteria; and
mean for converting the first operation sequence into a second, equivalent operation sequence comprising a select operation followed by a transform operation. - View Dependent Claims (10, 11, 12)
means for combining the plurality of select operation into a single, equivalent select operation; and
means for combining the plurality of transform operations into a single, equivalent transform operation, whereby the second, equivalent operation sequence comprises the single, equivalent select operation followed by the single, equivalent transform operation.
-
-
12. The system of claim 9, wherein said means for converting comprises:
means for reducing a number of calculations required to determine the second, equivalent operation sequence by storing results of any common subexpressions thereof and using said stored results instead of recalculating the common subexpressions.
-
13. At least one program storage device readable by a machine, tangibly embodying at least one program of instructions executable by the machine to perform a method for arranging operations performable on message streams in a message processing system by a first operation sequence between two nodes in the system, the first operation sequence having a transform operation followed by a select operation, the method comprising:
-
converting the first operation sequence into a second, equivalent operation sequence comprising a select operation followed by a transform operation. - View Dependent Claims (14, 15, 16)
combining the plurality of select operation into a single, equivalent select operation; and
combining the plurality of transform operations into a single, equivalent transform operation, whereby the second, equivalent operation sequence comprises the single, equivalent select operation followed by the single, equivalent transform operation.
-
-
16. The at least one program storage device of claim 13, wherein said converting comprises:
reducing a number of calculations required to determine the second, equivalent operation sequence by storing results of any common subexpressions thereof and using said stored results instead of recalculating the common subexpressions.
Specification