G06F9/4868

Live migration of virtual machines in distributed computing systems

A virtual disk and associated methods for facilitating live migration of virtual machines in distributed computing systems are disclosed herein. In one embodiment, a method includes during a live migration of a virtual machine, determining whether a destination virtual disk on a node contains a block of data corresponding to the migrated virtual machine. The method can also include, in response to determining that the destination virtual disk does not contain the block of data, retrieving the block of data from a source virtual disk of the migrated virtual machine, writing the retrieved block of data to one or more empty sectors on the destination virtual disk, and marking the one or more written to sectors containing the block of data as read-only on the destination virtual disk.

METHOD OF EFFICIENTLY MIGRATING DATA FROM ONE TIER TO ANOTHER WITH SUSPEND AND RESUME CAPABILITY

In an embodiment, a system and method for supporting a seeding process with suspend and resume capabilities are described. A resumable seeding component in a data seeding module can be used to move data from a source tier to a target tier. A resumption context including a perfect hash function (PHF) and a perfect hash vector (PHV) persists a state of a seeding process at the end of each operation in the seeding process. The PHV represents data segments of the data using the PHF. The resumption context is loaded into memory upon resumption of the seeding process after it is suspended. Information in the resumable context is used to determine a last successfully completed operation, and a last copied container. The seeding process is resumed by executing an operation following the completed operation in the resumable context.

SYSTEM AND METHOD FOR BLOCKCHAIN-BASED NOTIFICATION
20200125427 · 2020-04-23 ·

Methods, systems, and apparatus, including computer programs encoded on computer storage media, for blockchain-based notification are provided. One of the methods includes: obtaining information in a block of a blockchain to determine a current state of a workflow, wherein a blockchain contract deployed in the blockchain is executable to update the current state among one or more states of the workflow; updating a locally-maintained state machine based on the determined current state; and in response to determining that the updated state machine corresponds to one of the one or more states, transmitting a notification message to one or more subscribers subscribing to the one state.

SYSTEM AND METHOD FOR REGISTERING SUBSCRIBABLE SUB-STATES IN BLOCKCHAIN
20200125393 · 2020-04-23 ·

Methods, systems, and apparatus, including computer programs encoded on computer storage media, for registering subscribable sub-states in blockchain are provided. One of the methods includes: obtaining a request for registering one or more sub-states of a state, wherein a registered workflow comprises the state; generating a blockchain contract comprising the one or more sub-states; and deploying the blockchain contract in a blockchain. The deployed blockchain contract is executable to update a current sub-state of the state corresponding to the workflow among the one or more sub-states.

SYSTEM AND METHOD FOR BLOCKCHAIN-BASED NOTIFICATION
20200125428 · 2020-04-23 ·

Methods, systems, and apparatus, including computer programs encoded on computer storage media, for blockchain-based notification are provided. One of the methods includes: obtaining, from a computing device, a notification message indicating that a current state of a workflow is one of one or more states of the workflow, wherein a blockchain contract deployed in a blockchain is executable to update the current state among the one or more states of the workflow; executing a function associated with the one state in response to the notification message; and in response to completion of the execution of the function, transmitting, to the computing device, a reply message indicating completion of the execution of the function associated with the one state.

Transformation specification format for multiple execution engines

Methods, systems, and computer-readable media for a transformation specification format for multiple execution engines are disclosed. A transformation specification is expressed according to a transformation specification format. The transformation specification represents a polytree or graph linking one or more data producer nodes, one or more data transformation nodes, and one or more data consumer nodes. An execution engine is selected from among a plurality of available execution engines for execution of the transformation specification. The execution engine is used to acquire data from one or more data producers corresponding to the one or more data producer nodes, perform one or more transformations of the data corresponding to the one or more data transformation nodes, and output one or more results of the one or more transformations to one or more data consumers corresponding to the one or more data consumer nodes.

SYSTEM AND METHOD FOR VIRTUAL MACHINE RESOURCE TAGGING

A remote agent for managing virtual machines includes a persistent storage and a backup manager. The persistent storage stores backup/restoration policies. The backup manager generates backups of the virtual machines based on the backup/restoration policies. The remote agent also includes a resource tagger that obtains a management request for a virtual machine of the virtual machines; in response to obtaining the management request: performs a remote resource analysis of the virtual machine to obtain an application profile of the virtual machine; performs a multidimensional application analysis of the application profile to identify at least one tag; and applies the at least one tag to the virtual machine.

Highly available distributed queue using replicated messages

Methods and systems for implementing a highly available distributed queue using replicated messages are disclosed. An enqueue request is received from a client at a particular queue host of a plurality of queue hosts. The enqueue request comprises a message and a replica count greater than one. One or more copies of a replication request are sent from the particular queue host to one or more additional queue hosts. The replication request comprises the message. The quantity of copies of the replication request is determined based at least in part on the replica count. An initial replica of the message is enqueued at the particular queue host. One or more additional replicas of the message are enqueued at the one or more additional queue hosts. A quantity of the one or more additional replicas is determined based at least in part on the replica count.

Virtual device migration or cloning based on device profiles

Techniques for placing virtual machines based on compliance of device profiles are disclosed. In one embodiment, a list of device profiles may be maintained, with each device profile including details of at least one virtual device and associated capabilities. Further, a device profile from the list of device profiles may be assigned to a virtual machine running on a first host computing system. A virtual device and associated configurations required by the virtual machine may be identified to comply with the device profile. A management operation may be performed to migrate or clone the virtual device and associated configurations from a second host computing system to the first host computing system to support the compliance of the device profile assigned to the virtual machine.

TASK ORCHESTRATION METHOD AND SYSTEM
20190391844 · 2019-12-26 ·

Embodiments of the disclosure provide a method and system for task orchestration. A method may include: providing, by a task master control unit, an execution instruction of a task related to a module in an application container to a node agent service unit in an auxiliary application container bound to the application container, the auxiliary application container sharing a file system with the application container; and executing, by the node agent service unit, a command for completing the task, in response to acquiring the execution instruction of the task.