EP1521184A2

Partitioning ownership of a database among different database servers to control access to the database

Abstract

A method for managing data is disclosed. The method comprises the steps of: maintaining a plurality of persistent data items on persistent storage accessible to a plurality of nodes;assigning ownership of each of the persistent data items to at least one of the plurality of nodes;shipping an operation that involves a particular data item of said plurality of persistent data items to a particular node assigned to the particular data item to cause the particular node to perform the operation on the particular data item, wherein said particular data item resides at a particular location on said persistent storage;while the first node continues to operate, reassigning ownership of the particular data item from the particular node to another node without moving the particular data item from said particular location on said persistent storage;after the reassignment, 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 said other node for the other node to perform the operation on the particular data item as said particular data item resides at said particular location.

EP1521184A2, drawing sheet 1
Sheet 1 of 6

Term

Term ended

Projected expiry passed 28 June 2021, 5.2 years ago.

  1. Priority and filed
  2. Published
  3. Projected expiry
  4. Today

27 claims: 7 independent, 20 dependent

  1. 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;assigning ownership of each of the persistent data items to at least one of the plurality of nodes;shipping an operation that involves a particular data item of said plurality of persistent data items to a particular node assigned to the particular data item to cause the particular node to perform the operation on the particular data item, wherein said particular data item resides at a particular location on said persistent storage;while the first node continues to operate, reassigning ownership of the particular data item from the particular node to another node without moving the particular data item from said particular location on said persistent storage;after the reassignment, 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 said other node for the other node to perform the operation on the particular data item as said particular data item resides at said particular location.
  2. 11
    A method of managing data, the method comprising the steps of:maintaining a plurality of persistent data items on persistent storage accessible to a plurality of nodes;assigning ownership of each of the persistent data items to one of the nodes by assigning each data item to one of a plurality of ownership groups;and assigning each ownership group to one of the plurality of nodes;wherein the node to which a ownership group is assigned is established to be owner of all data items assigned to the ownership group;when a first node wants an operation performed that involves a data item owned by a second node, the first node ships the operation to the second node for the second node to perform the operation.
  3. 13
    A computer-readable medium carrying one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in any of claims 1 to 12.
  4. 14
    A method for transitioning ownership of a data item, the method comprising the steps of:a) disabling access to the data item;b) waiting for all transactions that have made changes to the data item to either commit or abort;c) if any transactions that made changes to the data item abort, then removing all changes to the data item that were made before access to the data item was disabled by the transactions that abort;d) changing data that indicates ownership of the data item from a first owner to a second owner;and e) enabling access to the data item.
  5. 23
    A computer-readable medium carrying instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in any of claims 14 to 22.
  6. 24
    A method for transitioning to a second owner set the ownership of a data item that is initially owned by a first owner set, the method comprising the steps of:informing a plurality of database servers that the data item is in the process of being transitioned from the first owner set to the second owner set;after informing said plurality of database servers, concurrently allowing both members of said first owner set and members of said second owner set to directly access said data item;detecting when all transactions that are accessing said data item through said first owner set have either committed or aborted;after detecting that all transactions that are accessing said data item through said first owner set have either committed or aborted, performing the steps of storing data that indicates that the second owner set is the exclusive owner of the data item;and allowing only members of said second owner set to directly access the data item.
  7. 27
    A computer-readable medium carrying instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in any of claims 24 to 26.