Patents by Inventor Peter A. Zabback

Peter A. Zabback 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: 11271981
    Abstract: A low-latency cloud-scale computation environment includes a query language, optimization, scheduling, fault tolerance and fault recovery. An event model can be used to extend a declarative query language so that temporal analysis of event of an event stream can be performed. Extractors and outputters can be used to define and implement functions that extend the capabilities of the event-based query language. A script written in the extended query language can be translated into an optimal parallel continuous execution plan. Execution of the plan can be orchestrated by a streaming job manager which schedules vertices on available computing machines. The streaming job manager can monitor overall job execution. Fault tolerance can be provided by tracking execution progress and data dependencies in each vertex. In the event of a failure, another instance of the failed vertex can be scheduled. An optimal recovery point can be determined based on checkpoints and data dependencies.
    Type: Grant
    Filed: January 16, 2019
    Date of Patent: March 8, 2022
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Jingren Zhou, Zhengping Qian, Peter Zabback, Wei Lin
  • Publication number: 20190166173
    Abstract: A low-latency cloud-scale computation environment includes a query language, optimization, scheduling, fault tolerance and fault recovery. An event model can be used to extend a declarative query language so that temporal analysis of event of an event stream can be performed. Extractors and outputters can be used to define and implement functions that extend the capabilities of the event-based query language. A script written in the extended query language can be translated into an optimal parallel continuous execution plan. Execution of the plan can be orchestrated by a streaming job manager which schedules vertices on available computing machines. The streaming job manager can monitor overall job execution. Fault tolerance can be provided by tracking execution progress and data dependencies in each vertex. In the event of a failure, another instance of the failed vertex can be scheduled. An optimal recovery point can be determined based on checkpoints and data dependencies.
    Type: Application
    Filed: January 16, 2019
    Publication date: May 30, 2019
    Inventors: Jingren Zhou, Zhengping Qian, Peter Zabback, Wei Lin
  • Patent number: 10225302
    Abstract: A low-latency cloud-scale computation environment includes a query language, optimization, scheduling, fault tolerance and fault recovery. An event model can be used to extend a declarative query language so that temporal analysis of event of an event stream can be performed. Extractors and outputters can be used to define and implement functions that extend the capabilities of the event-based query language. A script written in the extended query language can be translated into an optimal parallel continuous execution plan. Execution of the plan can be orchestrated by a streaming job manager which schedules vertices on available computing machines. The streaming job manager can monitor overall job execution. Fault tolerance can be provided by tracking execution progress and data dependencies in each vertex. In the event of a failure, another instance of the failed vertex can be scheduled. An optimal recovery point can be determined based on checkpoints and data dependencies.
    Type: Grant
    Filed: April 7, 2017
    Date of Patent: March 5, 2019
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Jingren Zhou, Zhengping Qian, Peter Zabback, Wei Lin
  • Patent number: 9965520
    Abstract: A logical merge module is described herein for producing an output stream which is logically compatible with two or more physically divergent input streams. Representative applications of the logical merge module are also set forth herein.
    Type: Grant
    Filed: June 17, 2011
    Date of Patent: May 8, 2018
    Assignee: Microsoft Corporation
    Inventors: Badrish Chandramouli, David E. Maier, Jonathan D. Goldstein, Peter A. Zabback
  • Publication number: 20170339202
    Abstract: A low-latency cloud-scale computation environment includes a query language, optimization, scheduling, fault tolerance and fault recovery. An event model can be used to extend a declarative query language so that temporal analysis of event of an event stream can be performed. Extractors and outputters can be used to define and implement functions that extend the capabilities of the event-based query language. A script written in the extended query language can be translated into an optimal parallel continuous execution plan. Execution of the plan can be orchestrated by a streaming job manager which schedules vertices on available computing machines. The streaming job manager can monitor overall job execution. Fault tolerance can be provided by tracking execution progress and data dependencies in each vertex. In the event of a failure, another instance of the failed vertex can be scheduled. An optimal recovery point can be determined based on checkpoints and data dependencies.
    Type: Application
    Filed: April 7, 2017
    Publication date: November 23, 2017
    Inventors: Jingren Zhou, Zhengping Qian, Peter Zabback, Wei Lin
  • Patent number: 9641580
    Abstract: A low-latency cloud-scale computation environment includes a query language, optimization, scheduling, fault tolerance and fault recovery. An event model can be used to extend a declarative query language so that temporal analysis of event of an event stream can be performed. Extractors and outputters can be used to define and implement functions that extend the capabilities of the event-based query language. A script written in the extended query language can be translated into an optimal parallel continuous execution plan. Execution of the plan can be orchestrated by a streaming job manager which schedules vertices on available computing machines. The streaming job manager can monitor overall job execution. Fault tolerance can be provided by tracking execution progress and data dependencies in each vertex. In the event of a failure, another instance of the failed vertex can be scheduled. An optimal recovery point can be determined based on checkpoints and data dependencies.
    Type: Grant
    Filed: July 1, 2014
    Date of Patent: May 2, 2017
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Jingren Zhou, Zhengping Qian, Peter Zabback, Wei Lin
  • Publication number: 20160006779
    Abstract: A low-latency cloud-scale computation environment includes a query language, optimization, scheduling, fault tolerance and fault recovery. An event model can be used to extend a declarative query language so that temporal analysis of event of an event stream can be performed. Extractors and outputters can be used to define and implement functions that extend the capabilities of the event-based query language. A script written in the extended query language can be translated into an optimal parallel continuous execution plan. Execution of the plan can be orchestrated by a streaming job manager which schedules vertices on available computing machines. The streaming job manager can monitor overall job execution. Fault tolerance can be provided by tracking execution progress and data dependencies in each vertex. In the event of a failure, another instance of the failed vertex can be scheduled. An optimal recovery point can be determined based on checkpoints and data dependencies.
    Type: Application
    Filed: July 1, 2014
    Publication date: January 7, 2016
    Inventors: Jingren Zhou, Zhengping Qian, Peter Zabback, Wei Lin
  • Patent number: 8726076
    Abstract: A checkpoint marker can be received at a first operator. The first operator can process the checkpoint marker by sending the checkpoint marker to a second operator and sending state checkpoint information representing a state of the first operator to a checkpoint writer. The checkpoint information can be used to rehydrate the state of one or more operators. For example, after a system failure, system shutdown, etc., checkpoint information can be received from a reader unit at a checkpoint information input queue of the first operator. A state of the first operator can be rehydrated using the checkpoint information. Processing of information in a data input queue of the first operator can be suspended while the checkpoint information is used to rehydrate the state of the first operator. Other operators in a system with the first operator (e.g., the second operator) may be checkpointed and rehydrated in the same manner as the first operator.
    Type: Grant
    Filed: May 27, 2011
    Date of Patent: May 13, 2014
    Assignee: Microsoft Corporation
    Inventors: Jonathan D. Goldstein, Peter A. Zabback, Badrish Chandramouli
  • Publication number: 20120324453
    Abstract: A logical merge module is described herein for producing an output stream which is logically compatible with two or more physically divergent input streams. Representative applications of the logical merge module are also set forth herein.
    Type: Application
    Filed: June 17, 2011
    Publication date: December 20, 2012
    Applicant: Microsoft Corporation
    Inventors: Badrish Chandramouli, David E. Maier, Jonathan D. Goldstein, Peter A. Zabback
  • Publication number: 20120304003
    Abstract: A checkpoint marker can be received at a first operator. The first operator can process the checkpoint marker by sending the checkpoint marker to a second operator and sending state checkpoint information representing a state of the first operator to a checkpoint writer. The checkpoint information can be used to rehydrate the state of one or more operators. For example, after a system failure, system shutdown, etc., checkpoint information can be received from a reader unit at a checkpoint information input queue of the first operator. A state of the first operator can be rehydrated using the checkpoint information. Processing of information in a data input queue of the first operator can be suspended while the checkpoint information is used to rehydrate the state of the first operator. Other operators in a system with the first operator (e.g., the second operator) may be checkpointed and rehydrated in the same manner as the first operator.
    Type: Application
    Filed: May 27, 2011
    Publication date: November 29, 2012
    Applicant: Microsoft Corporation
    Inventors: Jonathan D. Goldstein, Peter A. Zabback, Badrish Chandramouli
  • 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
  • Patent number: 8086593
    Abstract: Systems and methods that eliminate non-qualifying data for queries against data warehouses and improve execution time, via a dynamic filter component(s). In general, such dynamic filter components are derived from data during processing of the query and without being explicitly defined by the users within a query forwarded to the data warehouse. Moreover, an evaluation component can monitor efficiency of filter components (e.g., number of rows that can be eliminated), and dynamically change and/or update the evaluation order of such filters.
    Type: Grant
    Filed: March 1, 2007
    Date of Patent: December 27, 2011
    Assignee: Microsoft Corporation
    Inventors: Aleksandras Surna, Sreenivas Gukal, Peter Zabback
  • Publication number: 20110093491
    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: Application
    Filed: October 21, 2009
    Publication date: April 21, 2011
    Applicant: MICROSOFT CORPORATION
    Inventors: Peter Zabback, Tihomir Tarnavski, Beysim Sezgin, Tomer Verona
  • Patent number: 7877374
    Abstract: A query execution system is provided. The system includes a monitor component that detects data value changes in a database. An adjustment component initiates an intermediate query in view of detected data value changes, the intermediate query employed to adjust statistics related to a query plan optimization.
    Type: Grant
    Filed: December 1, 2006
    Date of Patent: January 25, 2011
    Assignee: Microsoft Corporation
    Inventors: Peter A. Zabback, Ian Jose
  • Publication number: 20080215556
    Abstract: Systems and methods that eliminate non-qualifying data for queries against data warehouses and improve execution time, via a dynamic filter component(s). In general, such dynamic filter components are derived from data during processing of the query and without being explicitly defined by the users within a query forwarded to the data warehouse. Moreover, an evaluation component can monitor efficiency of filter components (e.g., number of rows that can be eliminated), and dynamically change and/or update the evaluation order of such filters.
    Type: Application
    Filed: March 1, 2007
    Publication date: September 4, 2008
    Applicant: MICROSOFT CORPORATION
    Inventors: Aleksandras Surna, Sreenivas Gukal, Peter Zabback
  • Publication number: 20080133458
    Abstract: A query execution system is provided. The system includes a monitor component that detects data value changes in a database. An adjustment component initiates an intermediate query in view of detected data value changes, the intermediate query employed to adjust statistics related to a query plan optimization.
    Type: Application
    Filed: December 1, 2006
    Publication date: June 5, 2008
    Applicant: MICROSOFT CORPORATION
    Inventors: Peter A. Zabback, Ian Jose
  • Publication number: 20060294058
    Abstract: A method for performing asynchronous statistics updates in a database management system includes receiving a first query against the database, determining if present statistics related to the first query are stale and entering on a queue a request to acquire updated statistics if the present statistics are stale. The queue jobs are executed asynchronously with respect to the query request. As a result, a first query plan may be developed using the present statistics related to the first query. Thus, no delay in processing the query due to statistics updates is incurred. The first query plan may be executed and results given to the requester. At some later time, the request to acquire updated statistics related to the first query is processed asynchronously from the query request. If subsequent queries are received, the queue can delete duplicate requests to update the same statistics. Those subsequent queries can benefit from the updated statistics.
    Type: Application
    Filed: June 28, 2005
    Publication date: December 28, 2006
    Applicant: Microsoft Corporation
    Inventors: Peter Zabback, Conor Cunningham, Keith Elmore, Marc Friedman