Patents by Inventor James Kleewein

James Kleewein 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: 10574750
    Abstract: Network services may include data associated with one or more entities. An aggregator service may host respective application programming interfaces (APIs) of the services at a single endpoint of the network such that the entities, including associations and relationships between entities, may be federated. For example, the services may register the entities of which the data of each of the services is associated with through a declarative entity model to establish an API schema for each of the services, which may be published at the aggregator service. In response to receipt of a request for entity related data from a client, the aggregator service may employ the declarative entity model to determine which of the services are associated with the entity related data such that a query may be submitted to the services, and how to aggregate responses to the query received from the services for transmission to the client.
    Type: Grant
    Filed: September 1, 2015
    Date of Patent: February 25, 2020
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Yina Arenas, Dmitry Pugachev, Robert Howard, Sriram Dhanasekaran, Marek Rycharski, Vijaya Manohararaj, Daniel Kershaw, James Kleewein, Anthony Bloesch, Titus Miron, Vikrant Arora, Murli Satagopan, Jon Rosenberg, Yordan Rouskov
  • Patent number: 10320623
    Abstract: Techniques to track resource usage statistics per transaction across multiple layers of protocols and across multiple threads, processes and/or devices are disclosed. In one embodiment, for example, a technique may comprise assigning an activity context to a request at the beginning of a first stage, where the activity context has an initial set of properties. The values of the properties may be assigned to the properties in the initial set during the first stage. The value of a property may be stored on a data store local to the first stage. The activity context may be transferred to a second stage when the request begins the second stage. The transferred activity context may include a property from the initial set of properties. The stored values may be analyzed to determine a resource usage statistic. Other embodiments are described and claimed.
    Type: Grant
    Filed: May 24, 2017
    Date of Patent: June 11, 2019
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Raghu Kolluru, David Nunez Tejerina, Siddhartha Mathur, James Kleewein, Adrian Hamza, Ozan Ozhan
  • Publication number: 20170264505
    Abstract: Techniques to track resource usage statistics per transaction across multiple layers of protocols and across multiple threads, processes and/or devices are disclosed. In one embodiment, for example, a technique may comprise assigning an activity context to a request at the beginning of a first stage, where the activity context has an initial set of properties. The values of the properties may be assigned to the properties in the initial set during the first stage. The value of a property may be stored on a data store local to the first stage. The activity context may be transferred to a second stage when the request begins the second stage. The transferred activity context may include a property from the initial set of properties. The stored values may be analyzed to determine a resource usage statistic. Other embodiments are described and claimed.
    Type: Application
    Filed: May 24, 2017
    Publication date: September 14, 2017
    Applicant: Microsoft Technology Licensing, LLC
    Inventors: Raghu KOLLURU, David Nunez TEJERINA, Siddhartha MATHUR, James KLEEWEIN, Adrian HAMZA, Ozan OZHAN
  • Patent number: 9686152
    Abstract: Techniques to track resource usage statistics per transaction across multiple layers of protocols and across multiple threads, processes and/or devices are disclosed. In one embodiment, for example, a technique may comprise assigning an activity context to a request at the beginning of a first stage, where the activity context has an initial set of properties. The values of the properties may be assigned to the properties in the initial set during the first stage. The value of a property may be stored on a data store local to the first stage. The activity context may be transferred to a second stage when the request begins the second stage. The transferred activity context may include a property from the initial set of properties. The stored values may be analyzed to determine a resource usage statistic. Other embodiments are described and claimed.
    Type: Grant
    Filed: January 27, 2012
    Date of Patent: June 20, 2017
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Raghu Kolluru, David Nunez Tejerina, Siddhartha Mathur, James Kleewein, Adrian Hamza, Ozan Ozhan
  • Publication number: 20160316016
    Abstract: Network services may include data associated with one or more entities. An aggregator service may host respective application programming interfaces (APIs) of the services at a single endpoint of the network such that the entities, including associations and relationships between entities, may be federated. For example, the services may register the entities of which the data of each of the services is associated with through a declarative entity model to establish an API schema for each of the services, which may be published at the aggregator service. In response to receipt of a request for entity related data from a client, the aggregator service may employ the declarative entity model to determine which of the services are associated with the entity related data such that a query may be submitted to the services, and how to aggregate responses to the query received from the services for transmission to the client.
    Type: Application
    Filed: September 1, 2015
    Publication date: October 27, 2016
    Inventors: Yina Arenas, Dmitry Pugachev, Robert Howard, Sriram Dhanasekaran, Marek Rycharski, Vijaya Manohararaj, Daniel Kershaw, James Kleewein, Anthony Bloesch, Titus Miron, Vikrant Arora, Murli Satagopan, Jon Rosenberg, Yordan Rouskov
  • Patent number: 8924589
    Abstract: High availability architecture that employs a mid-tier proxy server to route client communications to active data store instances in response to failover and switchover. The proxy server includes an active manager client that interfaces to an active manager in each of the backend servers. State information and configuration information are maintained separately and according to semantics consistent with needs of corresponding data, the configuration information changing less frequently and more available, the state information changing more frequently and less available. The active manager indicates to the proxy server which of the data storage instances is the currently the active instance. In the event that the currently active instance is inactive, the proxy server selects a different backend server that currently hosts the active data store instance. Client communications are then routed to the different backend server with minimal or no interruption to the client.
    Type: Grant
    Filed: September 7, 2012
    Date of Patent: December 30, 2014
    Assignee: Microsoft Corporation
    Inventors: Gregory Thiel, Alexander R. Wetmore, Ayla Kol, Rebecca Benfield, James Kleewein, Naresh Sundaram, Yogesh Bansal, Mark Wistrom, Manoharan Kuppusamy
  • Patent number: 8744979
    Abstract: Triaging electronic communications in a computing system environment can mitigate issues related to large volumes of incoming electronic communications. This can include an analysis of user-specific electronic communication data and associated behaviors to predict which communications a user is likely to deem important or unimportant. Client-side application features are exposed based on the evaluation of communication importance to enable the user to process arbitrarily large volumes of incoming communications.
    Type: Grant
    Filed: December 6, 2010
    Date of Patent: June 3, 2014
    Assignee: Microsoft Corporation
    Inventors: Tore Sundelin, James Kleewein, James Edelen, Jorge Pereira, Alexander Wetmore, John Winn
  • Publication number: 20130198363
    Abstract: Techniques to track resource usage statistics per transaction across multiple layers of protocols and across multiple threads, processes and/or devices are disclosed. In one embodiment, for example, a technique may comprise assigning an activity context to a request at the beginning of a first stage, where the activity context has an initial set of properties. The values of the properties may be assigned to the properties in the initial set during the first stage. The value of a property may be stored on a data store local to the first stage. The activity context may be transferred to a second stage when the request begins the second stage. The transferred activity context may include a property from the initial set of properties. The stored values may be analyzed to determine a resource usage statistic. Other embodiments are described and claimed.
    Type: Application
    Filed: January 27, 2012
    Publication date: August 1, 2013
    Applicant: MICROSOFT CORPORATION
    Inventors: Raghu Kolluru, David Nunez Tejerina, Siddhartha Mathur, James Kleewein, Adrian Hamza, Ozan Ozhan
  • Publication number: 20120331336
    Abstract: High availability architecture that employs a mid-tier proxy server to route client communications to active data store instances in response to failover and switchover. The proxy server includes an active manager client that interfaces to an active manager in each of the backend servers. State information and configuration information are maintained separately and according to semantics consistent with needs of corresponding data, the configuration information changing less frequently and more available, the state information changing more frequently and less available. The active manager indicates to the proxy server which of the data storage instances is the currently the active instance. In the event that the currently active instance is inactive, the proxy server selects a different backend server that currently hosts the active data store instance. Client communications are then routed to the different backend server with minimal or no interruption to the client.
    Type: Application
    Filed: September 7, 2012
    Publication date: December 27, 2012
    Applicant: MICROSOFT CORPORATION
    Inventors: Gregory Thiel, Alexander R. Wetmore, Ayla Kol, Rebecca Benfield, James Kleewein, Naresh Sundaram, Yogesh Bansal, Mark Wistrom, Manoharan Kuppusamy
  • Patent number: 8275907
    Abstract: High availability architecture that employs a mid-tier proxy server to route client communications to active data store instances in response to failover and switchover. The proxy server includes an active manager client that interfaces to an active manager in each of the backend servers. State information and configuration information are maintained separately and according to semantics consistent with needs of corresponding data, the configuration information changing less frequently and more available, the state information changing more frequently and less available. The active manager indicates to the proxy server which of the data storage instances is the currently the active instance. In the event that the currently active instance is inactive, the proxy server selects a different backend server that currently hosts the active data store instance. Client communications are then routed to the different backend server with minimal or no interruption to the client.
    Type: Grant
    Filed: June 26, 2008
    Date of Patent: September 25, 2012
    Assignee: Microsoft Corporation
    Inventors: Gregory Thiel, Alexander R. Wetmore, Ayla Kol, Rebecca Benfield, James Kleewein, Naresh Sundaram, Yogesh Bansal, Mark Wistrom, Manoharan Kuppusamy
  • Publication number: 20120143798
    Abstract: Triaging electronic communications in a computing system environment can mitigate issues related to large volumes of incoming electronic communications. This can include an analysis of user-specific electronic communication data and associated behaviors to predict which communications a user is likely to deem important or unimportant. Client-side application features are exposed based on the evaluation of communication importance to enable the user to process arbitrarily large volumes of incoming communications.
    Type: Application
    Filed: December 6, 2010
    Publication date: June 7, 2012
    Applicant: MICROSOFT CORPORATION
    Inventors: Tore Sundelin, James Kleewein, James Edelen, Jorge Pereira, Alexander Wetmore, John Winn
  • Publication number: 20090327519
    Abstract: High availability architecture that employs a mid-tier proxy server to route client communications to active data store instances in response to failover and switchover. The proxy server includes an active manager client that interfaces to an active manager in each of the backend servers. State information and configuration information are maintained separately and according to semantics consistent with needs of corresponding data, the configuration information changing less frequently and more available, the state information changing more frequently and less available. The active manager indicates to the proxy server which of the data storage instances is the currently the active instance. In the event that the currently active instance is inactive, the proxy server selects a different backend server that currently hosts the active data store instance. Client communications are then routed to the different backend server with minimal or no interruption to the client.
    Type: Application
    Filed: June 26, 2008
    Publication date: December 31, 2009
    Applicant: MICROSOFT CORPORATION
    Inventors: Gregory Thiel, Alexander R. Wetmore, Ayla Kol, Rebecca Benfield, James Kleewein, Naresh Sundaram, Yogesh Bansal, Mark Wistrom, Manoharan Kuppusamy
  • Publication number: 20080040337
    Abstract: Method for ordering nodes within hierarchical data. The concept of isolated ordered regions to maintain coordinates of nodes is used by associating each node with coordinates relative to a containing region. Modifications to nodes within a region only affect the nodes in that region, and not nodes in other regions. Traversals that retrieve information from the nodes can rebase the coordinates from their containing region and return with a total order.
    Type: Application
    Filed: August 13, 2007
    Publication date: February 14, 2008
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Edison Ting, James Kleewein
  • Publication number: 20080033975
    Abstract: Method for ordering nodes within hierarchical data. The concept of isolated ordered regions to maintain coordinates of nodes is used by associating each node with coordinates relative to a containing region. Modifications to nodes within a region only affect the nodes in that region, and not nodes in other regions. Traversals that retrieve information from the nodes can rebase the coordinates from their containing region and return with a total order.
    Type: Application
    Filed: August 13, 2007
    Publication date: February 7, 2008
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Edison Ting, James Kleewein
  • Publication number: 20060075000
    Abstract: A mechanism is described for transient versioning in architectures that manage node ranges, wherein each node is assigned a node ID value and a set of nodes form a range of node IDs called a node range. Each entry in the index describes one range and points to where the range is located. Individual nodes are located by finding the correct range in the index. When nodes are added to or deleted from a node range, the range of nodes are versioned by copying the nodes before changes, to transient storage, and then the original nodes are modified. Different versions are tracked by assigning timestamps to each copy of the node range. Each entry in the node ID range index points to the location of the nodes in a range called the range identifier or RID. Before changes are made in a range, the nodes in a range are copied to a Version Hash Table based on the RID. Copies of the range including the current one is assigned a timestamp or LSN.
    Type: Application
    Filed: October 6, 2004
    Publication date: April 6, 2006
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: James Kleewein, Edison Ting
  • Publication number: 20060004791
    Abstract: A method of computing pseudo keys facilitates the bounding of node ID ranges. Pseudo keys are computed to facilitate node location in node ID ranges that have been split. A pseudo previous high key is computed by decrementing the last digit of the lowest node ID value in a newly formed node ID range by one and by appending ‘x’.‘x’. A computed pseudo key has no previous siblings or descendants of previous sibling having a node ID higher in value than a computed pseudo previous high key. Pseudo keys are also computed to define boundaries of a sub-tree. The range determined by a pseudo previous high key for a highest valued root node and a pseudo sub-tree high key bounds a sub-tree. Sub-tree pseudo keys are also comprised of a pseudo sub-tree low key and a pseudo end of document key.
    Type: Application
    Filed: June 21, 2004
    Publication date: January 5, 2006
    Inventors: James Kleewein, Edison Ting
  • Publication number: 20050021515
    Abstract: Method for ordering nodes within hierarchical data. The concept of isolated ordered regions to maintain coordinates of nodes is used by associating each node with coordinates relative to a containing region. Modifications to nodes within a region only affect the nodes in that region, and not nodes in other regions. Traversals that retrieve information from the nodes can rebase the coordinates from their containing region and return with a total order.
    Type: Application
    Filed: July 22, 2003
    Publication date: January 27, 2005
    Inventors: Edison Ting, James Kleewein
  • Publication number: 20050018152
    Abstract: The concept of isolated ordered regions to maintain coordinates of nodes is used by associating each node with coordinates relative to a containing region. Modifications to nodes within a region only affect the nodes in that region, and not nodes in other regions. Traversals that retrieve information from the nodes can rebase the coordinates from their containing region and return with a total order. Access patterns and usage are used to recognize and prefetch pages. The probability of revisiting traversed nodes are identified and pages in a bufferpool are replaced based upon the identified probabilities (e.g., replacing pages with the least probability of a revisit).
    Type: Application
    Filed: July 22, 2003
    Publication date: January 27, 2005
    Inventors: Edison Ting, James Kleewein