Patent US6070170A successfully refreshed from Google Patents.
← Back to Patent Explorer
US6070170A Expired / Lapsed US ⏱️ 0.0 years remaining

Non-blocking drain method and apparatus used to reorganize data in a database

Assignee: GlobalFoundries Inc
•
Filing: 1997-10-01
•
Granted: 2000-05-30
•
Expires: 2017-10-01
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method and apparatus for online reorganization of a database which does not prevent a process from accessing the database during the data reorganization. The invention uses a non-blocking drain to lock on a database, unloads a copy of the data contained in the database, reorganizes the copied data, loads the reorganized data into a shadow location, applies log records to the shadow location data so that the reorganized data may be adjusted for any changes to the database after the data was copied and reorganized, and then replaces the data in the database with the reorganized data. The non-blocking drain does not prevent other requests on the database from being processed while the reorganization lock is in place, except briefly when the reorganized data replaces the data in the database.

Inventors

  • 👤 Craig Alan Friske
  • 👤 Gary Howard Sockut
  • 👤 James Zu-chia Teng
  • 👤 Stephen Walter Turnbaugh

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-02 03:05
CPC Classifications
G; G06; G06F; G06F16/00; G06F16/20; G06F16/22; G06F16/2282; Y; Y10; Y10S; Y10S707/00; Y10S707/99951; Y10S707/99952; Y10S707/99953

Claims Analysis

