Patents by Inventor Manish Chablani
Manish Chablani 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: 11816084Abstract: Anchor tree cross-merge within a distributed storage system. A computer system identifies a data structure that includes (i) a root anchor tree and (ii) an ordered set of anchor trees that are ordered based on their creation, such that a last anchor tree of the ordered set of anchor trees is most-recently created. The data structure stores index data for a set of objects stored in a non-volatile storage. The computer system creates a new anchor tree in the ordered set of anchor trees. The computer system identifies, from a set of delta tables, index data representing one or more objects that are stored on the non-volatile storage. The computer system merges the index data representing the one or more objects into the new anchor tree.Type: GrantFiled: August 24, 2022Date of Patent: November 14, 2023Assignee: Microsoft Technology Licensing, LLCInventors: Krishnan Varadarajan, Jegan Devaraju, Shane Mainali, Quan Zhang, Sridhar Srinivasan, Bin Tong, He Su, Ju Wang, Manish Chablani, Hao Feng
-
Publication number: 20230286157Abstract: Various aspects of the technology described herein are generally directed to systems, methods, and computer storage media for, among other things, providing robotic system services including implementing an enhanced robotics framework. The enhanced robotics framework includes a visual feedback, a skills library, and minting and awarding a fungible token for activities associated with a robot.Type: ApplicationFiled: December 14, 2022Publication date: September 14, 2023Inventors: Shashwat Srivastav, Manish Chablani, Art Min, Sriram Sankaran, Igor Medvedev, Julio Ng
-
Publication number: 20230105969Abstract: Techniques for responding to a healthcare inquiry from a user are disclosed. In one particular embodiment, the techniques may be realized as a method for responding to a healthcare inquiry from a user, according to a set of instructions stored on a memory of a computing device and executed by a processor of the computing device, the method comprising the steps of: classifying an intent of the user based on the healthcare inquiry; instantiating a conversational engine based on the intent; eliciting, by the conversational engine, information from the user; and presenting one or more medical recommendations to the user based at least in part on the information.Type: ApplicationFiled: September 6, 2022Publication date: April 6, 2023Inventors: Anitha Kannan, Murali Ravuri, Vitor Rodrigues, Vignesh Venkataraman, Geoffrey Tso, Neal Khosla, Neil Hunt, Xavier Amatriain, Manish Chablani
-
Publication number: 20220405262Abstract: Anchor tree cross-merge within a distributed storage system. A computer system identifies a data structure that includes (i) a root anchor tree and (ii) an ordered set of anchor trees that are ordered based on their creation, such that a last anchor tree of the ordered set of anchor trees is most-recently created. The data structure stores index data for a set of objects stored in a non-volatile storage. The computer system creates a new anchor tree in the ordered set of anchor trees. The computer system identifies, from a set of delta tables, index data representing one or more objects that are stored on the non-volatile storage. The computer system merges the index data representing the one or more objects into the new anchor tree.Type: ApplicationFiled: August 24, 2022Publication date: December 22, 2022Inventors: Krishnan VARADARAJAN, Jegan DEVARAJU, Shane MAINALI, Quan ZHANG, Sridhar SRINIVASAN, Bin TONG, He SU, Ju WANG, Manish CHABLANI, Hao FENG
-
Patent number: 11487734Abstract: A distributed storage system includes non-volatile storage storing portions of a first object. The first object encompasses data having a first range of addresses and each portion includes data for a respective range of addresses that is a proper subset of the first range. A first data structure stores, for each portion, data indicating the respective range of addresses and a pointer to where the portion is stored. The first data structure includes a root tree and a set of trees ordered by creation data such that a last tree is most-recently created. The non-volatile storage stores received write data and a write buffer stores index data pointing to storage locations of the received write data. An index management system stores the index data from the write buffer into the last tree and, if the ordered set is empty, creates a tree in the ordered set before the storing.Type: GrantFiled: June 30, 2017Date of Patent: November 1, 2022Assignee: Microsoft Technology Licensing, LLCInventors: Krishnan Varadarajan, Jegan Devaraju, Shane Mainali, Quan Zhang, Sridhar Srinivasan, Bin Tong, He Su, Ju Wang, Manish Chablani, Hao Feng
-
Publication number: 20220164323Abstract: A distributed storage system includes table controllers collectively storing partitions of a logical table having multiple rows. For each of the partitions, a corresponding table controller stores a subset of the rows of the logical table across individual pages. A management controller updates a schema of the logical table from a first to a second schema definition by, for each of the partitions, sending an update command indicating the second schema definition to the corresponding table controller. The first table controller corresponds to a first partition that includes a first subset of the rows. The first table controller, prior to receiving the update command, includes an identifier of the first schema definition within each page of data for the first subset. Subsequent to receiving the update command, the first table controller, when writing each new page of data for the first subset, includes an identifier of the second schema definition.Type: ApplicationFiled: January 3, 2022Publication date: May 26, 2022Applicant: Microsoft Technology Licensing, LLCInventors: Krishnan VARADARAJAN, Jianwu GAO, Jegan DEVARAJU, Shane MAINALI, Zichen SUN, Quan ZHANG, Venkates Paramasivam BALAKRISHNAN, Shaoyu ZHANG, Kaifeng ZHU, Ju WANG, Manish CHABLANI, Hao FENG
-
Patent number: 11249961Abstract: A distributed storage system includes table controllers collectively storing partitions of a logical table having multiple rows. For each of the partitions, a corresponding table controller stores a subset of the rows of the logical table across individual pages. A management controller updates a schema of the logical table from a first to a second schema definition by, for each of the partitions, sending an update command indicating the second schema definition to the corresponding table controller. The first table controller corresponds to a first partition that includes a first subset of the rows. The first table controller, prior to receiving the update command, includes an identifier of the first schema definition within each page of data for the first subset. Subsequent to receiving the update command, the first table controller, when writing each new page of data for the first subset, includes an identifier of the second schema definition.Type: GrantFiled: June 30, 2017Date of Patent: February 15, 2022Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Krishnan Varadarajan, Jianwu Gao, Jegan Devaraju, Shane Mainali, Zichen Sun, Quan Zhang, Venkates Paramasivam Balakrishnan, Shaoyu Zhang, Kaifeng Zhu, Ju Wang, Manish Chablani, Hao Feng
-
Patent number: 10909074Abstract: Embodiments provide a method to collect aggregate information or usage data quickly and efficiently with minimal lag. Additionally, the system can use this aggregate information internally for improved load balancing, better data placement, optimization, and enhanced debugging. The system can quickly look at aggregate information across a huge amount of data and drill down cheaply because the aggregate information is generated using existing processes. Aggregated statistics storage and collection may be built on top of an LSM tree used to store a persistent index for a cloud storage system. The statistics may also represent the result of an operation (e.g., max, min, sum, average) on selected parameter(s) or attribute(s) of stored data. Aggregate statistics values may be efficiently maintained during index merge and garbage collection processes or any other index management. As delta LSM trees are merged into a base LSM tree, the aggregates are updated in delta fashion.Type: GrantFiled: April 18, 2017Date of Patent: February 2, 2021Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Shane Kumar Mainali, Krishnan Varadarajan, Quan Zhang, Jegan Devaraju, Ziehen Sun, Hao Feng, Ju Wang, Manish Chablani
-
Patent number: 10847265Abstract: Techniques for responding to a healthcare inquiry from a user are disclosed. In one particular embodiment, the techniques may be realized as a method for responding to a healthcare inquiry from a user, according to a set of instructions stored on a memory of a computing device and executed by a processor of the computing device, the method comprising the steps of: classifying an intent of the user based on the healthcare inquiry; identifying the intent as a need to obtain a dermatological diagnosis or treatment; soliciting, from the user and via the computing device, an image of the user's skin area to be diagnosed or treated; instantiating an image classification system to identify a dermatological disease from the image; and presenting one or more medical recommendations to the user based on the identified dermatological disease.Type: GrantFiled: February 4, 2019Date of Patent: November 24, 2020Assignee: Curai, Inc.Inventors: Anitha Kannan, Murali Ravuri, Vitor Rodrigues, Vignesh Venkataraman, Geoffrey Tso, Neal Khosla, Neil Hunt, Xavier Amatriain, Manish Chablani, David Sontag, Viraj Uday Prabhu
-
Publication number: 20200142868Abstract: A distributed storage system includes table controllers collectively storing partitions of a logical table having multiple rows. For each of the partitions, a corresponding table controller stores a subset of the rows of the logical table across individual pages. A management controller updates a schema of the logical table from a first to a second schema definition by, for each of the partitions, sending an update command indicating the second schema definition to the corresponding table controller. The first table controller corresponds to a first partition that includes a first subset of the rows. The first table controller, prior to receiving the update command, includes an identifier of the first schema definition within each page of data for the first subset. Subsequent to receiving the update command, the first table controller, when writing each new page of data for the first subset, includes an identifier of the second schema definition.Type: ApplicationFiled: June 30, 2017Publication date: May 7, 2020Applicant: Microsoft Technology Licensing, LLCInventors: Krishnan VARADARAJAN, Jianwu GAO, Jegan DEVARAJU, Shane MAINALI, Zichen SUN, Quan ZHANG, Venkates Paramasivam BALAKRISHNAN, Shaoyu ZHANG, Kaifeng ZHU, Ju WANG, Manish CHABLANI, Hao FENG
-
Publication number: 20200142878Abstract: A distributed storage system includes non-volatile storage storing portions of a first object. The first object encompasses data having a first range of addresses and each portion includes data for a respective range of addresses that is a proper subset of the first range. A first data structure stores, for each portion, data indicating the respective range of addresses and a pointer to where the portion is stored. The first data structure includes a root tree and a set of trees ordered by creation data such that a last tree is most-recently created. The non-volatile storage stores received write data and a write buffer stores index data pointing to storage locations of the received write data. An index management system stores the index data from the write buffer into the last tree and, if the ordered set is empty, creates a tree in the ordered set before the storing.Type: ApplicationFiled: June 30, 2017Publication date: May 7, 2020Applicant: Microsoft Technology Licensing, LLCInventors: Krishnan VARADARAJAN, Jegan DEVARAJU, Shane MAINALI, Quan ZHANG, Sridhar SRINIVASAN, Bin TONG, He SU, Ju WANG, Manish CHABLANI, Hao FENG
-
Publication number: 20190311814Abstract: Techniques for responding to a healthcare inquiry from a user are disclosed. In one particular embodiment, the techniques may be realized as a method for responding to a healthcare inquiry from a user, according to a set of instructions stored on a memory of a computing device and executed by a processor of the computing device, the method comprising the steps of: classifying an intent of the user based on the healthcare inquiry; identifying the intent as a need to obtain a dermatological diagnosis or treatment; soliciting, from the user and via the computing device, an image of the user's skin area to be diagnosed or treated; instantiating an image classification system to identify a dermatological disease from the image; and presenting one or more medical recommendations to the user based on the identified dermatological disease.Type: ApplicationFiled: February 4, 2019Publication date: October 10, 2019Applicant: Curai, Inc.Inventors: Anitha KANNAN, Murali RAVURI, Vitor RODRIGUES, Vignesh VENKATARAMAN, Geoffrey TSO, Neal KHOSLA, Neil HUNT, Xavier AMATRIAIN, Manish CHABLANI, David SONTAG, Viraj UDAY
-
Publication number: 20190311807Abstract: Techniques for responding to a healthcare inquiry from a user are disclosed. In one particular embodiment, the techniques may be realized as a method for responding to a healthcare inquiry from a user, according to a set of instructions stored on a memory of a computing device and executed by a processor of the computing device, the method comprising the steps of: classifying an intent of the user based on the healthcare inquiry; instantiating a conversational engine based on the intent; eliciting, by the conversational engine, information from the user; and presenting one or more medical recommendations to the user based at least in part on the information.Type: ApplicationFiled: February 1, 2019Publication date: October 10, 2019Applicant: Curai, Inc.Inventors: Anitha KANNAN, Murali RAVURI, Vitor RODRIGUES, Vignesh VENKATARAMAN, Geoffrey TSO, Neal KHOSLA, Neil HUNT, Xavier AMATRIAIN, Manish CHABLANI
-
Patent number: 10162658Abstract: One or more virtual processors can be added or removed from a virtual machine based on CPU pressure measured within the virtual machine. In addition to the foregoing, CPU pressure can also be used to determine whether to remove a virtual processor from a virtual machine, which may cause the computer system to consume less power. In the alternative, virtual processors can be parked and/or unparked in order to reduce the amount of power consumed by the virtual machine. In addition, virtual processors can be forcibly parked during a migration operation.Type: GrantFiled: October 19, 2015Date of Patent: December 25, 2018Assignee: Microsoft Technology Licensing, LLCInventors: Andrew Nicholas, Rene Antonio Vega, Shuvabrata Ganguly, Ellsworth Davis Walker, Manish Chablani
-
Publication number: 20180300350Abstract: Embodiments provide a method to collect aggregate information or usage data quickly and efficiently with minimal lag. Additionally, the system can use this aggregate information internally for improved load balancing, better data placement, optimization, and enhanced debugging. The system can quickly look at aggregate information across a huge amount of data and drill down cheaply because the aggregate information is generated using existing processes. Aggregated statistics storage and collection may be built on top of an LSM tree used to store a persistent index for a cloud storage system. The statistics may also represent the result of an operation (e.g., max, min, sum, average) on selected parameter(s) or attribute(s) of stored data. Aggregate statistics values may be efficiently maintained during index merge and garbage collection processes or any other index management. As delta LSM trees are merged into a base LSM tree, the aggregates are updated in delta fashion.Type: ApplicationFiled: April 18, 2017Publication date: October 18, 2018Inventors: Shane Kumar MAINALI, Krishnan VARADARAJAN, Quan ZHANG, Jegan DEVARAJU, Zichen SUN, Hao FENG, Ju WANG, Manish CHABLANI
-
Patent number: 9736243Abstract: In various embodiments, methods and systems for implementing multiple transaction logs in a distributed storage system are provided. A log stream component detects performance metrics of a plurality of log streams. The performance metrics are associated with requests from partitions in the distributed storage system. A transaction component receives a request to execute a transaction using a log stream. The request is received from a partition of the distributed storage system. The performance metrics of the plurality of log streams can be referenced, where the performance metrics indicate a performance capacity of a selected log stream to process the request. A log stream for executing the transaction is determined based on the performance capacity. The log stream selected can also factor request attributes of the request. The transaction component communicates the request to be executed, using the log stream to perform the transaction.Type: GrantFiled: December 12, 2014Date of Patent: August 15, 2017Assignee: Microsoft Technology Licensing, LLCInventors: Manish Chablani, Jegan Devaraju, Yikang Xu, Muhammad Junaid Shahid, Andrew James Edwards, Bradley G. Calder, Ju Wang, Aaron W. Ogus, Shane Mainali, Krishnan Varadarajan, Pradeep Seela
-
Publication number: 20160173599Abstract: In various embodiments, methods and systems for implementing multiple transaction logs in a distributed storage system are provided. A log stream component detects performance metrics of a plurality of log streams. The performance metrics are associated with requests from partitions in the distributed storage system. A transaction component receives a request to execute a transaction using a log stream. The request is received from a partition of the distributed storage system. The performance metrics of the plurality of log streams can be referenced, where the performance metrics indicate a performance capacity of a selected log stream to process the request. A log stream for executing the transaction is determined based on the performance capacity. The log stream selected can also factor request attributes of the request. The transaction component communicates the request to be executed, using the log stream to perform the transaction.Type: ApplicationFiled: December 12, 2014Publication date: June 16, 2016Inventors: MANISH CHABLANI, JEGAN DEVANRAJU, YIKANG XU, JUNAID J. SHAHID, ANDREW JAMES EDWARDS, BRADLEY G. CALDER, JU WANG, AARON W. OGUS, SHANE MAINALI, KRISHNAN VARADARAJAN, PRADEEP SEELA
-
Publication number: 20160041838Abstract: One or more virtual processors can be added or removed from a virtual machine based on CPU pressure measured within the virtual machine. In addition to the foregoing, CPU pressure can also be used to determine whether to remove a virtual processor from a virtual machine, which may cause the computer system to consume less power. In the alternative, virtual processors can be parked and/or unparked in order to reduce the amount of power consumed by the virtual machine. In addition, virtual processors can be forcibly parked during a migration operation.Type: ApplicationFiled: October 19, 2015Publication date: February 11, 2016Inventors: Andrew Nicholas, Rene Antonio Vega, Shuvabrata Ganguly, Ellsworth Davis Walker, Manish Chablani
-
Patent number: 9183030Abstract: One or more virtual processors can be added or removed from a virtual machine based on CPU pressure measured within the virtual machine. In addition to the foregoing, CPU pressure can also be used to determine whether to remove a virtual processor from a virtual machine, which may cause the computer system to consume less power. In the alternative, virtual processors can be parked and/or unparked in order to reduce the amount of power consumed by the virtual machine. In addition, virtual processors can be forcibly parked during a migration operation.Type: GrantFiled: April 27, 2011Date of Patent: November 10, 2015Assignee: Microsoft Technology Licensing, LLCInventors: Andrew Nicholas, Rene Antonio Vega, Shuvabrata Ganguly, Ellsworth Davis Walker, Manish Chablani
-
Publication number: 20120278800Abstract: In an exemplary embodiment, one or more virtual processors can be added or removed from a virtual machine based on CPU pressure measured within the virtual machine. In addition to the foregoing, other techniques are described in the detailed description, claims, and figures that form a part of this document.Type: ApplicationFiled: April 27, 2011Publication date: November 1, 2012Applicant: Microsoft CorporationInventors: Andrew Nicholas, Rene Antonio Vega, Shuvabrata Ganguly, Ellsworth Davis Walker, Manish Chablani