Non-greedy consumption by execution blocks in dataflow networks
AssigneeMicrosoft Corporation
InventorsMichael L. Chu, Daniela Cristina Manu, Stephen H. Toub
Life of this patent
Estimating the term…
Abstract
Processing messages in dataflow networks. The method includes, at a first entity, receiving from a second entity a first offer of a first message to process. The method further includes determining to not process the first message. As a result of determining to not process the first message, such an indication is made to the second entity. Further as a result of determining to not process the first message, an indication is stored that the second entity offered a message. The indication includes an indicator correlated to the second entity. Subsequent to indicating to the second entity, using the indication the method includes indicating to the second entity availability to process a message.
Claims21
A computer-implemented method of managing dataflow from one or more source nodes in a dataflow network to one or more target nodes of the dataflow network, the computer-implemented method comprising:
- at a target node of a dataflow network, receiving from a source node of the dataflow network a first offer to send data for processing at the target node;
- said target node of the dataflow network, upon receiving the first offer, then determining in accordance with a configurable policy not to accept, said first offer so as not to process the data that the source node is offering to send to the target node;
- said target node, after determining to not accept the first offer, then sending a reject notification back to said source node indicating that the offer to have the target node process the data has not been accepted at said target node, and the target node at least temporarily storing an indication at the target node that identifies the source node which offered to send the data and/or the data that was offered to be sent for processing;
- said target node later determining in accordance with said configurable policy that it is now able to process the data previously offered by said source node and sending a request to said source node to send the data previously offered for processing;
- and
- said target node of the dataflow network either receiving the previously offered data, or receiving other data if the previously offered data was sent to another target node of the dataflow network.
A computer program product comprising physical storage memory containing computer executable instructions that when executed by one or more processors causes the implementation of a computer-implemented method of managing dataflow from one or more source nodes in a dataflow network to one or more target nodes of the dataflow network, and the computer-implemented method comprising:
- at a target node of a dataflow network, receiving from a source node of the dataflow network a first offer to send data for processing at the target node;
- said target node of the dataflow network, upon receiving the first offer, then determining in accordance with a configurable policy not to accept, said first offer so as not to process the data that the source node is offering to send to the target node;
- said target node, after determining not to accept the first offer, then sending a reject notification back to said source node indicating that the offer to have the target node process the data has not been accepted at said target node, and the target node at least temporarily storing an indication at the target node that identifies the source node which offered to send the data and/or the data that was offered to be sent for processing;
- said target node later determining in accordance with said configurable policy that it is now able to process the data previously offered by said source node and sending a request to said source node to send the data previously offered for processing;
- and
- said target node of the dataflow network either receiving the previously offered data, or receiving other data if the previously offered data was sent to another target node of the dataflow network.
A computer-implemented network for managing dataflow from one or more source nodes in the network to one or more target nodes of the network, the target nodes and source nodes of the network comprising a computing system comprised of:
- one or more processors;
- physical storage memory containing computer executable instructions that when executed by said one or more processors causes the implementation of a computer-implemented method of managing dataflow from one or more source nodes in the network to one or more target nodes of the network, and the computer-implemented method comprising:
- at a target node of the network, receiving from a source node of the network a first offer to send data for processing at the target node;
- said target node, upon receiving the first offer, then determining in accordance with a configurable policy not to accept, said first offer so as not to process the data that the source node is offering to send to the target node;
- said target node, after determining to not accept the first offer, then sending a reject notification back to said source node indicating that the offer to have the target node process the data has not been accepted at said target node, and the target node at least temporarily storing an indication at the target node that identifies the source node which offered to send the data and/or the data that was offered to be sent for processing;
- said target node later determining in accordance with said configurable policy that it is now able to process the data previously offered by said source node and sending a request to said source node to send the data previously offered for processing;
- and
- said target node either receiving the previously offered data, or receiving other data if the previously offered data was sent to another target node of the network.
Dependencies are inferred from the claim text.