Patents by Inventor Ajay Kalhan

Ajay Kalhan 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).

  • Publication number: 20240061714
    Abstract: Systems, methods, and devices are described for managing cloud services implemented by one or more clusters in a cloud computing environment. Responsive to receiving a first notification indicating that a cloud service implemented by the one or more clusters has not been used for a first predetermined amount of time, the cloud service is maintained in an active state and metadata is updated that specifies the cloud service is in a deactivated state. The metadata is visible to a user interface of a management portal of the cloud computing environment. Responsive to receiving a second notification indicating that the cloud service has not been used for a second predetermined amount of time following the first predetermined amount of time, a deactivation workflow is instantiated to deactivate the cloud service. In a further aspect, a cloud service engine generates the first and second notifications.
    Type: Application
    Filed: August 19, 2022
    Publication date: February 22, 2024
    Inventors: Sachin Subraya PANDIT, Qun GUO, Pankaj ARORA, Shize XU, Venkat PARTHASARATHY, Ajay KALHAN, John M. OSLAKE
  • Publication number: 20230333975
    Abstract: Intelligent memory brokering for multiple process instances, such as relational databases (e.g., SQL servers), reclaims memory based on value, thereby minimizing cost across instances. An exemplary solution includes: based at least on a trigger event, determining a memory profile for each of a plurality of process instances at a computing node; determining an aggregate memory profile, the aggregate memory profile indicating a memory unit cost for each of a plurality of memory units; determining a count of memory units to be reclaimed; identifying, based at least on the aggregate memory profile and the count of memory units to be reclaimed, a count of memory units to be reclaimed within each process instance so that a total cost is minimized to reclaim the determined count; and communicating, to each process instance having identified memory units to be reclaimed, a count of memory units to be reclaimed within the process instance.
    Type: Application
    Filed: June 19, 2023
    Publication date: October 19, 2023
    Inventors: Manoj SYAMALA, Vivek NARASAYYA, Junfeng DONG, Ajay KALHAN, Shize XU, Changsong LI, Pankaj ARORA, Jiaqi LIU, John M. OSLAKE, Arnd Christian KÖNIG
  • Publication number: 20230259407
    Abstract: Methods, systems, and computer program products are provided for a compute cluster comprising placement and load balancing (PLB) logic that receives data (e.g., state metadata) relating to a service (e.g., database service) executing on the compute cluster, from a resource manager executing on the compute cluster, via a first API associated with the resource manager. The PLB logic receives second data from the service via a second API and determines whether a PLB action is indicated based on one of the second data or a combination of the first data and the second data. When a PLB action is indicated, the PLB logic sends a command to the resource manager to execute the PLB action. The PLB logic also receives queries from clients external to the compute cluster and may spawn a child PLB logic to offload PLB operations, respond to queries, or perform software validation in the child.
    Type: Application
    Filed: February 17, 2022
    Publication date: August 17, 2023
    Inventors: Willis LANG, Justin Grant MOELLER, Ajay KALHAN, Monika COLIC, Aleksandar CUKANOVIC, Nikola PUZOVIC, Marko STOJANOVIC, Jiaqi LIU, Arnd Christian KÖNIG, Yi SHAN, Vivek Ravindranath NARASAYYA
  • Patent number: 11726905
    Abstract: Intelligent memory brokering for multiple process instances, such as relational databases (e.g., SQL servers), reclaims memory based on value, thereby minimizing cost across instances. An exemplary solution includes: based at least on a trigger event, determining a memory profile for each of a plurality of process instances at a computing node; determining an aggregate memory profile, the aggregate memory profile indicating a memory unit cost for each of a plurality of memory units; determining a count of memory units to be reclaimed; identifying, based at least on the aggregate memory profile and the count of memory units to be reclaimed, a count of memory units to be reclaimed within each process instance so that a total cost is minimized to reclaim the determined count; and communicating, to each process instance having identified memory units to be reclaimed, a count of memory units to be reclaimed within the process instance.
    Type: Grant
    Filed: January 21, 2021
    Date of Patent: August 15, 2023
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Manoj Syamala, Vivek Narasayya, Junfeng Dong, Ajay Kalhan, Shize Xu, Changsong Li, Pankaj Arora, Jiaqi Liu, John M. Oslake, Arnd Christian König
  • Patent number: 11595319
    Abstract: Techniques for differential overbooking on a cloud database. These techniques may include determining a reservation amount of a multi-tenant resource for a first service of a based upon an overbooking characteristic of the first service, and determining that a total usage value of the multi-tenant resource by a plurality of services is greater than a threshold value. In addition, the techniques may include determining a service usage value of the multi-tenant resource by the first service, determining a first overage value of the first service based on the service usage value and the reservation amount, and performing a resource reclamation process over the multi-tenant resource based on the first overage value of the first service.
    Type: Grant
    Filed: December 21, 2020
    Date of Patent: February 28, 2023
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Changsong Li, Ajay Kalhan, Pankaj Arora, Junfeng Dong, Yi Shan, Christian Konig, Manoj Syamala, Vivek Narasayya, Shize Xu, John M. Oslake, Jiaqi Liu
  • Patent number: 11372770
    Abstract: Methods for determining cache activity and for optimizing cache reclamation are performed by systems and devices. A cache entry access is determined at an access time, and a data object of the cache entry for a current time window is identified that includes a time stamp for a previous access and a counter index. A conditional counter operation is then performed on the counter associated with the index to increment the counter when the time stamp is outside the time window or to maintain the counter when the time stamp is within the time window. A counter index that identifies another counter for a previous time window where the other counter value was incremented for the previous cache entry access causes the other counter to be decremented. A cache configuration command to reclaim, or additionally allocate space to, the cache is generated based on the values of the counters.
    Type: Grant
    Filed: September 9, 2020
    Date of Patent: June 28, 2022
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Junfeng Dong, Ajay Kalhan, Manoj A. Syamala, Vivek R. Narasayya, Changsong Li, Shize Xu, Pankaj Arora, John M. Oslake, Arnd Christian König, Jiaqi Liu
  • Publication number: 20220200927
    Abstract: Techniques for differential overbooking on a cloud database. These techniques may include determining a reservation amount of a multi-tenant resource for a first service of a based upon an overbooking characteristic of the first service, and determining that a total usage value of the multi-tenant resource by a plurality of services is greater than a threshold value. In addition, the techniques may include determining a service usage value of the multi-tenant resource by the first service, determining a first overage value of the first service based on the service usage value and the reservation amount, and performing a resource reclamation process over the multi-tenant resource based on the first overage value of the first service.
    Type: Application
    Filed: December 21, 2020
    Publication date: June 23, 2022
    Inventors: Changsong Li, Ajay Kalhan, Pankaj Arora, Junfeng Dong, Yi Shan, Christian Konig, Manoj Syamala, Vivek Narasayya, Shize Xu, John M. Oslake, Jiaqi Liu
  • Publication number: 20220075731
    Abstract: Methods for determining cache activity and for optimizing cache reclamation are performed by systems and devices. A cache entry access is determined at an access time, and a data object of the cache entry for a current time window is identified that includes a time stamp for a previous access and a counter index. A conditional counter operation is then performed on the counter associated with the index to increment the counter when the time stamp is outside the time window or to maintain the counter when the time stamp is within the time window. A counter index that identifies another counter for a previous time window where the other counter value was incremented for the previous cache entry access causes the other counter to be decremented. A cache configuration command to reclaim, or additionally allocate space to, the cache is generated based on the values of the counters.
    Type: Application
    Filed: September 9, 2020
    Publication date: March 10, 2022
    Inventors: Junfeng DONG, Ajay KALHAN, Manoj A. SYAMALA, Vivek R. NARASAYYA, Changsong LI, Shize XU, Pankaj ARORA, John M. OSLAKE, Arnd Christian KÖNIG, Jiaqi LIU
  • Patent number: 11256619
    Abstract: A solution is disclosed for memory management of serverless databases that includes: based at least on detecting a trigger event, determining whether memory is to be reclaimed; based at least on determining that memory is to be reclaimed, determining an amount of memory to be reclaimed; identifying memory to be reclaimed; and reclaiming the identified memory. Disclosed solutions are flexible, enabling customization of the aggressiveness and manner of memory reclamation. This permits users to specify a tailored balance point between performance and cost, for arrangements that bill users based on resource usage (e.g., memory consumed by a serverless database). In some examples, users specify a ramp-down parameter that is used to determine how much memory can be evicted in a particular reclamation event, time intervals (or another criteria) for triggering a reclamation event, and a definition for whether a cache is active.
    Type: Grant
    Filed: August 13, 2019
    Date of Patent: February 22, 2022
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Manoj Syamala, Arnd Christian König, Vivek Narasayya, Junfeng Dong, Ajay Kalhan, Shize Xu, Changsong Li, Pankaj Arora, Jiaqi Liu, John M. Oslake
  • Patent number: 11169982
    Abstract: Managing databases implemented in a cloud computing environment. A method includes detecting that a database implemented in the cloud computing environment is in a state of non-use. The method further includes as a result of detecting that a database implemented in the cloud computing environment is in a state of non-use, instantiating a workload in the cloud computing environment to deactivate the database. The workload is configured to store metadata for the database and database data remotely in cloud storage such that the database can be reactivated at a later time.
    Type: Grant
    Filed: June 30, 2016
    Date of Patent: November 9, 2021
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Ajay Kalhan, Tomas Talius, Pankaj Arora, Qun Guo, Shize Xu
  • Patent number: 11150958
    Abstract: Systems and methods that restore a failed reconfiguration of nodes in a distributed environment. By analyzing reports from read/write quorums of nodes associated with a configuration, automatic recovery for data partitions can be facilitated. Moreover, a configuration manager component tracks current configurations for replication units and determines whether a reconfiguration is required (e.g., due to node failures, node recovery, replica additions/deletions, replica moves, or replica role changes, and the like.) Reconfigurations of data activated as being replicated from an old configuration to being replicated on a new configuration may be performed in a transactionally consistent manner based on dynamic quorums associated with the new configuration and the old configuration.
    Type: Grant
    Filed: August 22, 2019
    Date of Patent: October 19, 2021
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Santeri Olavi Voutilainen, Gopala Krishna Reddy Kakivaya, Ajay Kalhan, Lu Xun
  • Publication number: 20210141720
    Abstract: Intelligent memory brokering for multiple process instances, such as relational databases (e.g., SQL servers), reclaims memory based on value, thereby minimizing cost across instances. An exemplary solution includes: based at least on a trigger event, determining a memory profile for each of a plurality of process instances at a computing node; determining an aggregate memory profile, the aggregate memory profile indicating a memory unit cost for each of a plurality of memory units; determining a count of memory units to be reclaimed; identifying, based at least on the aggregate memory profile and the count of memory units to be reclaimed, a count of memory units to be reclaimed within each process instance so that a total cost is minimized to reclaim the determined count; and communicating, to each process instance having identified memory units to be reclaimed, a count of memory units to be reclaimed within the process instance.
    Type: Application
    Filed: January 21, 2021
    Publication date: May 13, 2021
    Inventors: Manoj SYAMALA, Vivek NARASAYYA, Junfeng DONG, Ajay KALHAN, Shize XU, Changsong LI, Pankaj ARORA, Jiaqi LIU, John M. OSLAKE, Arnd Christian KÖNIG
  • Patent number: 10936480
    Abstract: Intelligent memory brokering for multiple process instances, such as relational databases (e.g., SQL servers), reclaims memory based on value, thereby minimizing cost across instances. An exemplary solution includes: based at least on a trigger event, determining a memory profile for each of a plurality of process instances at a computing node; determining an aggregate memory profile, the aggregate memory profile indicating a memory unit cost for each of a plurality of memory units; determining a count of memory units to be reclaimed; identifying, based at least on the aggregate memory profile and the count of memory units to be reclaimed, a count of memory units to be reclaimed within each process instance so that a total cost is minimized to reclaim the determined count; and communicating, to each process instance having identified memory units to be reclaimed, a count of memory units to be reclaimed within the process instance.
    Type: Grant
    Filed: May 31, 2019
    Date of Patent: March 2, 2021
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Manoj Syamala, Vivek Narasayya, Junfeng Dong, Ajay Kalhan, Shize Xu, Changsong Li, Pankaj Arora, Jiaqi Liu, John M. Oslake, Arnd Christian König
  • Patent number: 10891182
    Abstract: Embodiments are directed to predicting the health of a computer node using health report data and to proactively handling failures in computer network nodes. In an embodiment, a computer system monitors various health indicators for multiple nodes in a computer network. The computer system accesses stored health indicators that provide a health history for the computer network nodes. The computer system then generates a health status based on the monitored health indicators and the health history. The generated health status indicates the likelihood that the node will be healthy within a specified future time period. The computer system then leverages the generated health status to handle current or predicted failures. The computer system also presents the generated health status to a user or other entity.
    Type: Grant
    Filed: January 25, 2019
    Date of Patent: January 12, 2021
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Hao Xia, Todd F. Pfleiger, Mark C. Benvenuto, Ajay Kalhan
  • Publication number: 20200379896
    Abstract: Intelligent memory brokering for multiple process instances, such as relational databases (e.g., SQL servers), reclaims memory based on value, thereby minimizing cost across instances. An exemplary solution includes: based at least on a trigger event, determining a memory profile for each of a plurality of process instances at a computing node; determining an aggregate memory profile, the aggregate memory profile indicating a memory unit cost for each of a plurality of memory units; determining a count of memory units to be reclaimed; identifying, based at least on the aggregate memory profile and the count of memory units to be reclaimed, a count of memory units to be reclaimed within each process instance so that a total cost is minimized to reclaim the determined count; and communicating, to each process instance having identified memory units to be reclaimed, a count of memory units to be reclaimed within the process instance.
    Type: Application
    Filed: May 31, 2019
    Publication date: December 3, 2020
    Inventors: Manoj SYAMALA, Vivek NARASAYYA, Junfeng DONG, Ajay KALHAN, Shize XU, Changsong LI, Pankaj ARORA, Jiaqi LIU, John M. OSLAKE, Arnd Christian KÖNIG
  • Publication number: 20200349067
    Abstract: A solution is disclosed for memory management of serverless databases that includes: based at least on detecting a trigger event, determining whether memory is to be reclaimed; based at least on determining that memory is to be reclaimed, determining an amount of memory to be reclaimed; identifying memory to be reclaimed; and reclaiming the identified memory. Disclosed solutions are flexible, enabling customization of the aggressiveness and manner of memory reclamation. This permits users to specify a tailored balance point between performance and cost, for arrangements that bill users based on resource usage (e.g., memory consumed by a serverless database). In some examples, users specify a ramp-down parameter that is used to determine how much memory can be evicted in a particular reclamation event, time intervals (or another criteria) for triggering a reclamation event, and a definition for whether a cache is active.
    Type: Application
    Filed: August 13, 2019
    Publication date: November 5, 2020
    Inventors: Manoj SYAMALA, Arnd Christian KÖNIG, Vivek NARASAYYA, Junfeng DONG, Ajay KALHAN, Shize XU, Changsong LI, Pankaj ARORA, Jiaqi LIU, John M. OSLAKE
  • Publication number: 20200050495
    Abstract: Systems and methods that restore a failed reconfiguration of nodes in a distributed environment. By analyzing reports from read/write quorums of nodes associated with a configuration, automatic recovery for data partitions can be facilitated. Moreover, a configuration manager component tracks current configurations for replication units and determines whether a reconfiguration is required (e.g., due to node failures, node recovery, replica additions/deletions, replica moves, or replica role changes, and the like.) Reconfigurations of data activated as being replicated from an old configuration to being replicated on a new configuration may be performed in a transactionally consistent manner based on dynamic quorums associated with the new configuration and the old configuration.
    Type: Application
    Filed: August 22, 2019
    Publication date: February 13, 2020
    Inventors: Santeri Olavi Voutilainen, Gopala Krishna Reddy Kakivaya, Ajay Kalhan, Lu Xun
  • Patent number: 10423460
    Abstract: Systems and methods that restore failed reconfiguration of nodes in distributed systems. By analyzing reports from read/write quorums of nodes associated with a configuration, automatic recovery for data partitions can be facilitated. Moreover, a configuration manager component tracks current configurations for replication units and determines whether a reconfiguration is to be performed (e.g., due to node failures, node recovery, replica additions/deletions, replica moves, or replica role changes, and the like.) Reconfigurations of data activated as being replicated from a first configuration to a second configuration may be performed in a transactionally consistent manner based on dynamic quorums associated with the second configuration and the first configuration.
    Type: Grant
    Filed: January 7, 2017
    Date of Patent: September 24, 2019
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Santeri Olavi Voutilainen, Gopala Krishna Reddy Kakivaya, Ajay Kalhan, Lu Xun
  • Publication number: 20190155677
    Abstract: Embodiments are directed to predicting the health of a computer node using health report data and to proactively handling failures in computer network nodes. In an embodiment, a computer system monitors various health indicators for multiple nodes in a computer network. The computer system accesses stored health indicators that provide a health history for the computer network nodes. The computer system then generates a health status based on the monitored health indicators and the health history. The generated health status indicates the likelihood that the node will be healthy within a specified future time period. The computer system then leverages the generated health status to handle current or predicted failures. The computer system also presents the generated health status to a user or other entity.
    Type: Application
    Filed: January 25, 2019
    Publication date: May 23, 2019
    Inventors: Hao XIA, Todd F. PFLEIGER, Mark C. BENVENUTO, Ajay KALHAN
  • Patent number: 10225337
    Abstract: Managing cluster resources for a cluster. The method includes identifying a plurality of quiescence policies. Each of the quiescence policies define one or more conditions for cluster entities which when met, identify that cluster resources should be reclaimed from cluster entities by quiescing cluster entities. The method further includes, for each quiescence policy, identifying an amount of reclaimed capacity defining the amount of cluster resources that will be reclaimed by implementing the quiescence policy. The method further includes, for each quiescence policy, identifying an amount of reserve capacity defining the amount of cluster resources that should be reserved for resuming quiesced cluster entities. The method further includes; selecting a quiescence policy based on comparing the reclaimed capacities and reserve capacities for the quiescence policies. The method further includes, booking cluster resources for cluster entities on the cluster according to the selected quiescence policy.
    Type: Grant
    Filed: June 30, 2016
    Date of Patent: March 5, 2019
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Karthik Saligrama Ramachandra, David Johns DeWitt, Shize Xu, Qun Guo, Ajay Kalhan, Peter Alan Carlin, Willis Lang