Dynamic reassignment of data ownership
First Claim
Patent Images
1. A method for managing data, the method comprising the steps of:
- maintaining a plurality of persistent data items on persistent storage accessible to a plurality of nodes, the persistent data items including a particular data item stored at a particular location on said persistent storage;
assigning exclusive ownership of each of the persistent data items to one of the nodes, wherein a particular node of said plurality of nodes is assigned exclusive ownership of said particular data item;
when any node wants an operation performed that involves said particular data item, the node that desires the operation to be performed ships the operation to the particular node for the particular node to perform the operation on the particular data item as said particular data item is exclusively owned by said particular node;
gathering statistics by gathering information about at least one of system performance and workload; and
dynamically reassigning ownership of the persistent data items based on said statistics to improve at least one of system performance and throughput.
1 Assignment
0 Petitions
Accused Products
Abstract
Various techniques are described for improving the performance of a shared-nothing database system in which at least two of the nodes that are running the shared-nothing database system have shared access to a disk. Specifically, techniques are provided for changing the ownership of data in a shared-nothing database dynamically, based on factors such as which node would be the most efficient owner relative to the performance of a particular operation. Once determined, the ownership of the data may be changed permanently to the new owner, or temporarily for the duration of the particular operation.
93 Citations
32 Claims
-
1. A method for managing data, the method comprising the steps of:
-
maintaining a plurality of persistent data items on persistent storage accessible to a plurality of nodes, the persistent data items including a particular data item stored at a particular location on said persistent storage;
assigning exclusive ownership of each of the persistent data items to one of the nodes, wherein a particular node of said plurality of nodes is assigned exclusive ownership of said particular data item;
when any node wants an operation performed that involves said particular data item, the node that desires the operation to be performed ships the operation to the particular node for the particular node to perform the operation on the particular data item as said particular data item is exclusively owned by said particular node;
gathering statistics by gathering information about at least one of system performance and workload; and
dynamically reassigning ownership of the persistent data items based on said statistics to improve at least one of system performance and throughput. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 17, 18, 19, 20, 21, 22, 23, 24, 25)
-
-
10. A method for managing data, the method comprising the steps of:
-
maintaining a plurality of persistent data items on persistent storage accessible to a plurality of nodes, the persistent data items including a particular data item stored at a particular location on said persistent storage;
assigning exclusive ownership of each of the persistent data items to one of the nodes, wherein a first node of said plurality of nodes is assigned exclusive ownership of said particular data item;
when any node wants an operation performed that involves said particular data item, the node that desires the operation to be performed ships the operation to the first node for the first node to perform the operation on the particular data item as said particular data item is exclusively owned by said first node;
while the exclusive ownership of the particular data item is held by said first node, receiving a command that requires an operation to be performed on the particular data item; and
causing the operation to be performed by a second node that is different than said first node. - View Dependent Claims (11, 12, 13, 14, 15, 16, 26, 27, 28, 29, 30, 31, 32)
-
Specification