Patents by Inventor David Willcox
David Willcox has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 11956297Abstract: Disclosed are embodiments for providing batch performance using a stream processor. In one embodiment, a method is disclosed comprising receiving, at a stream processor, an event, the stream processor including a plurality of processing stages; generating, by the stream processor, an augmented event based on the event, the augmented event including at least one additional field not appearing in the event, the additional field generated by an operation selected from the group consisting of a join or dimensional annotation operation; and emitting, by the stream processor, the augmented event to downstream consumer.Type: GrantFiled: January 16, 2023Date of Patent: April 9, 2024Assignee: YAHOO ASSETS LLCInventors: Michael Pippin, David Willcox, Allie K. Watfa, George Aleksandrovich
-
Patent number: 11954125Abstract: Techniques for providing batch performance using a stream processor are described. In one technique, a method includes receiving an event that includes an event key and a timestamp. The method then generates a partition value and time bucket value, the partition value generated based on the event key and the time bucket value generated based on the timestamp. The event key, partition value, and time bucket value are then combined to form a database key and used in a command to a database.Type: GrantFiled: May 22, 2020Date of Patent: April 9, 2024Assignee: YAHOO ASSETS LLCInventors: Michael Pippin, David Willcox, Allie K Watfa, George Aleksandrovich
-
Patent number: 11947542Abstract: Disclosed are embodiments for providing batch performance using a stream processor. In one embodiment, a method is disclosed comprising detecting a real close of books (COB) of a data transport, the real COB associated with a set of raw events transmitted over the data transport, flushing a stream processor in response to detecting the real COB, and retrieving a set of processed events from a distributed file system after the flushing is complete. A fact COB computation is then performed on the set of processed events and the set of raw events, the fact COB computation outputting a number of missing events, each missing event representing a raw event that is not present in the set of processed events. The processed events are then certified upon determining that the number of missing events is below a threshold.Type: GrantFiled: May 22, 2020Date of Patent: April 2, 2024Assignee: YAHOO ASSETS LLCInventors: Michael Pippin, David Willcox, Allie K. Watfa, George Aleksandrovich
-
Patent number: 11899672Abstract: Disclosed are embodiments for providing batch performance using a stream processor. In one embodiment, a method is disclosed comprising receiving an event, such as a streaming event, from a client. The method determines that the event comprises a primary event and, if so, writes the primary event to a cache and returning the primary event to the client. The method later receives a second event from the client, the second event associated with the first event, annotates the second event based on the primary event, and returns the annotated second event to the client.Type: GrantFiled: April 7, 2023Date of Patent: February 13, 2024Assignee: YAHOO ASSETS LLCInventors: David Willcox, Maulik Shah, Allie K. Watfa, George Aleksandrovich
-
Patent number: 11836124Abstract: Disclosed are embodiments for providing batch performance using a stream processor. In one embodiment, a method is disclosed comprising receiving an event that includes a plurality of fields and extracting needed fields from the plurality of fields. The method then serializes the plurality of fields and generates a new event that includes the set of needed fields and a hidden field, the value of the hidden field comprising the serialized fields. The method then transmits the new event for processing using at least one processing stage of a stream processor. In response, the method reserializes a processed event generated by the stream processor and outputs the reserialized event to a downstream consumer.Type: GrantFiled: May 22, 2020Date of Patent: December 5, 2023Assignee: YAHOO ASSETS LLCInventors: Michael Pippin, David Willcox, Allie K. Watfa, George Aleksandrovich
-
Patent number: 11822556Abstract: Disclosed are embodiments for providing batch performance using a stream processor. In one embodiment, a method is disclosed comprising receiving a stream of events, where each event comprises a header including an event type field and a timestamp. and identifying that the header of a given event in the stream of events includes at least one secondary event in a list of secondary identifiers included in the header. A flag is set in a distributed database for the at least one secondary event, then writing the given event to a table in the distributed database occurs, the table selected based on a respective event type field and timestamp associated with the given event. Deduplicating the given event and the at least one secondary event in response to a close of books (COB) signal occurs, after which writing at least one deduplicated event to a storage device occurs, the at least one deduplicated event selected from the group consisting of the given event and the at least one secondary event.Type: GrantFiled: August 10, 2022Date of Patent: November 21, 2023Assignee: YAHOO ASSETS LLCInventors: Michael Pippin, David Willcox, Allie K. Watfa, George Aleksandrovich
-
Patent number: 11822536Abstract: Disclosed are embodiments for providing batch performance using a stream processor. In one embodiment, a method is disclosed comprising completing a first audit for a primary event type, the first audit generating a set of primary events and completing a second audit for a secondary event type, the second audit generating a draft set of secondary events and an auxiliary feed of un-joined secondary events. The method then performs a join audit check on the auxiliary feed of un-joined secondary events and a set of flags, each flag in the set of flags indicating that a respective un-joined secondary event was properly joined. Based on the results of the join audit check, the method replays a subset of the un-joined secondary events in the auxiliary feed upon determining that the join audit check failed.Type: GrantFiled: March 14, 2022Date of Patent: November 21, 2023Assignee: YAHOO ASSETS LLCInventors: Michael Pippin, David Willcox, Allie K. Watfa, George Aleksandrovich, Jacob Tolar
-
Publication number: 20230252030Abstract: Disclosed are embodiments for providing batch performance using a stream processor. In one embodiment, a method is disclosed comprising receiving an event, such as a streaming event, from a client. The method determines that the event comprises a primary event and, if so, writes the primary event to a cache and returning the primary event to the client. The method later receives a second event from the client, the second event associated with the first event, annotates the second event based on the primary event, and returns the annotated second event to the client.Type: ApplicationFiled: April 7, 2023Publication date: August 10, 2023Inventors: David WILLCOX, Maulik SHAH, Allie K. WATFA, George ALEKSANDROVICH
-
Patent number: 11681569Abstract: Disclosed are embodiments for providing batch performance using a stream processor. In one embodiment, a system is disclosed comprising a stream processor configured to process events emitted by an event stream and output processed events; a queue configured to receive the processed events from the stream processor; a spooler configured to read the processed events from the queue and write the processed events to a buffer; and an auditor process configured to extract a written event from the buffer and confirm that the written event matches an event present in the event stream.Type: GrantFiled: May 22, 2020Date of Patent: June 20, 2023Assignee: YAHOO ASSETS LLCInventors: Michael Pippin, David Willcox, Allie K. Watfa, George Aleksandrovich, Jacob Tolar
-
Publication number: 20230156066Abstract: Disclosed are embodiments for providing batch performance using a stream processor. In one embodiment, a method is disclosed comprising receiving, at a stream processor, an event, the stream processor including a plurality of processing stages; generating, by the stream processor, an augmented event based on the event, the augmented event including at least one additional field not appearing in the event, the additional field generated by an operation selected from the group consisting of a join or dimensional annotation operation; and emitting, by the stream processor, the augmented event to downstream consumer.Type: ApplicationFiled: January 16, 2023Publication date: May 18, 2023Inventors: Michael PIPPIN, David WILLCOX, Allie K. WATFA, George ALEKSANDROVICH
-
Patent number: 11645287Abstract: Disclosed are embodiments for providing batch performance using a stream processor. In one embodiment, a method is disclosed comprising receiving an event, such as a streaming event, from a client. The method determines that the event comprises a primary event and, if so, writes the primary event to a cache and returning the primary event to the client. The method later receives a second event from the client, the second event associated with the first event, annotates the second event based on the primary event, and returns the annotated second event to the client.Type: GrantFiled: May 27, 2022Date of Patent: May 9, 2023Assignee: YAHOO ASSETS LLCInventors: David Willcox, Maulik Shah, Allie K. Watfa, George Aleksandrovich
-
Patent number: 11558446Abstract: Disclosed are embodiments for providing batch performance using a stream processor. In one embodiment, a method is disclosed comprising receiving, at a stream processor, an event, the stream processor including a plurality of processing stages; generating, by the stream processor, an augmented event based on the event, the augmented event including at least one additional field not appearing in the event, the additional field generated by an operation selected from the group consisting of a join or dimensional annotation operation; and emitting, by the stream processor, the augmented event to downstream consumer.Type: GrantFiled: May 22, 2020Date of Patent: January 17, 2023Assignee: YAHOO ASSETS LLCInventors: Michael Pippin, David Willcox, Allie K. Watfa, George Aleksandrovich
-
Publication number: 20220382762Abstract: Disclosed are embodiments for providing batch performance using a stream processor. In one embodiment, a method is disclosed comprising receiving a stream of events, where each event comprises a header including an event type field and a timestamp. and identifying that the header of a given event in the stream of events includes at least one secondary event in a list of secondary identifiers included in the header. A flag is set in a distributed database for the at least one secondary event, then writing the given event to a table in the distributed database occurs, the table selected based on a respective event type field and timestamp associated with the given event. Deduplicating the given event and the at least one secondary event in response to a close of books (COB) signal occurs, after which writing at least one deduplicated event to a storage device occurs, the at least one deduplicated event selected from the group consisting of the given event and the at least one secondary event.Type: ApplicationFiled: August 10, 2022Publication date: December 1, 2022Inventors: Michael PIPPIN, David WILLCOX, Allie K. WATFA, George ALEKSANDROVICH
-
Publication number: 20220292102Abstract: Disclosed are embodiments for providing batch performance using a stream processor. In one embodiment, a method is disclosed comprising receiving an event, such as a streaming event, from a client. The method determines that the event comprises a primary event and, if so, writes the primary event to a cache and returning the primary event to the client. The method later receives a second event from the client, the second event associated with the first event, annotates the second event based on the primary event, and returns the annotated second event to the client.Type: ApplicationFiled: May 27, 2022Publication date: September 15, 2022Inventors: David WILLCOX, Maulik SHAH, Allie K. WATFA, George ALEKSANDROVICH
-
Patent number: 11416497Abstract: Disclosed are embodiments for providing batch performance using a stream processor. In one embodiment, a method is disclosed comprising receiving a stream of events, where each event comprises a header including an event type field and a timestamp. and identifying that the header of a given event in the stream of events includes at least one secondary event in a list of secondary identifiers included in the header. A flag is set in a distributed database for the at least one secondary event, then writing the given event to a table in the distributed database occurs, the table selected based on a respective event type field and timestamp associated with the given event. Deduplicating the given event and the at least one secondary event in response to a close of books (COB) signal occurs, after which writing at least one deduplicated event to a storage device occurs, the at least one deduplicated event selected from the group consisting of the given event and the at least one secondary event.Type: GrantFiled: May 22, 2020Date of Patent: August 16, 2022Assignee: YAHOO ASSETS LLCInventors: Michael Pippin, David Willcox, Allie K. Watfa, George Aleksandrovich
-
Publication number: 20220197891Abstract: Disclosed are embodiments for providing batch performance using a stream processor. In one embodiment, a method is disclosed comprising completing a first audit for a primary event type, the first audit generating a set of primary events and completing a second audit for a secondary event type, the second audit generating a draft set of secondary events and an auxiliary feed of un-joined secondary events. The method then performs a join audit check on the auxiliary feed of un-joined secondary events and a set of flags, each flag in the set of flags indicating that a respective un-joined secondary event was properly joined. Based on the results of the join audit check, the method replays a subset of the un-joined secondary events in the auxiliary feed upon determining that the join audit check failed.Type: ApplicationFiled: March 14, 2022Publication date: June 23, 2022Inventors: Michael PIPPIN, David WILLCOX, Allie K. WATFA, George ALEKSANDROVICH, Jacob TOLAR
-
Patent number: 11347748Abstract: Disclosed are embodiments for providing batch performance using a stream processor. In one embodiment, a method is disclosed comprising receiving an event, such as a streaming event, from a client. The method determines that the event comprises a primary event and, if so, writes the primary event to a cache and returning the primary event to the client. The method later receives a second event from the client, the second event associated with the first event, annotates the second event based on the primary event, and returns the annotated second event to the client.Type: GrantFiled: May 22, 2020Date of Patent: May 31, 2022Assignee: YAHOO ASSETS LLCInventors: David Willcox, Maulik Shah, Allie K. Watfa, George Aleksandrovich
-
Patent number: 11294887Abstract: Disclosed are embodiments for providing batch performance using a stream processor. In one embodiment, a method is disclosed comprising completing a first audit for a primary event type, the first audit generating a set of primary events and completing a second audit for a secondary event type, the second audit generating a draft set of secondary events and an auxiliary feed of un-joined secondary events. The method then performs a join audit check on the auxiliary feed of un-joined secondary events and a set of flags, each flag in the set of flags indicating that a respective un-joined secondary event was properly joined. Based on the results of the join audit check, the method replays a subset of the un-joined secondary events in the auxiliary feed upon determining that the join audit check failed.Type: GrantFiled: May 22, 2020Date of Patent: April 5, 2022Assignee: YAHOO ASSETS LLCInventors: Michael Pippin, David Willcox, Allie K. Watfa, George Aleksandrovich, Jacob Tolar
-
Publication number: 20210365462Abstract: Disclosed are embodiments for providing batch performance using a stream processor. In one embodiment, a method is disclosed comprising receiving a stream of events, where each event comprises a header including an event type field and a timestamp. and identifying that the header of a given event in the stream of events includes at least one secondary event in a list of secondary identifiers included in the header. A flag is set in a distributed database for the at least one secondary event, then writing the given event to a table in the distributed database occurs, the table selected based on a respective event type field and timestamp associated with the given event. Deduplicating the given event and the at least one secondary event in response to a close of books (COB) signal occurs, after which writing at least one deduplicated event to a storage device occurs, the at least one deduplicated event selected from the group consisting of the given event and the at least one secondary event.Type: ApplicationFiled: May 22, 2020Publication date: November 25, 2021Inventors: Michael PIPPIN, David WILLCOX, Allie K. WATFA, George ALEKSANDROVICH
-
Publication number: 20210365419Abstract: Disclosed are embodiments for providing batch performance using a stream processor. In one embodiment, a method is disclosed comprising receiving an event that includes a plurality of fields and extracting needed fields from the plurality of fields. The method then serializes the plurality of fields and generates a new event that includes the set of needed fields and a hidden field, the value of the hidden field comprising the serialized fields. The method then transmits the new event for processing using at least one processing stage of a stream processor. In response, the method reserializes a processed event generated by the stream processor and outputs the reserialized event to a downstream consumer.Type: ApplicationFiled: May 22, 2020Publication date: November 25, 2021Inventors: Michael PIPPIN, David WILLCOX, Allie K. WATFA, George ALEKSANDROVICH