US2016292215A1PendingUtilityA1

Partitioning online databases

Assignee: MICROSOFT TECHNOLOGY LICENSING LLCPriority: Oct 28, 2010Filed: Jun 15, 2016Published: Oct 6, 2016
Est. expiryOct 28, 2030(~4.3 yrs left)· nominal 20-yr term from priority
G06F 16/27G06F 16/256G06F 16/2379G06F 16/278Y10S707/971Y10S707/964G06F 17/30575G06F 17/30377
52
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

Methods, systems, and computer program products are provided for partitioning online databases. Online database operations, such as, for example, SPLIT, MERGE, and DROP, are used to alter the arrangement of partitions in a federated database. A SPLIT operation splits rows at one partition across a plurality of other partitions. A MERGE operation merges rows at a plurality of partitions in to one partition. A DROP operation shifts responsibility for rows of data from one partition to another partition and then drops the rows from the one partition.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
         1 . A computing system, comprising:
 one or more processors; and   one or more computer-readable media having stored thereon computer-executable instructions that are executable by the one or more processors to cause the computing system to drop rows in a distributed database, the computer-executable instructions including instructions that are executable to cause the computing system to perform at least the following:
 receive a drop directive including a set of key values that each identify a different row of the distributed database that is to be dropped, the set of key values identifying: (i) one or more first rows selected from among a first subset of rows that are stored in a first partition of the distributed database, and (ii) one or more second rows selected from among a second subset of rows that are stored in a second partition of the distributed database; and 
 execute a drop operation to drop the one or more first rows and the rows one or more second rows, while the first and second partitions remain online, including:
 creating a third partition of the distributed database; 
 expanding the one or more first rows and the one or more second rows into the third partition; and 
 dropping the one or more first rows from the first partition and dropping the one or more second rows from the second partition. 
 
   
     
     
         2 . The computing system of  claim 1 , the computer-executable instructions also including instructions that are executable to configure the computing system assign the set of key values to the third partition. 
     
     
         3 . The computing system of  claim 1 , wherein one or more data fields of the one or more first and one or more second rows that are expanded into the third partition are left blank. 
     
     
         4 . The computing system of  claim 1 , wherein the subset of key values is defined according to a low directive that drops key values that are below a defined boundary. 
     
     
         5 . The computing system of  claim 1 , wherein the subset of key values is defined according to a high directive that drops key values that are above a defined boundary. 
     
     
         6 . The computing system of  claim 1 , wherein each key value comprises a federation key value. 
     
     
         7 . The computing system of  claim 1 , wherein the first subset of rows that are stored in a first partition are stored in the first partition based on a first subset of federation key values being assigned to the first partition, and wherein the second subset of rows that are stored in a second partition are stored in the second partition based on a second subset of federation key values being assigned to the second partition. 
     
     
         8 . A method, implemented at a computer system that includes one or more processors, for dropping rows in a distributed database, the method comprising:
 receiving a drop directive including a set of key values that each identify a different row of the distributed database that is to be dropped, the set of key values identifying: (i) one or more first rows selected from among a first subset of rows that are stored in a first partition of the distributed database, and (ii) one or more second rows selected from among a second subset of rows that are stored in a second partition of the distributed database; and   executing a drop operation to drop the one or more first rows and the rows one or more second rows, while the first and second partitions remain online, including:
 creating a third partition of the distributed database; 
 expanding the one or more first rows and the one or more second rows into the third partition; and 
 dropping the one or more first rows from the first partition and dropping the one or more second rows from the second partition. 
   
     
     
         9 . The method of  claim 8 , further comprising assigning the set of key values to the third partition. 
     
     
         10 . The method of  claim 8 , wherein one or more data fields of the one or more first and one or more second rows that are expanded into the third partition are left blank. 
     
     
         11 . The method of  claim 8 , wherein the subset of key values is defined according to a low directive that drops key values that are below a defined boundary. 
     
     
         12 . The method of  claim 8 , wherein the subset of key values is defined according to a high directive that drops key values that are above a defined boundary. 
     
     
         13 . The method of  claim 8 , wherein each key value comprises a federation key value. 
     
     
         14 . The method of  claim 8 , wherein the first subset of rows that are stored in a first partition are stored in the first partition based on a first subset of federation key values being assigned to the first partition, and wherein the second subset of rows that are stored in a second partition are stored in the second partition based on a second subset of federation key values being assigned to the second partition. 
     
     
         15 . A computer program product comprising one or more hardware storage devices having stored thereon computer-executable instructions that are executable by one or more processors of a computing system to cause the computing system to drop rows in a distributed database, the computer-executable instructions including instructions that are executable to cause the computing system to perform at least the following:
 receive a drop directive including a set of key values that each identify a different row of the distributed database that is to be dropped, the set of key values identifying: (i) one or more first rows selected from among a first subset of rows that are stored in a first partition of the distributed database, and (ii) one or more second rows selected from among a second subset of rows that are stored in a second partition of the distributed database; and   execute a drop operation to drop the one or more first rows and the rows one or more second rows, while the first and second partitions remain online, including:
 creating a third partition of the distributed database; 
 expanding the one or more first rows and the one or more second rows into the third partition; and 
 dropping the one or more first rows from the first partition and dropping the one or more second rows from the second partition. 
   
     
     
         16 . The computer program product of  claim 15 , the computer-executable instructions also including instructions that are executable to configure the computing system assign the set of key values to the third partition. 
     
     
         17 . The computer program product of  claim 15 , wherein one or more data fields of the one or more first and one or more second rows that are expanded into the third partition are left blank. 
     
     
         18 . The computer program product of  claim 15 , wherein the subset of key values is defined according to a low directive that drops key values that are below a defined boundary. 
     
     
         19 . The computer program product of  claim 15 , wherein the subset of key values is defined according to a high directive that drops key values that are above a defined boundary. 
     
     
         20 . The computer program product of  claim 15 , wherein the first subset of rows that are stored in a first partition are stored in the first partition based on a first subset of federation key values being assigned to the first partition, and wherein the second subset of rows that are stored in a second partition are stored in the second partition based on a second subset of federation key values being assigned to the second partition.

Join the waitlist — get patent alerts

Track US2016292215A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.