Installation and fault handling in a distributed system utilizing supervisor and dependency manager nodes
First Claim
1. A computer-implemented method comprising:
- transmitting, by a computer of a distributed computing system, to a dependency manager node a request for a machine-readable deployable package file associated with a target node, wherein the dependency manager node comprises a non-transitory machine-readable storage medium storing one or more deployable package files associated with one or more nodes of the system according to a dependency tree before receiving the request, wherein the one or more nodes comprise the target node;
transmitting, by the computer, the deployable package file to the target node in response to receiving the deployable package file from the dependency manager node based on the request, wherein the deployable package file associated with the target node contains a set of one or more dependency files based on the dependency tree;
instructing, by the computer, the target node to install the set of dependencies in the deployable package file onto the target node;
receiving, by the computer, from each of the one or more nodes of the distributed computing system, a heartbeat signal indicating a status of the respective node at a predetermined interval;
determining, by the computer, the status of each respective node based on each respective heartbeat signal;
detecting, by the computer, a failure of one or more dependencies installed on the target node according to the heartbeat signal received from the target node, wherein the computer automatically requests the deployable package file from the dependency manager node responsive to detecting the failure;
transmitting, by the computer, based on the automatic request of the deployable package file responsive to detecting the failure, the deployable package file to a manager of a new node on which the failure occurred such that the manager of the new node attempts to restore the deployable package file to address the failure; and
determining, by the computer, if the manager of the new node successfully restored the one or more dependencies on the new node.
2 Assignments
0 Petitions
Accused Products
Abstract
The present disclosure relates to in-memory databases or search engines using a dependency manager or configuration manager for maintaining configuration in the database system. The system may include a supervisor that may request and receive data from dependency manager, where the supervisor may be linked to other components in the system. The dependency manager may be used as a container for data metadata, and software components, which may be used in the system configuration. The configuration may be developed through a dependency system, where the dependency manager may keep an entire dependency tree for all software and data in the system. Similarly, dependency manager may create a deployable package to guarantee deployment integrity and to ensure a successful execution of any suitable software and data in the system.
124 Citations
11 Claims
-
1. A computer-implemented method comprising:
-
transmitting, by a computer of a distributed computing system, to a dependency manager node a request for a machine-readable deployable package file associated with a target node, wherein the dependency manager node comprises a non-transitory machine-readable storage medium storing one or more deployable package files associated with one or more nodes of the system according to a dependency tree before receiving the request, wherein the one or more nodes comprise the target node; transmitting, by the computer, the deployable package file to the target node in response to receiving the deployable package file from the dependency manager node based on the request, wherein the deployable package file associated with the target node contains a set of one or more dependency files based on the dependency tree; instructing, by the computer, the target node to install the set of dependencies in the deployable package file onto the target node; receiving, by the computer, from each of the one or more nodes of the distributed computing system, a heartbeat signal indicating a status of the respective node at a predetermined interval; determining, by the computer, the status of each respective node based on each respective heartbeat signal; detecting, by the computer, a failure of one or more dependencies installed on the target node according to the heartbeat signal received from the target node, wherein the computer automatically requests the deployable package file from the dependency manager node responsive to detecting the failure; transmitting, by the computer, based on the automatic request of the deployable package file responsive to detecting the failure, the deployable package file to a manager of a new node on which the failure occurred such that the manager of the new node attempts to restore the deployable package file to address the failure; and determining, by the computer, if the manager of the new node successfully restored the one or more dependencies on the new node. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A database management system comprising:
-
one or more nodes comprising a non-transitory machine-readable storage memory storing one or more dependency files, and a processor monitoring a status of the one or more dependency files, wherein each respective dependency file is a component of a first node having a comparative relationship with a corresponding component installed on a second node, wherein the one or more nodes comprises the first node and the second node; one or more supervisor nodes comprising a processor periodically monitoring a health status for each of the one or more nodes and configured to transmit a deployable package comprising a set of dependencies files to each of the one or more nodes based on the health status of each respective node of the one or more nodes; and one or more dependency manager nodes comprising a non-transitory machine-readable storage medium storing one or more dependency tree files associated with the one or more nodes, and a processor configured to compile a deployable package file in accordance with a dependency tree associated with a node, wherein the deployable package file comprises a set of one or more dependencies files stored on at least one data frame, wherein the dependency manager node determines a dependency to include in the deployable package based on a dependency tree associated with a node targeted to receive the deployable package, wherein the processor of the one or more nodes is configured to transmit a heartbeat signal to the one or more supervisor nodes and monitor execution of one or more software modules installed on the one or more nodes, wherein the processor of the one or more supervisor nodes is configured to monitor one or more heartbeat signals received from the one or more nodes and determine a status of each respective node based on each respective heartbeat signal, wherein the processor of the one or more nodes is configured to attempt to restore a software module executed by the one or more nodes responsive to receiving a command to restore the software module from the one or more supervisor nodes, wherein the non-transitory machine-readable storage medium of the one or more dependency manager nodes stores one or more machine-readable configuration package files, wherein the processor of the one or more supervisor nodes is configured to determine a number of attempts to restore the software module by the one or more nodes, wherein the processor of the one or more supervisor nodes is configured to automatically retrieve from the one or more dependency manager nodes a configuration package file associated with the software module responsive to determining the number of attempts exceeds a threshold number of attempts to restore the software module. - View Dependent Claims (8, 9, 10, 11)
-
Specification