Patents by Inventor Mikhail Chainani

Mikhail Chainani 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: 11669510
    Abstract: Technology for tracking changes to a database and providing the changes to a subscribing computing device. In an illustrative implementation, a method may involve subscribing a computing device to changes of a portion of a multi-tenant database and accessing a plurality of change events stored in a log of the multi-tenant database in parallel. The method may further involve storing the plurality of change events in a persistent data store separate from the multi-tenant database and processing the plurality of change events to create an ordered set of change events. The ordered set of change events may then be provided to the computing device that subscribed to the changes.
    Type: Grant
    Filed: May 21, 2020
    Date of Patent: June 6, 2023
    Assignee: salesforce.com, inc.
    Inventors: Gary Baker, Mikhail Chainani, Varun Jobanputra, William Dumaresq
  • Patent number: 11494408
    Abstract: A first copy of a database object may be constructed prior to applying a designated database update request to a first database. The database object may be represented by a plurality of database table rows in the first database, and the request may update one or more of the plurality of rows. The request may be applied to the first database to update the one or more of the plurality of rows in the first database. A second copy of the database object may be constructed after applying the database update request to the first database. A message identifying a difference between the first copy of the database object and a second copy of the database object may be transmitted to a remote computing device.
    Type: Grant
    Filed: September 24, 2019
    Date of Patent: November 8, 2022
    Assignee: salesforce.com, inc.
    Inventors: Mikhail Chainani, Xiaodan Wang, Vijayanth Devadhar
  • Patent number: 11467866
    Abstract: A request for an organization migration to move application data and application services of an organization hosted at a source system instance in a multi-tenant computing system to a target system instance in the multi-tenant computing system is received. Based on operational parameters, a time window is selected to execute the organization migration. Computing resource usages of one or both of the source and target system instances in the selected time window are monitored. If computing resources are available, the organization migration is enqueued.
    Type: Grant
    Filed: January 29, 2018
    Date of Patent: October 11, 2022
    Assignee: Salesforce.com, Inc.
    Inventors: Chen Liu, Ilya Zaslavsky, Alex Ovesea, Mikhail Chainani, Xiaodan Wang, Sridevi Gopala Krishnan
  • Patent number: 11354153
    Abstract: A resource utilization level and a data size may be determined for each organization within a computing pod located within an on-demand computing services organization configured to provide computing services. One of the organizations may be selected for migration away from the computing pod based on the resource utilization levels and the data sizes. The designated organization may have a respective resource utilization level that is high in relation to its respective data size.
    Type: Grant
    Filed: January 22, 2020
    Date of Patent: June 7, 2022
    Assignee: salesforce.com, Inc.
    Inventors: Xiaodan Wang, Ilya Zaslavsky, Prakash Ramaswamy, Sridevi Gopala Krishnan, Mikhail Chainani, Scott Ware, Lauren Valdivia
  • Patent number: 11308043
    Abstract: A request may be received to relocate source data within a distributed database system arranged in a hierarchy composed of a plurality of levels. The plurality of levels may include a local level that includes a plurality of pods, which may be end points in the hierarchy. The data may be stored at a source pod. The request may identify a designated level in the hierarchy at which to relocate the source data. A target pod within the distributed database system may be selected. The source pod and the target pod may be located remotely from one another. The data may be replicated to the target pod via a local change bus in communication with the source pod. The local change bus may capture changes made to data stored in the source pod and transmit the captured changes to the target pod via the hierarchy.
    Type: Grant
    Filed: November 13, 2019
    Date of Patent: April 19, 2022
    Assignee: salesforce.com, Inc.
    Inventors: Xiaodan Wang, Mikhail Chainani
  • Patent number: 11132383
    Abstract: Techniques are disclosed relating to processing data stored within database tables in a parallelized manner. In various embodiments, a computer system maintains a database having a database table storing data for a plurality of tenants and an index structure storing indexes for accessing data stored in the database table. In some embodiments, the computer system receives, from a particular tenant, a request to perform a task that includes operating on particular data. In some embodiments, the computer system determines a portion of the index structure corresponding to the particular tenant and divides a range of indexes within that portion into a plurality of index sub-ranges. In various embodiments, the computer system processes portions of the task in parallel by determining an index sub-range for each of a plurality of threads and causing each of the threads to operate on a portion of the particular data specified by its index sub-range.
    Type: Grant
    Filed: January 31, 2018
    Date of Patent: September 28, 2021
    Assignee: salesforce.com, inc.
    Inventors: Xiaodan Wang, Mikhail Chainani, Alan Arbizu, Ashwini Bijwe
  • Patent number: 11093485
    Abstract: A staging table created in a database system may store a snapshot of live database table captured prior to an unintended change to the live database table. One or more entries in the staging table may be updated to incorporate one or more intended changes to the live database table that occurred after the unintended change. The live database table may be updated by merging each of the updated entries from the staging table to the live database table. The updated database table may eliminate the unintended change.
    Type: Grant
    Filed: August 27, 2019
    Date of Patent: August 17, 2021
    Assignee: Salesforce.com, Inc.
    Inventors: Mikhail Chainani, Xiaodan Wang, Vijayanth Devadhar
  • Patent number: 11093294
    Abstract: A request may be received to migrate an organization from a first computing pod to a second computing pod located within an on-demand computing services organization configured to provide computing services. A migration resource utilization profile may be determined for the first computing pod. The migration resource utilization profile may identify one or more computing resources involved in transferring organizations from the first computing pod during one or more time windows. A migration time window for performing the requested migration may be selected based at least in part on the migration resource utilization profile.
    Type: Grant
    Filed: January 22, 2020
    Date of Patent: August 17, 2021
    Assignee: Salesforce.com, Inc.
    Inventors: Xiaodan Wang, Ilya Zaslavsky, Prakash Ramaswamy, Sridevi Gopala Krishnan, Mikhail Chainani, Scott Ware, Lauren Valdivia
  • Publication number: 20210224106
    Abstract: A resource utilization level and a data size may be determined for each organization within a computing pod located within an on-demand computing services organization configured to provide computing services. One of the organizations may be selected for migration away from the computing pod based on the resource utilization levels and the data sizes. The designated organization may have a respective resource utilization level that is high in relation to its respective data size.
    Type: Application
    Filed: January 22, 2020
    Publication date: July 22, 2021
    Applicant: Salesforce.com, Inc.
    Inventors: Xiaodan Wang, Ilya Zaslavsky, Prakash Ramaswamy, Sridevi Gopala Krishnan, Mikhail Chainani, Scott Ware, Lauren Valdivia
  • Publication number: 20210224115
    Abstract: A request may be received to migrate an organization from a first computing pod to a second computing pod located within an on-demand computing services organization configured to provide computing services. A migration resource utilization profile may be determined for the first computing pod. The migration resource utilization profile may identify one or more computing resources involved in transferring organizations from the first computing pod during one or more time windows. A migration time window for performing the requested migration may be selected based at least in part on the migration resource utilization profile.
    Type: Application
    Filed: January 22, 2020
    Publication date: July 22, 2021
    Applicant: Salesforce.com, Inc.
    Inventors: Xiaodan WANG, Ilya Zaslavsky, Prakash Ramaswamy, Sridevi Gopala Krishnan, Mikhail Chainani, Scott Ware, Lauren Valdivia
  • Publication number: 20210141770
    Abstract: A request may be received to relocate source data within a distributed database system arranged in a hierarchy composed of a plurality of levels. The plurality of levels may include a local level that includes a plurality of pods, which may be end points in the hierarchy. The data may be stored at a source pod. The request may identify a designated level in the hierarchy at which to relocate the source data. A target pod within the distributed database system may be selected. The source pod and the target pod may be located remotely from one another. The data may be replicated to the target pod via a local change bus in communication with the source pod. The local change bus may capture changes made to data stored in the source pod and transmit the captured changes to the target pod via the hierarchy.
    Type: Application
    Filed: November 13, 2019
    Publication date: May 13, 2021
    Applicant: Salesforce.com, Inc.
    Inventors: Xiaodan WANG, Mikhail CHAINANI
  • Publication number: 20210089556
    Abstract: A first copy of a database object may be constructed prior to applying a designated database update request to a first database. The database object may be represented by a plurality of database table rows in the first database, and the request may update one or more of the plurality of rows. The request may be applied to the first database to update the one or more of the plurality of rows in the first database. A second copy of the database object may be constructed after applying the database update request to the first database. A message identifying a difference between the first copy of the database object and a second copy of the database object may be transmitted to a remote computing device.
    Type: Application
    Filed: September 24, 2019
    Publication date: March 25, 2021
    Applicant: Salesforce.com, Inc.
    Inventors: Mikhail CHAINANI, Xiaodan WANG, Vijayanth DEVADHAR
  • Patent number: 10958505
    Abstract: Techniques and architectures to provide multiple application servers each having at least one connection agent and at least one enabler agent and at least one database organized as multiple nodes. An error condition between a first connection agent and a first database node is detected. The first connection agent indicates that the first database node is unavailable to stop attempts to access the first database node by a first application server. A first enabler agent periodically checks availability of the first database node. The first database node is indicated as available in response to a pre-selected number of successful attempts to contact the first database node with the first enabler agent. The first database node is accessed with the application server in response to the indication that the first database node is available.
    Type: Grant
    Filed: August 5, 2019
    Date of Patent: March 23, 2021
    Assignee: salesforce.com, inc.
    Inventors: Olumayokun Obembe, Chen Liu, Ping-Hsiu Hsieh, Ashwini Bijwe, Vijayanth Devadhar, Mikhail Chainani, Sridevi Gopala Krishnan, Alan Arbizu, Jesse Collins
  • Publication number: 20210064601
    Abstract: A staging table created in a database system may store a snapshot of live database table captured prior to an unintended change to the live database table. One or more entries in the staging table may be updated to incorporate one or more intended changes to the live database table that occurred after the unintended change. The live database table may be updated by merging each of the updated entries from the staging table to the live database table. The updated database table may eliminate the unintended change.
    Type: Application
    Filed: August 27, 2019
    Publication date: March 4, 2021
    Applicant: Salesforce.com, Inc.
    Inventors: Mikhail Chainani, Xiaodan Wang, Vijayanth Devadhar
  • Patent number: 10936571
    Abstract: Methods and systems for providing a rewind of table data in a data management system include: storing a table having table data that defines a plurality of rows and a plurality of columns that define a plurality of cells; capturing change data associated with changes to at least one of the plurality of rows, the plurality of columns, and the plurality of cells; associating the change data with a transaction having a transaction identifier; storing the transaction and the change data in a change bus; retrieving the change data from the change bus based on a rewind request; performing a rewind of a subset of the changes by performing a reverse operation of the change data relating to the subset of changes and according to a reverse operation order; and outputting a clone of the table based on the rewind of the changes of the table.
    Type: Grant
    Filed: April 28, 2020
    Date of Patent: March 2, 2021
    Assignee: salesforce.com, Inc.
    Inventors: Mikhail Chainani, William Dumaresq, Xiaodan Wang
  • Patent number: 10817497
    Abstract: Migration specific action requests to perform a set of migration specific actions are sent from a source system instance to a target system instance. Migration specific action responses are received from the target system instance. Based on the migration specific action responses, traffic lights for resource utilization of the target system instance are determined. Based on the traffic lights, a concurrency limit is determined for the specific time. The concurrency limit is applied to scale a total number of ongoing migration specific actions to be requested of the target system instance at the specific time.
    Type: Grant
    Filed: January 29, 2018
    Date of Patent: October 27, 2020
    Assignee: salesforce.com, inc.
    Inventors: Ilya Zaslavsky, Mikhail Chainani, Alex Ovesea, Vijayanth Devadhar, Xiaodan Wang, Alan Arbizu
  • Patent number: 10776147
    Abstract: Migration configuration data for an organization migration to move application data and application services of a to-be-migrated organization hosted at a source system instance to a target system instance is received. Migration components respectively representing to-be-migrated systems of record in a to-be-migrated organization are registered. In response to receiving an instruction to enter a specific organization migration state, migration steps for each migration component in the migration components are identified for execution in the specific organization migration state. Each migration component in the migration components automatically executes migration steps determined for each such migration component for execution in the specific organization migration state.
    Type: Grant
    Filed: January 29, 2018
    Date of Patent: September 15, 2020
    Assignee: salesforce.com, inc.
    Inventors: Alex Ovesea, Ilya Zaslavsky, Chen Liu, Alan Arbizu, Mikhail Chainani, Xiaodan Wang, Sridevi Gopala Krishnan
  • Publication number: 20200285627
    Abstract: Technology for tracking changes to a database and providing the changes to a subscribing computing device. In an illustrative implementation, a method may involve subscribing a computing device to changes of a portion of a multi-tenant database and accessing a plurality of change events stored in a log of the multi-tenant database in parallel. The method may further involve storing the plurality of change events in a persistent data store separate from the multi-tenant database and processing the plurality of change events to create an ordered set of change events. The ordered set of change events may then be provided to the computing device that subscribed to the changes.
    Type: Application
    Filed: May 21, 2020
    Publication date: September 10, 2020
    Inventors: Gary Baker, Mikhail Chainani, Varun Jobanputra, William Dumaresq
  • Patent number: 10693709
    Abstract: A system may identify gap events in a change detection stream. When changes in data are transmitted to a downstream system, the system may identify intermittent portions of the transmission where data is missing (e.g., a gap event). In some examples, a gap event may be caused by system maintenance or one or more system errors. After identifying the gap event, the system may bridge the gap event using metadata associated with the gap event. The associated metadata may be transmitted (e.g., via a gap event identification message) to the downstream system, which may prevent the downstream system from experiencing computational inefficiencies due to the gap event.
    Type: Grant
    Filed: March 28, 2018
    Date of Patent: June 23, 2020
    Assignee: salesforce.com, inc.
    Inventors: Mikhail Chainani, Vijay Devadhar, William Dumaresq, Venkat Chandrasekaran, Jia Chen, Utsavi Benani, Xiaodan Wang
  • Patent number: 10678773
    Abstract: Technology for tracking changes to a database and providing the changes to a subscribing computing device. In an illustrative implementation, a method may involve subscribing a computing device to changes of a portion of a multi-tenant database and accessing a plurality of change events stored in a log of the multi-tenant database in parallel. The method may further involve storing the plurality of change events in a persistent data store separate from the multi-tenant database and processing the plurality of change events to create an ordered set of change events. The ordered set of change events may then be provided to the computing device that subscribed to the changes.
    Type: Grant
    Filed: August 25, 2017
    Date of Patent: June 9, 2020
    Assignee: salesforce.com, inc.
    Inventors: Gary Baker, Mikhail Chainani, Varun Jobanputra, William Dumaresq