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: 11816084
    Abstract: 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: Grant
    Filed: August 24, 2022
    Date of Patent: November 14, 2023
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Krishnan Varadarajan, Jegan Devaraju, Shane Mainali, Quan Zhang, Sridhar Srinivasan, Bin Tong, He Su, Ju Wang, Manish Chablani, Hao Feng
  • Publication number: 20230286157
    Abstract: 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: Application
    Filed: December 14, 2022
    Publication date: September 14, 2023
    Inventors: Shashwat Srivastav, Manish Chablani, Art Min, Sriram Sankaran, Igor Medvedev, Julio Ng
  • Publication number: 20230105969
    Abstract: 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: Application
    Filed: September 6, 2022
    Publication date: April 6, 2023
    Inventors: Anitha Kannan, Murali Ravuri, Vitor Rodrigues, Vignesh Venkataraman, Geoffrey Tso, Neal Khosla, Neil Hunt, Xavier Amatriain, Manish Chablani
  • Publication number: 20220405262
    Abstract: 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: Application
    Filed: August 24, 2022
    Publication date: December 22, 2022
    Inventors: Krishnan VARADARAJAN, Jegan DEVARAJU, Shane MAINALI, Quan ZHANG, Sridhar SRINIVASAN, Bin TONG, He SU, Ju WANG, Manish CHABLANI, Hao FENG
  • Patent number: 11487734
    Abstract: 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: Grant
    Filed: June 30, 2017
    Date of Patent: November 1, 2022
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Krishnan Varadarajan, Jegan Devaraju, Shane Mainali, Quan Zhang, Sridhar Srinivasan, Bin Tong, He Su, Ju Wang, Manish Chablani, Hao Feng
  • Publication number: 20220164323
    Abstract: 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: Application
    Filed: January 3, 2022
    Publication date: May 26, 2022
    Applicant: Microsoft Technology Licensing, LLC
    Inventors: 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: 11249961
    Abstract: 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: Grant
    Filed: June 30, 2017
    Date of Patent: February 15, 2022
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: 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: 10909074
    Abstract: 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: Grant
    Filed: April 18, 2017
    Date of Patent: February 2, 2021
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Shane Kumar Mainali, Krishnan Varadarajan, Quan Zhang, Jegan Devaraju, Ziehen Sun, Hao Feng, Ju Wang, Manish Chablani
  • Patent number: 10847265
    Abstract: 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: Grant
    Filed: February 4, 2019
    Date of Patent: November 24, 2020
    Assignee: 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: 20200142868
    Abstract: 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: Application
    Filed: June 30, 2017
    Publication date: May 7, 2020
    Applicant: Microsoft Technology Licensing, LLC
    Inventors: 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: 20200142878
    Abstract: 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: Application
    Filed: June 30, 2017
    Publication date: May 7, 2020
    Applicant: Microsoft Technology Licensing, LLC
    Inventors: Krishnan VARADARAJAN, Jegan DEVARAJU, Shane MAINALI, Quan ZHANG, Sridhar SRINIVASAN, Bin TONG, He SU, Ju WANG, Manish CHABLANI, Hao FENG
  • Publication number: 20190311814
    Abstract: 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: Application
    Filed: February 4, 2019
    Publication date: October 10, 2019
    Applicant: 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: 20190311807
    Abstract: 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: Application
    Filed: February 1, 2019
    Publication date: October 10, 2019
    Applicant: Curai, Inc.
    Inventors: Anitha KANNAN, Murali RAVURI, Vitor RODRIGUES, Vignesh VENKATARAMAN, Geoffrey TSO, Neal KHOSLA, Neil HUNT, Xavier AMATRIAIN, Manish CHABLANI
  • Patent number: 10162658
    Abstract: 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: Grant
    Filed: October 19, 2015
    Date of Patent: December 25, 2018
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Andrew Nicholas, Rene Antonio Vega, Shuvabrata Ganguly, Ellsworth Davis Walker, Manish Chablani
  • Publication number: 20180300350
    Abstract: 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: Application
    Filed: April 18, 2017
    Publication date: October 18, 2018
    Inventors: Shane Kumar MAINALI, Krishnan VARADARAJAN, Quan ZHANG, Jegan DEVARAJU, Zichen SUN, Hao FENG, Ju WANG, Manish CHABLANI
  • Patent number: 9736243
    Abstract: 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: Grant
    Filed: December 12, 2014
    Date of Patent: August 15, 2017
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: 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: 20160173599
    Abstract: 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: Application
    Filed: December 12, 2014
    Publication date: June 16, 2016
    Inventors: 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: 20160041838
    Abstract: 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: Application
    Filed: October 19, 2015
    Publication date: February 11, 2016
    Inventors: Andrew Nicholas, Rene Antonio Vega, Shuvabrata Ganguly, Ellsworth Davis Walker, Manish Chablani
  • Patent number: 9183030
    Abstract: 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: Grant
    Filed: April 27, 2011
    Date of Patent: November 10, 2015
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Andrew Nicholas, Rene Antonio Vega, Shuvabrata Ganguly, Ellsworth Davis Walker, Manish Chablani
  • Publication number: 20120278800
    Abstract: 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: Application
    Filed: April 27, 2011
    Publication date: November 1, 2012
    Applicant: Microsoft Corporation
    Inventors: Andrew Nicholas, Rene Antonio Vega, Shuvabrata Ganguly, Ellsworth Davis Walker, Manish Chablani