# US 2020/0401446 A1 · Intermediary system for data streams

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2020/0401446 A1
- Document ID: US20200401446A1
- Status: Published application
- Kind: A1
- Application number: 16/444,798
- Filed: 2019-06-18
- Published: 2020-12-24
- Earliest claimed: 2019-06-18
- Assignees: Target Brands, Inc.
- Applicants: Target Brands, Inc.
- Inventors: Kiran Kumar Kodali; Aruna Subba Rao; Ragesh Gopan Gopakumaran Nair Remadeviamma
- Web page: https://patentgrep.com/patent/US20200401446A1

## CPC

- G06F 9/4887: {involving deadlines, e.g. rate based, periodic}
- G06F 9/505: {considering the load}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A computer-implemented method include sending a first cycle of received event data to an external system for processing and while waiting for the external system to confirm that processing of the first cycle of received event data has been completed, receiving a stream of additional event data for processing and assigning some of the additional event data to a second cycle of received event data, wherein the second cycle has a scheduled transmission time to be sent to the external system for processing. The second cycle of received event data is prevented from being sent to the external system when the scheduled transmission time arrives because the external system has not returned confirmation that processing has been completed for the first cycle.

## Claims

### Claim 1

A computer-implemented method comprising:
sending a first cycle of received event data to an external system for processing;
while waiting for the external system to confirm that processing of the first cycle of received event data has been completed, receiving a stream of additional event data for processing and assigning some of the additional event data to a second cycle of received event data, wherein the second cycle has a scheduled transmission time to be sent to the external system for processing; and
preventing the second cycle of received event data from being sent to the external system when the scheduled transmission time arrives because the external system has not returned confirmation that processing has been completed for the first cycle.

### Claim 2 (depends on 1)

The computer-implemented method of claim 1 wherein assigning some of the additional event data to the second cycle comprises assigning event data to the second cycle until the scheduled time arrives.

### Claim 3 (depends on 2)

The computer-implemented method of claim 2 further comprising, receiving a stream of further additional event data and assigning the further additional event data to a third cycle of received event data while waiting for the external system to confirm the processing of the first cycle of received event data.

### Claim 4 (depends on 3)

The computer-implemented method of claim 3 wherein assigning the further additional event data to the third cycle comprises assigning event data to the third cycle after the scheduled time arrives.

### Claim 5 (depends on 4)

The computer-implemented method of claim 4 wherein the third cycle has a scheduled time to be sent to the external system for processing and wherein assigning the further additional event data to the third cycle further comprises assigning event data to the third cycle until the scheduled time to be sent to the external system for processing for the third cycle arrives.

### Claim 6 (depends on 5)

The computer-implemented method of claim 5 wherein when the confirmation that processing has been completed for the first cycle is received after the scheduled time for the third cycle to be sent to the external system, the second cycle is sent to the external system for processing and the third cycle is prevented from being sent to the external system because the external system has not returned confirmation that processing has been completed for the second cycle.

### Claim 7 (depends on 1)

The computer-implemented method of claim 1 further comprising:
assigning some of the additional event data to a cycle of received event data for a second external system, wherein the cycle of received event data for the second external system has a scheduled time to be sent to the second external system; and
allowing the cycle of received event data for the second external system to be sent to the second external system when the scheduled time for the cycle of received event data for the second external system has arrived even though the external system has not returned confirmation that processing has been completed on the first cycle.

### Claim 8

A system comprising:
an input stream processor receiving a stream of event data messages and storing the event data of each message to indicate that the event data has been assigned to a respective cycle of a respective external processing system;
a cycle processor controlling the execution of cycles for a plurality of external processing systems such that event data assigned to a cycle are prevented from being sent to an external processing system associated with the cycle at a time scheduled for transmission of the cycle when the external processing system has yet to return confirmation of processing event data in a previous cycle.

### Claim 9 (depends on 8)

The system of claim 8 wherein after the time scheduled for transmission of the cycle, the input stream processor stops assigning event data to the cycle.

### Claim 10 (depends on 9)

The system of claim 9 wherein after the time scheduled for transmission of the cycle, the input stream processor begins assigning event data to a second cycle having a second scheduled time for transmission that is later than the scheduled time for transmission.

### Claim 11 (depends on 10)

The system of claim 10 wherein when the external processing system returns confirmation of processing event data in the previous cycle, the cycle processor sends the event data assigned to the cycle to the external processing system.

### Claim 12 (depends on 10)

The system of claim 10 wherein when the cycle processor sends event data assigned to the cycle to the external processing system, the cycle processor prevents event data assigned to the second cycle from being sent to the external processing system associated with the second cycle at the second scheduled time when the external processing system has yet to return confirmation of processing event data in the cycle.

### Claim 13 (depends on 8)

The system of claim 8 wherein the cycle processor sends event data assigned to a cycle associated with a second external processing system to the second external processing system when the external processing system has yet to return confirmation of processing event data in the previous cycle.

### Claim 14 (depends on 13)

The system of claim 13 wherein the cycle processor sends the event data assigned to the cycle associated with the second external processing system to the second external processing system when a scheduled time for the cycle associated with the second external processing system arrives.

### Claim 15

A method comprising:
receiving event data;
assigning the event data to a cycle that has a scheduled time for sending the event data to an external processor for processing;
receiving further event data after the scheduled time; and
assigning the further event data to a second cycle for the external processor while preventing the event data assigned to the cycle from being sent to the external processor.

### Claim 16 (depends on 15)

The method of claim 15 wherein the event data for the cycle are prevented from being sent to the external processor because the external processor has not confirmed processing of event data in a previous cycle.

### Claim 17 (depends on 16)

The method of claim 16 wherein the second cycle has a second scheduled time for sending event data assigned to the second cycle to the external processor.

### Claim 18 (depends on 17)

The method of claim 17 further comprising receiving a conformation from the external processor that event data in the previous cycle have been processed and in response sending the event data for the cycle to the external processor while preventing event data assigned to the second cycle from being sent to the external processor.

### Claim 19 (depends on 18)

The method of claim 18 wherein the conformation is received after the second schedule time.

### Claim 20 (depends on 15)

The method of claim 15 further comprising:
receiving additional event data;
assigning the additional event data to an additional cycle that is associated with a second external processor; and
sending the additional event data assigned to the additional cycle to the second external processor while preventing the event data assigned to the cycle from being sent to the external processor.
