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: 10574750Abstract: 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: GrantFiled: September 1, 2015Date of Patent: February 25, 2020Assignee: Microsoft Technology Licensing, LLCInventors: 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: 10320623Abstract: 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: GrantFiled: May 24, 2017Date of Patent: June 11, 2019Assignee: Microsoft Technology Licensing, LLCInventors: Raghu Kolluru, David Nunez Tejerina, Siddhartha Mathur, James Kleewein, Adrian Hamza, Ozan Ozhan
-
Publication number: 20170264505Abstract: 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: ApplicationFiled: May 24, 2017Publication date: September 14, 2017Applicant: Microsoft Technology Licensing, LLCInventors: Raghu KOLLURU, David Nunez TEJERINA, Siddhartha MATHUR, James KLEEWEIN, Adrian HAMZA, Ozan OZHAN
-
Patent number: 9686152Abstract: 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: GrantFiled: January 27, 2012Date of Patent: June 20, 2017Assignee: Microsoft Technology Licensing, LLCInventors: Raghu Kolluru, David Nunez Tejerina, Siddhartha Mathur, James Kleewein, Adrian Hamza, Ozan Ozhan
-
Publication number: 20160316016Abstract: 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: ApplicationFiled: September 1, 2015Publication date: October 27, 2016Inventors: 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: 8924589Abstract: 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: GrantFiled: September 7, 2012Date of Patent: December 30, 2014Assignee: Microsoft CorporationInventors: Gregory Thiel, Alexander R. Wetmore, Ayla Kol, Rebecca Benfield, James Kleewein, Naresh Sundaram, Yogesh Bansal, Mark Wistrom, Manoharan Kuppusamy
-
Patent number: 8744979Abstract: 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: GrantFiled: December 6, 2010Date of Patent: June 3, 2014Assignee: Microsoft CorporationInventors: Tore Sundelin, James Kleewein, James Edelen, Jorge Pereira, Alexander Wetmore, John Winn
-
Publication number: 20130198363Abstract: 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: ApplicationFiled: January 27, 2012Publication date: August 1, 2013Applicant: MICROSOFT CORPORATIONInventors: Raghu Kolluru, David Nunez Tejerina, Siddhartha Mathur, James Kleewein, Adrian Hamza, Ozan Ozhan
-
Publication number: 20120331336Abstract: 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: ApplicationFiled: September 7, 2012Publication date: December 27, 2012Applicant: MICROSOFT CORPORATIONInventors: Gregory Thiel, Alexander R. Wetmore, Ayla Kol, Rebecca Benfield, James Kleewein, Naresh Sundaram, Yogesh Bansal, Mark Wistrom, Manoharan Kuppusamy
-
Patent number: 8275907Abstract: 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: GrantFiled: June 26, 2008Date of Patent: September 25, 2012Assignee: Microsoft CorporationInventors: Gregory Thiel, Alexander R. Wetmore, Ayla Kol, Rebecca Benfield, James Kleewein, Naresh Sundaram, Yogesh Bansal, Mark Wistrom, Manoharan Kuppusamy
-
Publication number: 20120143798Abstract: 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: ApplicationFiled: December 6, 2010Publication date: June 7, 2012Applicant: MICROSOFT CORPORATIONInventors: Tore Sundelin, James Kleewein, James Edelen, Jorge Pereira, Alexander Wetmore, John Winn
-
Publication number: 20090327519Abstract: 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: ApplicationFiled: June 26, 2008Publication date: December 31, 2009Applicant: MICROSOFT CORPORATIONInventors: Gregory Thiel, Alexander R. Wetmore, Ayla Kol, Rebecca Benfield, James Kleewein, Naresh Sundaram, Yogesh Bansal, Mark Wistrom, Manoharan Kuppusamy
-
Publication number: 20080040337Abstract: 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: ApplicationFiled: August 13, 2007Publication date: February 14, 2008Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Edison Ting, James Kleewein
-
Publication number: 20080033975Abstract: 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: ApplicationFiled: August 13, 2007Publication date: February 7, 2008Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Edison Ting, James Kleewein
-
Publication number: 20060075000Abstract: 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: ApplicationFiled: October 6, 2004Publication date: April 6, 2006Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: James Kleewein, Edison Ting
-
Publication number: 20060004791Abstract: 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: ApplicationFiled: June 21, 2004Publication date: January 5, 2006Inventors: James Kleewein, Edison Ting
-
Publication number: 20050021515Abstract: 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: ApplicationFiled: July 22, 2003Publication date: January 27, 2005Inventors: Edison Ting, James Kleewein
-
Publication number: 20050018152Abstract: 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: ApplicationFiled: July 22, 2003Publication date: January 27, 2005Inventors: Edison Ting, James Kleewein