Patent ID: 8375001
Filing Date: 2013-02-12
Classification: G06F

Abstract:
1. A method for handling a distributed database system with a plurality of nodes, wherein each node is arranged for storing a replica of at least one partition of data, the method comprising the steps of: partitioning data to be stored into a number of partitions; replicating each partition into a number of replicas; for each partition, distributing the number of replicas amongst a corresponding number of nodes selected from the plurality of nodes; configuring each node with a list of identifiers of other nodes usable to address each other; and activating more than one node amongst the plurality of nodes; monitoring at each active node at least one event selected from: latest updating of each replica, replica status, status of local resources in charge of each replica, and connectivity status of each replica; upon activation or deactivation of a node amongst the plurality of nodes, a processor of at least one node selected amongst the active nodes: collecting from each active node information about the at least one event, applying rules that prioritize each replica in the active nodes depending on the collected events for each replica, and selecting a replica in a specific node for each partition with a highest replica priority, wherein the selected replica is the current master replica and the specific node is the current master node for the partition; and for any request received in a node to read/write data in the distributed database system, determining the partition said data belongs to and the current master node in charge of the current master replica for said partition, and routing said request to said current master node.