Patents by Inventor Tihomir Tarnavski
Tihomir Tarnavski 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: 10735536Abstract: A method is described of pre-processing real-time data to be processed by one or more real-time analytics services. The method includes: receiving, at a stateless ingress node, data from one or more client devices; transforming the data in real-time at the stateless ingress node; determining in real-time, at the stateless ingress node, a real-time analytics service for the transformed data; and forwarding in real-time the transformed data to the determined real-time analytics service for stateful processing.Type: GrantFiled: April 18, 2019Date of Patent: August 4, 2020Assignee: Microsoft Technology Licensing, LLCInventors: Olivier Nano, Ivo Jose Garcia dos Santos, Eldar Akchurin, Tihomir Tarnavski
-
Publication number: 20190245937Abstract: A method is described of pre-processing real-time data to be processed by one or more real-time analytics services. The method includes: receiving, at a stateless ingress node, data from one or more client devices; transforming the data in real-time at the stateless ingress node; determining in real-time, at the stateless ingress node, a real-time analytics service for the transformed data; and forwarding in real-time the transformed data to the determined real-time analytics service for stateful processing.Type: ApplicationFiled: April 18, 2019Publication date: August 8, 2019Inventors: Olivier Nano, Ivo Jose Garcia dos Santos, Eldar Akchurin, Tihomir Tarnavski
-
Patent number: 10306001Abstract: A method is described of pre-processing real-time data to be processed by one or more real-time analytics services. The method includes: receiving, at a stateless ingress node, data from one or more client devices; transforming the data in real-time at the stateless ingress node; determining in real-time, at the stateless ingress node, a real-time analytics service for the transformed data; and forwarding in real-time the transformed data to the determined real-time analytics service for stateful processing.Type: GrantFiled: July 6, 2017Date of Patent: May 28, 2019Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Olivier Nano, Ivo Jose Garcia dos Santos, Eldar Akchurin, Tihomir Tarnavski
-
Patent number: 10235436Abstract: The formulation of transformations on one or more input event streams to generation one or more output event streams. Accordingly, the transformations may be considered to be a query on the original input event stream(s). The event query includes event stream source representations representing an input event stream available in a particular execution context. The event query also includes a transformation module identifying the transformation set to be performed on the input event streams in the execution context. Once the query is properly formed, an execution module may then cause the transformations to be executed upon the designated input event stream(s) to generate output event streams.Type: GrantFiled: October 15, 2014Date of Patent: March 19, 2019Assignee: Microsoft Technology Licensing, LLCInventors: Olivier Nano, Ivo Jose Garcia dos Santos, Eldar Akchurin, Lev Novik, Tihomir Tarnavski, Panagiotis Periorellis
-
Patent number: 10185615Abstract: An analysis module is configured to receive data associated with an event flow. The data is received from a first analysis module (e.g., in a stack of analysis modules) or from the event flow. The analysis module is configured to execute an analysis operation on the data to generate a result. The analysis module can output the result to a second analysis module (e.g., in the stack of analysis modules) or to a user interface.Type: GrantFiled: January 3, 2017Date of Patent: January 22, 2019Assignee: Microsoft Technology Licensing, LLCInventors: Olivier Nano, Ivo Jose Garcia dos Santos, Tihomir Tarnavski, Sebastien Peray, Marcel Tilly, Ramkumar Krishnan
-
Publication number: 20170310774Abstract: A method is described of pre-processing real-time data to be processed by one or more real-time analytics services. The method includes: receiving, at a stateless ingress node, data from one or more client devices; transforming the data in real-time at the stateless ingress node; determining in real-time, at the stateless ingress node, a real-time analytics service for the transformed data; and forwarding in real-time the transformed data to the determined real-time analytics service for stateful processing.Type: ApplicationFiled: July 6, 2017Publication date: October 26, 2017Inventors: Olivier Nano, Ivo Jose Garcia dos Santos, Eldar Akchurin, Tihomir Tarnavski
-
Patent number: 9749430Abstract: A method is described of pre-processing real-time data to be processed by one or more real-time analytics services. The method includes: receiving, at a stateless ingress node, data from one or more client devices; transforming the data in real-time at the stateless ingress node; determining in real-time, at the stateless ingress node, a real-time analytics service for the transformed data; and forwarding in real-time the transformed data to the determined real-time analytics service for stateful processing.Type: GrantFiled: May 6, 2013Date of Patent: August 29, 2017Assignee: Microsoft Technology Licensing, LLCInventors: Olivier Nano, Ivo José Garcia dos Santos, Eldar Akchurin, Tihomir Tarnavski
-
Publication number: 20170116064Abstract: An analysis module is configured to receive data associated with an event flow. The data is received from a first analysis module (e.g., in a stack of analysis modules) or from the event flow. The analysis module is configured to execute an analysis operation on the data to generate a result. The analysis module can output the result to a second analysis module (e.g., in the stack of analysis modules) or to a user interface.Type: ApplicationFiled: January 3, 2017Publication date: April 27, 2017Inventors: Olivier Nano, Ivo Jose Garcia dos Santos, Tihomir Tarnavski, Sebastien Peray, Marcel Tilly, Ramkumar Krishnan
-
Patent number: 9632846Abstract: A complex event processor is described which has a communications interface configured to retrieve event data by pulling it from one or more sources and to receive at least one live event stream pushed to the interface. An event processing pipeline connected to the communications interface comprises a plurality of operator nodes connected between the communications interface and a combiner node which is a node configured to combine event data from the source and from the live event stream. The communications interface is configured to retrieve events from the source and to push the events retrieved from the source along the event processing pipeline towards the combiner node. The communications interface is configured to retrieve and push the retrieved events only in response to request messages passed in an upstream direction from the combiner node to the communications interface along the pipeline.Type: GrantFiled: April 2, 2015Date of Patent: April 25, 2017Assignee: Microsoft Technology Licensing, LLCInventors: Laurent Bussard, Ivo José Garcia dos Santos, Olivier Nano, Tihomir Tarnavski, Jonathan Goldstein, Badrish Chandramouli, Lev Novik
-
Patent number: 9552280Abstract: Methods, systems, and computer-readable media to generate a user interface (UI) to analyze a complex event processing (CEP) query are disclosed. A particular method includes receiving data representing an event flow associated with execution of a CEP query. The CEP query includes a plurality of operators. A UI including a graph is generated. The graph includes a plurality of nodes. Each node of the graph corresponds to an operator of the CEP query, and each edge of the graph corresponds to a stream between operators of the CEP query. The method includes receiving an input identifying a particular node of the graph, where the particular node corresponds to a particular operator of the CEP query. In response to the input, an operator-specific output associated with at least one event processed by the particular operator is displayed.Type: GrantFiled: May 13, 2010Date of Patent: January 24, 2017Assignee: Microsoft Technology Licensing, LLCInventors: Ramkumar Krishnan, Tihomir Tarnavski, Sebastien Peray, Ivo José Garcia dos Santos, Olivier Nano, Marcel Tilly
-
Patent number: 9542256Abstract: An analysis module is configured to receive data associated with an event flow. The data is received from a first analysis module (e.g., in a stack of analysis modules) or from the event flow. The analysis module is configured to execute an analysis operation on the data to generate a result. The analysis module can output the result to a second analysis module (e.g., in the stack of analysis modules) or to a user interface.Type: GrantFiled: January 22, 2015Date of Patent: January 10, 2017Assignee: Microsoft Technology Licensing, LLCInventors: Olivier Nano, Ivo Jose Garcia dos Santos, Tihomir Tarnavski, Sebastien Peray, Marcel Tilly, Ramkumar Krishnan
-
Publication number: 20160292016Abstract: A complex event processor is described which has a communications interface configured to retrieve event data by pulling it from one or more sources and to receive at least one live event stream pushed to the interface. An event processing pipeline connected to the communications interface comprises a plurality of operator nodes connected between the communications interface and a combiner node which is a node configured to combine event data from the source and from the live event stream. The communications interface is configured to retrieve events from the source and to push the events retrieved from the source along the event processing pipeline towards the combiner node. The communications interface is configured to retrieve and push the retrieved events only in response to request messages passed in an upstream direction from the combiner node to the communications interface along the pipeline.Type: ApplicationFiled: April 2, 2015Publication date: October 6, 2016Inventors: Laurent Bussard, Ivo José Garcia dos Santos, Olivier Nano, Tihomir Tarnavski, Jonathan Goldstein, Badrish Chandramouli, Lev Novik
-
Publication number: 20160063080Abstract: The formulation of transformations on one or more input event streams to generation one or more output event streams. Accordingly, the transformations may be considered to be a query on the original input event stream(s). The event query includes event stream source representations representing an input event stream available in a particular execution context. The event query also includes a transformation module identifying the transformation set to be performed on the input event streams in the execution context. Once the query is properly formed, an execution module may then cause the transformations to be executed upon the designated input event stream(s) to generate output event streams.Type: ApplicationFiled: October 15, 2014Publication date: March 3, 2016Inventors: Olivier Nano, Ivo Jose Garcia dos Santos, Eldar Akchurin, Lev Novik, Tihomir Tarnavski, Panagiotis Periorellis
-
Publication number: 20150143177Abstract: An analysis module is configured to receive data associated with an event flow. The data is received from a first analysis module (e.g., in a stack of analysis modules) or from the event flow. The analysis module is configured to execute an analysis operation on the data to generate a result. The analysis module can output the result to a second analysis module (e.g., in the stack of analysis modules) or to a user interface.Type: ApplicationFiled: January 22, 2015Publication date: May 21, 2015Inventors: Olivier Nano, Ivo Jose Garcia dos Santos, Tihomir Tarnavski, Sebastien Peray, Marcel Tilly, Ramkumar Krishnan
-
Patent number: 8949210Abstract: Methods, systems, and computer-readable media to analyze a CEP query are disclosed. A particular analysis module is configured to receive data associated with an event flow generated by execution of a CEP query. The data is received from a first analysis module (e.g., in a stack of analysis modules) or from the event flow via a software communication interface. The analysis module is also configured to execute an analysis operation on the data to generate a result. The analysis module can output the result to a second analysis module (e.g., in the stack of analysis modules) or to a user interface via the software communication interface.Type: GrantFiled: May 13, 2010Date of Patent: February 3, 2015Assignee: Microsoft CorporationInventors: Olivier Nano, Ivo José Garcia dos Santos, Tihomir Tarnavski, Sebastien Peray, Marcel Tilly, Ramkumar Krishnan
-
Publication number: 20140330926Abstract: A method is described of pre-processing real-time data to be processed by one or more real-time analytics services. The method includes: receiving, at a stateless ingress node, data from one or more client devices; transforming the data in real-time at the stateless ingress node; determining in real-time, at the stateless ingress node, a real-time analytics service for the transformed data; and forwarding in real-time the transformed data to the determined real-time analytics service for stateful processing.Type: ApplicationFiled: May 6, 2013Publication date: November 6, 2014Applicant: Microsoft CorporationInventors: Olivier Nano, Ivo José Garcia dos Santos, Eldar Akchurin, Tihomir Tarnavski
-
Patent number: 8214847Abstract: The present invention extends to methods, systems, and computer program products for configuring assurances within distributed messaging systems. A defined set of message log and cursor components are configurably activatable and deactivatable to compose a variety of different capture assurances, transfer assurances, and delivery assurances within a distributed messaging system. A composition of a capture assurance, a transfer assurance, and a delivery assurance can provide an end-to-end assurance for a messaging system. End-to-end assurances can include one of best effort, at-most-once, at-least-once, and exactly once and can include one of: durable or non-durable. Using a defined set of activatable and deactivatable message log and cursor components facilities more efficient transitions between desired assurances. In some embodiments, a composition of a capture assurance, a transfer assurance, and a delivery assurance provides durable exactly-once message delivery.Type: GrantFiled: June 27, 2008Date of Patent: July 3, 2012Assignee: Microsoft CorporationInventors: Gueorgui Chkodrov, Richard D. Hill, Craig A. Critchley, Krishnan Srinivasan, Tihomir Tarnavski, Mitchell G. Morris, Pramod Gurunath
-
Patent number: 8200836Abstract: The present invention extends to methods, systems, and computer program products for durable exactly once message delivery at scale. A message capture system uses a synchronous capture channel and transactions to provide durable exactly once message capture. Messages are sent from the message capture system to a message delivery system over a network using an at least once transfer protocol. The message delivery system implements a durable at most once messaging behavior, the combination of which results in durable exactly once transfer of messages from the message capture system to the message delivery system. The message delivery system uses a synchronous delivery channel and transactions to provide durable exactly once message delivery. Cursors maintaining message consumer state are collocated with message consumers, freeing up message log resources to process increased volumes of messages, such as, for example, in a queued or pub/sub environment.Type: GrantFiled: September 29, 2008Date of Patent: June 12, 2012Assignee: Microsoft CorporationInventors: Gueorgui Chkodrov, Richard D. Hill, Craig A. Critchley, Krishnan Srinivasan, Tihomir Tarnavski, Mitchell G. Morris, Pramod Gurunath
-
Patent number: 8195648Abstract: Methods, systems, and computer-readable media are disclosed for partitioned query execution in event processing systems. A particular method includes receiving a plurality of events via an input stream. The plurality of events is partitioned into one or more groups, and a query application module is instantiated for each of the one or more groups based on a compiled query application plan. Each particular query application module for a particular group is configured to apply a query to events of the particular group to generate partial results. The method includes merging the partial results of each of the query application modules to generate merged output results and providing the output results to an output stream.Type: GrantFiled: October 21, 2009Date of Patent: June 5, 2012Assignee: Microsoft CorporationInventors: Peter Zabback, Tihomir Tarnavski, Beysim Sezgin, Tomer Verona
-
Publication number: 20110283239Abstract: Methods, systems, and computer-readable media to generate a user interface (UI) to analyze a complex event processing (CEP) query are disclosed. A particular method includes receiving data representing an event flow associated with execution of a CEP query. The CEP query includes a plurality of operators. A UI including a graph is generated. The graph includes a plurality of nodes. Each node of the graph corresponds to an operator of the CEP query, and each edge of the graph corresponds to a stream between operators of the CEP query. The method includes receiving an input identifying a particular node of the graph, where the particular node corresponds to a particular operator of the CEP query. In response to the input, an operator-specific output associated with at least one event processed by the particular operator is displayed.Type: ApplicationFiled: May 13, 2010Publication date: November 17, 2011Applicant: Microsoft CorporationInventors: Ramkumar Krishnan, Tihomir Tarnavski, Sebastien Peray, Ivo José Garcia dos Santos, Olivier Nano, Marcel Tilly