Total Claims: 24
Claim 1
Independent Claim 142 words
A method for use in reorganizing a resource including data, the method comprising: in response to a reorganization request, using a non-blocking drain to lock on the resource; delaying processing of the reorganization request until the completion of processing of one or more requests on the resource made prior to the reorganization request; processing one or more requests on the resource made during the delay in processing of the reorganization request; after the delay in processing the reorganization request, processing the reorganization request by: unloading a copy of the data from the resource; reorganizing said copied data; loading said reorganized data into a shadow location; applying log records to said shadow location data, said log records adjusting said reorganized data for changes occurring to the resource after said data was unloaded; and replacing said data in the resource with said reorganized data.
Claim 2
Independent Claim 142 words
A method for use in reorganizing a resource including data, the method comprising: in response to a reorganization request, using a non-blocking drain to lock on the resource; delaying processing of the reorganization request until the completion of processing of one or more requests on the resource made prior to the reorganization request; processing one or more requests on the resource made during the delay in processing of the reorganization request; after the delay in processing the reorganization request, processing the reorganization request by: unloading a copy of the data from the resource; reorganizing said copied data; loading said reorganized data into a shadow location; applying log records to said shadow location data, said log records adjusting said reorganized data for changes occurring to the resource after said data was unloaded; and replacing said data in the resource with said reorganized data.
Claim 3
Dependent Claim 22 words
The method recited in claim 1, further comprising: building reorganized data indexes; and replacing resource data indexes with said reorganized data indexes.
Claim 4
Dependent Claim 53 words
The method recited in claim 2, including determining a logical record sequence number, said logical record sequence number used to mark a logical time, wherein unloading said data and determining said logical record sequence number is queued until all processes utilizing said resource which were active when said lock was established have completed.
Claim 5
Dependent Claim 23 words
The method recited in claim 3, wherein said logical record sequence number is determined during the unloading of said data from the resource.
Claim 6
Dependent Claim 25 words
The method recited in claim 4, wherein said data is compressed data and the method includes building a new dictionary after said data is reorganized.
Claim 7
Dependent Claim 191 words
A signal-bearing medium tangibly embodying a program of machine-readable instructions executable by a digital processing apparatus to perform a method for reorganizing a resource including data, said method comprising: in response to a reorganization request, using a non-blocking drain to lock on the resource; delaying processing of the reorganization request until the completion of processing of one or more requests on the resource made prior to the reorganization request; processing one or more requests on the resource made during the delay in processing of the reorganization request; after the delay in processing the reorganization request, processing the reorganization request by: unloading a copy of the data from the resource; reorganizing said copied data; loading said reorganized data into a shadow location; applying log records to said shadow location data, said log records adjusting said reorganized data for changes occurring to the resource after said data was unloaded; replacing said data in the resource with said reorganized data; and wherein changes due to the processing of the requests made prior to the reorganization request and during the delay in processing the reorganization request are included in the processing of the reorganization request.
Claim 8
Dependent Claim 191 words
A signal-bearing medium tangibly embodying a program of machine-readable instructions executable by a digital processing apparatus to perform a method for reorganizing a resource including data, said method comprising: in response to a reorganization request, using a non-blocking drain to lock on the resource; delaying processing of the reorganization request until the completion of processing of one or more requests on the resource made prior to the reorganization request; processing one or more requests on the resource made during the delay in processing of the reorganization request; after the delay in processing the reorganization request, processing the reorganization request by: unloading a copy of the data from the resource; reorganizing said copied data; loading said reorganized data into a shadow location; applying log records to said shadow location data, said log records adjusting said reorganized data for changes occurring to the resource after said data was unloaded; replacing said data in the resource with said reorganized data; and wherein changes due to the processing of the requests made prior to the reorganization request and during the delay in processing the reorganization request are included in the processing of the reorganization request.
Claim 9
Dependent Claim 32 words
The signal-bearing medium for performing the data reorganization method as recited in claim 6, further comprising: building a reorganized data index; and replacing a resource data index with said reorganized data index.
Claim 10
Dependent Claim 62 words
The signal-bearing medium for performing the data reorganization method as recited in claim 7, including determining a logical record sequence number, said logical record sequence number used to mark a logical time, wherein unloading said data and determining said logical record sequence number is queued until all processes utilizing said resource and which were active when said lock was established have completed.
Claim 11
Dependent Claim 31 words
The signal-bearing medium for performing the data reorganization method as recited in claim 8, wherein said logical record sequence number is determined during the unloading of said data from the resource.
Claim 12
Dependent Claim 33 words
The signal-bearing medium for performing the data reorganization method as recited in claim 9, wherein said data is compressed data and the method includes building a new dictionary after said data is reorganized.
Claim 13
Dependent Claim 228 words
A digital processing machine used to reorganize a database, the device comprising: a database; a digital processing apparatus communicatively coupled to said database, the digital processing apparatus configured to receive data from said database, and further configured to receive data and commands from a signal-bearing medium tangibly embodying a program of machine-readable instructions executable by the digital processing apparatus and used to reorganize said database by: in response to a reorganization request, using a non-blocking drain to lock on the resource; delaying processing of the reorganization request until the completion of processing of one or more requests on the resource made prior to the reorganization request; processing one or more requests on the resource made during the delay in processing of the reorganization request; after the delay in processing the reorganization request, processing the reorganization request by: unloading a copy of the data from the resource; reorganizing said copied data; loading said reorganized data into a shadow location; applying log records to said shadow location data, said log records adjusting said reorganized data for changes occurring to the resource after said data was unloaded; replacing said data in the resource with said reorganized data; and wherein changes due to the processing of the requests made prior to the reorganization request and during the delay in processing the reorganization request are included in the processing of the reorganization request.
Claim 14
Dependent Claim 228 words
A digital processing machine used to reorganize a database, the device comprising: a database; a digital processing apparatus communicatively coupled to said database, the digital processing apparatus configured to receive data from said database, and further configured to receive data and commands from a signal-bearing medium tangibly embodying a program of machine-readable instructions executable by the digital processing apparatus and used to reorganize said database by: in response to a reorganization request, using a non-blocking drain to lock on the resource; delaying processing of the reorganization request until the completion of processing of one or more requests on the resource made prior to the reorganization request; processing one or more requests on the resource made during the delay in processing of the reorganization request; after the delay in processing the reorganization request, processing the reorganization request by: unloading a copy of the data from the resource; reorganizing said copied data; loading said reorganized data into a shadow location; applying log records to said shadow location data, said log records adjusting said reorganized data for changes occurring to the resource after said data was unloaded; replacing said data in the resource with said reorganized data; and wherein changes due to the processing of the requests made prior to the reorganization request and during the delay in processing the reorganization request are included in the processing of the reorganization request.
Claim 15
Dependent Claim 26 words
The digital processing machine recited in claim 11, further comprising: building a reorganized data index; and replacing a resource data index with said reorganized data index.
Claim 16
Dependent Claim 56 words
The digital processing machine recited in claim 12, including determining a logical record sequence number, said logical record sequence number used to mark a logical time, wherein unloading said data and determining said logical record sequence number is queued until all processes utilizing said resource and which were active when said lock was established have completed.
Claim 17
Dependent Claim 25 words
The digital processing machine recited in claim 13, wherein said logical record sequence number is determined during the unloading of said data from the resource.
Claim 18
Dependent Claim 27 words
The digital processing machine recited in claim 14, wherein said data is compressed data and the method includes building a new dictionary after said data is reorganized.
Claim 19
Independent Claim 196 words
An apparatus for reorganizing a database, the apparatus comprising: a digital processing apparatus configured to receive data from a database, and further configured to receive data and commands from a signal-bearing medium tangibly embodying a program of machine-readable instructions executable by the digital processing apparatus and used to reorganize said database; means for storing said database; non-blocking drain means for accessing and locking said database in response to a reorganization request; means for delaying processing of the reorganization request until the completion of processing of one or more requests on the resource made prior to the reorganization request; means for processing one or more requests on the resource made during the delay in processing of the reorganization request; means for processing the reorganization request after the delay in processing, including: copying means for copying data from said database; means for reorganizing said copied data; means for loading said reorganized data into a shadow location; log means for applying log records to said shadow location data, said log records adjusting said reorganized data for changes occurring to said database after said data was unloaded; and means for replacing said data in said database with said reorganized data.
Claim 20
Independent Claim 196 words
An apparatus for reorganizing a database, the apparatus comprising: a digital processing apparatus configured to receive data from a database, and further configured to receive data and commands from a signal-bearing medium tangibly embodying a program of machine-readable instructions executable by the digital processing apparatus and used to reorganize said database; means for storing said database; non-blocking drain means for accessing and locking said database in response to a reorganization request; means for delaying processing of the reorganization request until the completion of processing of one or more requests on the resource made prior to the reorganization request; means for processing one or more requests on the resource made during the delay in processing of the reorganization request; means for processing the reorganization request after the delay in processing, including: copying means for copying data from said database; means for reorganizing said copied data; means for loading said reorganized data into a shadow location; log means for applying log records to said shadow location data, said log records adjusting said reorganized data for changes occurring to said database after said data was unloaded; and means for replacing said data in said database with said reorganized data.
Claim 21
Dependent Claim 63 words
The apparatus recited in claim 16, including means for determining a logical record sequence number, said logical record sequence number used to mark a logical time within said copied data, and wherein means for copying said data and determining said logical record sequence number is queued until all processes utilizing said database and which were active when said lock was established have completed.
Claim 22
Dependent Claim 22 words
The apparatus recited in claim 17, wherein said logical record sequence number is determined during unloading of said data from said database.
Claim 23
Dependent Claim 26 words
The apparatus recited in claim 18, further comprising: means for building reorganized data indexes; and means for replacing database data indexes with said reorganized data indexes.
Claim 24
Dependent Claim 33 words
The apparatus recited in claim 19, wherein said data is compressed data and the apparatus further comprises a means for building a new dictionary for said compressed data after said data is reorganized.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2003-05-30 2003-11-29 2004-05-30 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2007-05-30 2007-11-29 2008-05-30 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2011-05-30 2011-11-29 2012-05-30 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag