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: 10735536
    Abstract: 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: Grant
    Filed: April 18, 2019
    Date of Patent: August 4, 2020
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Olivier Nano, Ivo Jose Garcia dos Santos, Eldar Akchurin, Tihomir Tarnavski
  • Publication number: 20190245937
    Abstract: 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: Application
    Filed: April 18, 2019
    Publication date: August 8, 2019
    Inventors: Olivier Nano, Ivo Jose Garcia dos Santos, Eldar Akchurin, Tihomir Tarnavski
  • Patent number: 10306001
    Abstract: 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: Grant
    Filed: July 6, 2017
    Date of Patent: May 28, 2019
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Olivier Nano, Ivo Jose Garcia dos Santos, Eldar Akchurin, Tihomir Tarnavski
  • Patent number: 10235436
    Abstract: 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: Grant
    Filed: October 15, 2014
    Date of Patent: March 19, 2019
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Olivier Nano, Ivo Jose Garcia dos Santos, Eldar Akchurin, Lev Novik, Tihomir Tarnavski, Panagiotis Periorellis
  • Patent number: 10185615
    Abstract: 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: Grant
    Filed: January 3, 2017
    Date of Patent: January 22, 2019
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Olivier Nano, Ivo Jose Garcia dos Santos, Tihomir Tarnavski, Sebastien Peray, Marcel Tilly, Ramkumar Krishnan
  • Publication number: 20170310774
    Abstract: 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: Application
    Filed: July 6, 2017
    Publication date: October 26, 2017
    Inventors: Olivier Nano, Ivo Jose Garcia dos Santos, Eldar Akchurin, Tihomir Tarnavski
  • Patent number: 9749430
    Abstract: 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: Grant
    Filed: May 6, 2013
    Date of Patent: August 29, 2017
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Olivier Nano, Ivo José Garcia dos Santos, Eldar Akchurin, Tihomir Tarnavski
  • Publication number: 20170116064
    Abstract: 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: Application
    Filed: January 3, 2017
    Publication date: April 27, 2017
    Inventors: Olivier Nano, Ivo Jose Garcia dos Santos, Tihomir Tarnavski, Sebastien Peray, Marcel Tilly, Ramkumar Krishnan
  • Patent number: 9632846
    Abstract: 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: Grant
    Filed: April 2, 2015
    Date of Patent: April 25, 2017
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Laurent Bussard, Ivo José Garcia dos Santos, Olivier Nano, Tihomir Tarnavski, Jonathan Goldstein, Badrish Chandramouli, Lev Novik
  • Patent number: 9552280
    Abstract: 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: Grant
    Filed: May 13, 2010
    Date of Patent: January 24, 2017
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Ramkumar Krishnan, Tihomir Tarnavski, Sebastien Peray, Ivo José Garcia dos Santos, Olivier Nano, Marcel Tilly
  • Patent number: 9542256
    Abstract: 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: Grant
    Filed: January 22, 2015
    Date of Patent: January 10, 2017
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Olivier Nano, Ivo Jose Garcia dos Santos, Tihomir Tarnavski, Sebastien Peray, Marcel Tilly, Ramkumar Krishnan
  • Publication number: 20160292016
    Abstract: 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: Application
    Filed: April 2, 2015
    Publication date: October 6, 2016
    Inventors: Laurent Bussard, Ivo José Garcia dos Santos, Olivier Nano, Tihomir Tarnavski, Jonathan Goldstein, Badrish Chandramouli, Lev Novik
  • Publication number: 20160063080
    Abstract: 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: Application
    Filed: October 15, 2014
    Publication date: March 3, 2016
    Inventors: Olivier Nano, Ivo Jose Garcia dos Santos, Eldar Akchurin, Lev Novik, Tihomir Tarnavski, Panagiotis Periorellis
  • Publication number: 20150143177
    Abstract: 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: Application
    Filed: January 22, 2015
    Publication date: May 21, 2015
    Inventors: Olivier Nano, Ivo Jose Garcia dos Santos, Tihomir Tarnavski, Sebastien Peray, Marcel Tilly, Ramkumar Krishnan
  • Patent number: 8949210
    Abstract: 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: Grant
    Filed: May 13, 2010
    Date of Patent: February 3, 2015
    Assignee: Microsoft Corporation
    Inventors: Olivier Nano, Ivo José Garcia dos Santos, Tihomir Tarnavski, Sebastien Peray, Marcel Tilly, Ramkumar Krishnan
  • Publication number: 20140330926
    Abstract: 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: Application
    Filed: May 6, 2013
    Publication date: November 6, 2014
    Applicant: Microsoft Corporation
    Inventors: Olivier Nano, Ivo José Garcia dos Santos, Eldar Akchurin, Tihomir Tarnavski
  • Patent number: 8214847
    Abstract: 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: Grant
    Filed: June 27, 2008
    Date of Patent: July 3, 2012
    Assignee: Microsoft Corporation
    Inventors: Gueorgui Chkodrov, Richard D. Hill, Craig A. Critchley, Krishnan Srinivasan, Tihomir Tarnavski, Mitchell G. Morris, Pramod Gurunath
  • Patent number: 8200836
    Abstract: 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: Grant
    Filed: September 29, 2008
    Date of Patent: June 12, 2012
    Assignee: Microsoft Corporation
    Inventors: Gueorgui Chkodrov, Richard D. Hill, Craig A. Critchley, Krishnan Srinivasan, Tihomir Tarnavski, Mitchell G. Morris, Pramod Gurunath
  • Patent number: 8195648
    Abstract: 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: Grant
    Filed: October 21, 2009
    Date of Patent: June 5, 2012
    Assignee: Microsoft Corporation
    Inventors: Peter Zabback, Tihomir Tarnavski, Beysim Sezgin, Tomer Verona
  • Publication number: 20110283239
    Abstract: 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: Application
    Filed: May 13, 2010
    Publication date: November 17, 2011
    Applicant: Microsoft Corporation
    Inventors: Ramkumar Krishnan, Tihomir Tarnavski, Sebastien Peray, Ivo José Garcia dos Santos, Olivier Nano, Marcel Tilly