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: 20240394187Abstract: Reclamation of a portion of a cache memory in a cloud computing environment is described herein. A cache activeness signal is received from a cache broker. The cache activeness signal is representative of a usage of a first set of cache entries of the cache memory by a first group of computing nodes in a cluster of nodes. A determination to reclaim a portion of the first set of cache entries or of a second set of cache entries is made based at least on the cache activeness signal. The second set of cache entries are utilized by a second group of computing nodes in the cluster of nodes. The determined portion of memory is reclaimed. In an aspect, the cache broker determines a usage of the set of cache entries by the first group of computing nodes and generates the cache activeness signal representative of the determined usage.Type: ApplicationFiled: May 26, 2023Publication date: November 28, 2024Inventors: Junfeng DONG, Ajay KALHAN, Michael E. HABBEN, John M. OSLAKE, Preetham Melavarige GOPALAKRISHNA, Dhrumilkumar Utpalbhai SHAH, Purvi SHAH
-
Publication number: 20240061714Abstract: 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: ApplicationFiled: August 19, 2022Publication date: February 22, 2024Inventors: Sachin Subraya PANDIT, Qun GUO, Pankaj ARORA, Shize XU, Venkat PARTHASARATHY, Ajay KALHAN, John M. OSLAKE
-
Publication number: 20230333975Abstract: 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: ApplicationFiled: June 19, 2023Publication date: October 19, 2023Inventors: 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: 20230259407Abstract: 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: ApplicationFiled: February 17, 2022Publication date: August 17, 2023Inventors: 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: 11726905Abstract: 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: GrantFiled: January 21, 2021Date of Patent: August 15, 2023Assignee: Microsoft Technology Licensing, LLCInventors: 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: 11595319Abstract: 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: GrantFiled: December 21, 2020Date of Patent: February 28, 2023Assignee: Microsoft Technology Licensing, LLCInventors: 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: 11372770Abstract: 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: GrantFiled: September 9, 2020Date of Patent: June 28, 2022Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: 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: 20220200927Abstract: 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: ApplicationFiled: December 21, 2020Publication date: June 23, 2022Inventors: 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: 20220075731Abstract: 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: ApplicationFiled: September 9, 2020Publication date: March 10, 2022Inventors: 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: 11256619Abstract: 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: GrantFiled: August 13, 2019Date of Patent: February 22, 2022Assignee: Microsoft Technology Licensing, LLCInventors: 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: 11169982Abstract: 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: GrantFiled: June 30, 2016Date of Patent: November 9, 2021Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Ajay Kalhan, Tomas Talius, Pankaj Arora, Qun Guo, Shize Xu
-
Patent number: 11150958Abstract: 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: GrantFiled: August 22, 2019Date of Patent: October 19, 2021Assignee: Microsoft Technology Licensing, LLCInventors: Santeri Olavi Voutilainen, Gopala Krishna Reddy Kakivaya, Ajay Kalhan, Lu Xun
-
Publication number: 20210141720Abstract: 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: ApplicationFiled: January 21, 2021Publication date: May 13, 2021Inventors: 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: 10936480Abstract: 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: GrantFiled: May 31, 2019Date of Patent: March 2, 2021Assignee: Microsoft Technology Licensing, LLCInventors: 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: 10891182Abstract: 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: GrantFiled: January 25, 2019Date of Patent: January 12, 2021Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Hao Xia, Todd F. Pfleiger, Mark C. Benvenuto, Ajay Kalhan
-
Publication number: 20200379896Abstract: 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: ApplicationFiled: May 31, 2019Publication date: December 3, 2020Inventors: 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: 20200349067Abstract: 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: ApplicationFiled: August 13, 2019Publication date: November 5, 2020Inventors: 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: 20200050495Abstract: 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: ApplicationFiled: August 22, 2019Publication date: February 13, 2020Inventors: Santeri Olavi Voutilainen, Gopala Krishna Reddy Kakivaya, Ajay Kalhan, Lu Xun
-
Patent number: 10423460Abstract: 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: GrantFiled: January 7, 2017Date of Patent: September 24, 2019Assignee: Microsoft Technology Licensing, LLCInventors: Santeri Olavi Voutilainen, Gopala Krishna Reddy Kakivaya, Ajay Kalhan, Lu Xun
-
Publication number: 20190155677Abstract: 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: ApplicationFiled: January 25, 2019Publication date: May 23, 2019Inventors: Hao XIA, Todd F. PFLEIGER, Mark C. BENVENUTO, Ajay KALHAN