IP Library › Granted Patent US 9,189,503
Granted Patent B2
US 9,189,503 · App. 13/707,037 · Granted Nov 17, 2015

Database scale-out

Inventors: Goksel Genc (Redmond, WA); Humberto Lezama Guadarrama (Redmond, WA); Gary Chang (Redmond, WA); Andrew Sean Watson (Redmond, WA)
Assignee: Microsoft Technology Licensing, LLC
G06F17/303G06F17/30G06F17/30584
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,189,503
App. No.
13/707,037
Granted
Nov 17, 2015
Kind
B2
Abstract

A method for scaling out database information may include creating second database instantiation. The method may include configuring one or more partitions of a first database for transfer to the second database and configuring the second database for receiving the one or more first database partitions. The method may also include transferring the one or more first database partitions to the second database.

Claims (46)

1. A method for scaling out database information stored on a first database comprising a first data range, the method comprising:

creating, by a computing device, an instantiation of a second database;

configuring one or more partitions of the first database for transfer to the second database;

configuring the second database for receiving the one or more first database partitions, wherein configuring the second database comprises:

creating a second data range on the second database at a location substantially adjacent to the first data range; and

designating the second data range as changing;

transferring the one or more first database partitions to the second database; and

deleting data on the first database associated with the transferred one or more first database partitions without deleting the transferred one or more first database partitions from the second database.

2. The method of claim 1 , wherein configuring one or more partitions of the first database includes identifying a first data sub-range for the first database, the first data sub-range including the one or more first database partitions.

3. The method of claim 2 , further including designating the first data sub-range as read only.

4. The method of claim 3 , wherein configuring the second database includes extending a range of the second database to at least the range of the first data sub-range.

5. The method of claim 2 , wherein transferring the one or more first database partitions includes transferring, to the second database, data associated with key values representing a start point and an end point of the first data sub-range.

6. The method of claim 5 , further including, upon transferring the key values, changing the mode of the second data sub-range to read-only and changing the mode of the first data sub-range to deleted.

7. The method of claim 6 , further including, upon changing the mode of the first data sub-range, removing the second data sub-range on the second database, wherein removing the second sub-range changes the data mode of contained data to read-write.

8. The method of claim 7 , further including clearing the first data sub-range on the source database, wherein the clearing causes the source database data range to contract to exclude the first data sub-range.

9. The method of claim 1 , further including receiving an alert message from the first database, the alert message indicating that the first database is reaching capacity.

10. A system for performing providing database scale-out for a first database comprising a first data range, the system comprising:

at least one processor; and

memory coupled to the at least one processor, the memory comprising computer executable instructions that, when executed by the at least one processor, performs a method comprising:

creating an instantiation of a second database, the second database instantiation based in part on the first database reaching capacity;

configuring one or more partitions of the first database for transfer to the second database;

configuring the second database for receiving the one or more first database partitions, wherein configuring the second database comprises:

creating a second data range on the second database at a location substantially adjacent to the first data range; and

designating the second data range as changing;

transferring the one or more first database partitions to the second database; and

deleting data on the first database associated with the transferred one or more first database partitions without deleting the transferred one or more first database partitions from the second database.

11. The system of claim 10 , wherein configuring one or more partitions of the first database includes identifying a first data sub-range for the first database, the first data sub-range including the one or more first database partitions.

12. The system of claim 11 , further comprising designating the first data sub-range as read only.

13. The system of claim 11 , wherein transferring the one or more first database partitions includes transferring, to the second database, data associated with key values representing a start point and an end point of the first data sub-range.

14. The system of claim 13 , further comprising, upon transferring data associated with the key values, changing the mode of the second data sub-range to read-only and changing the mode of the first data sub-range to deleted.

15. The system of claim 14 , further comprising, upon changing the mode of the first data sub-range, removing the second data sub-range on the second database, wherein removing the second sub-range changes the data mode of contained data to read-write.

16. The system of claim 14 , further comprising, clearing the first data sub-range on the source database, wherein the clearing causes the source database data range to contract to exclude the first data sub-range.

17. The system of claim 10 , wherein configuring the second database includes extending a range of the second database to at least the range of the first data sub-range.

18. The system of claim 10 , further comprising receiving an alert message from a first database, the alert message indicating that the first database is reaching capacity.

19. The system of claim 10 , wherein creating the second data range includes initiating the creation of a log entry comprising action attributes associated with the database scale-out.

20. A computer-readable medium comprising executable instructions that, when executed by a processor, provide database scale-out, the computer-readable medium including instructions executable by the processor for:

receiving an alert message from a first database, the alert message indicating that the first database is reaching capacity;

creating a first data sub-range for the first database, the first data sub-range having a read only mode;

extending a range of a second database to at least the range of the first data sub-range;

creating a second data sub-range on the second database, the second data sub-range having a changing mode, the second data sub-range created at a database location adjacent to the first data sub-range;

transferring data associated with key values representing a start point and an end point of the first data sub-range start and end points to the second database;

changing the mode of the second data sub-range to read-only;

changing the mode of the first data sub-range to deleted;

removing the second data sub-range on the second database, wherein removing the second sub-range changes the data mode of contained data to read-write;

deleting the data on the first database associated with the key values; and

clearing the first data sub-range on the source database, wherein the clearing causes the source database data range to contract to exclude the first data sub-range.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 9, 2015
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 039025/0454 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 6, 2012
From: GENC, GOKSEL; GUADARRAMA, HUMBERTO LEZAMA; CHANG, GARY; WATSON, ANDREW SEAN
To: MICROSOFT CORPORATION
Reel/Frame 029420/0170 →
Continuity (1)
Related Publication 20140164443A1 · Jun 12, 2014