← Back to Patent Explorer
EP0411788A2 Expired / Lapsed EP ⏱️ 0.0 years remaining

External sorting using virtual storage

Assignee: International Business Machines Corp
•
Filing: 1990-07-18
•
Granted: —
•
Expires: 2010-07-18
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract By using a real memory-backed demand paging virtual store as a work device in an external sort, then data movements and processing time are substantially less than that for processing the same external sort in either an internal (real) memory or DASD serving as the work device. Also, reblocking of generated partial sort strings during the sort phase and of the totally ordered string during the merge phase is avoided. The optimum ratio of internal (real) memory backing to the virtual store lies between 30-80 percent. Page faulting is reducible as a consequence of the fact that in the external sorting using the virtual store as a work device, a data element need only be referenced twice.

Inventors

  • 👤 Gary David Archer
  • 👤 Douglas Robert Case
  • 👤 Hilda Jya-Wei Wu

Bibliographic Details

Application Number —
Jurisdiction EP
Data Source google_patents
Last Synchronized 2026-11-05 14:35
CPC Classifications
G; G06; G06F; G06F7/00; G06F7/22; G06F7/36; Y; Y10; Y10S; Y10S707/00; Y10S707/99931; Y10S707/99937

Claims Analysis

Total Claims: 16
Claim 1
Independent Claim 128 words
A data processing system comprising a CPU having LRU-managed virtual storage supported by fast internal (real) memory and a slower higher capacity backing store and sort logic for performing an external sort operation on key-based records by: (a) during a sort phase, reading subsets of record keys into a fully internal memory-backed virtual storage, arranging the records into ordered strings, and mapping the ordered strings into other selectively internal memory-backed portions of virtual storage; and (b) during a merge phase, mapping back preselected elements of the sorted strings into fully internal memory-backed virtual storage and performing a multiple- way merge operation on said mapped preselected string elements, whereby the virtual storage is used as a work device during the sort and merge phases of the external sort operation.
Claim 2
Dependent Claim 128 words
A data processing system comprising a CPU having LRU-managed virtual storage supported by fast internal (real) memory and a slower higher capacity backing store and sort logic for performing an external sort operation on key-based records by: (a) during a sort phase, reading subsets of record keys into a fully internal memory-backed virtual storage, arranging the records into ordered strings, and mapping the ordered strings into other selectively internal memory-backed portions of virtual storage; and (b) during a merge phase, mapping back preselected elements of the sorted strings into fully internal memory-backed virtual storage and performing a multiple- way merge operation on said mapped preselected string elements, whereby the virtual storage is used as a work device during the sort and merge phases of the external sort operation.
Claim 3
Dependent Claim 65 words
A data processing system as claimed in claim 1, wherein the multiple-way merge is of the replacement selection type, wherein the sort logic, during the sort phase, creates and updates a table of the starting virtual storage addresses of all ordered strings, and wherein the sort logic subsequently accesses preselected elements used in the multiple-way merge according to the table address and a displacement therefrom.
Claim 4
Dependent Claim 62 words
A data processing system as claimed in claim 1 or claim 2, wherein each subset is called into a counterpart virtual storage space at least twice the address capacity of the subset, and further wherein the ordered string is written into a distinctive portion of the internal memory-backed virtual storage by virtual storage address modification rather than data movement in internal memory.
Claim 5
Dependent Claim 213 words
A data processing system comprising a CPU having LRU-managed virtual storage, said CPU including internal (real) memory for storing programs and data, and means for accessing the real memory for executing sort and management operations, said real memory and accessing means being managed as virtual storage, said sort string generation logic for generating a sort string of m records as a nested ordering of keys of the records by; (a) during a first pass, calling one of m/s subsets of s keys (s < m) of the records from an extrinsic source into a portion of virtual storage fully backed by internal (real) memory, and arranging the called subset into a partial nested ordering thereof, moving the nested ordering to another portion of virtual storage selectively backed by internal (real) memory and updating a table with the virtual storage address of the nested ordering, this being repeated until the m/s subsets are exhausted; and (b) during a second pass, executing a t-way replacement selection merge (t < s) in virtual storage selectively backed by internal (real) memory from among at least one key selected from each of t partial nested orderings of the subsets resident in the virtual storage according to their table virtual storage addresses until the m/s such orderings become exhausted.
Claim 6
Dependent Claim 213 words
A data processing system comprising a CPU having LRU-managed virtual storage, said CPU including internal (real) memory for storing programs and data, and means for accessing the real memory for executing sort and management operations, said real memory and accessing means being managed as virtual storage, said sort string generation logic for generating a sort string of m records as a nested ordering of keys of the records by; (a) during a first pass, calling one of m/s subsets of s keys (s < m) of the records from an extrinsic source into a portion of virtual storage fully backed by internal (real) memory, and arranging the called subset into a partial nested ordering thereof, moving the nested ordering to another portion of virtual storage selectively backed by internal (real) memory and updating a table with the virtual storage address of the nested ordering, this being repeated until the m/s subsets are exhausted; and (b) during a second pass, executing a t-way replacement selection merge (t < s) in virtual storage selectively backed by internal (real) memory from among at least one key selected from each of t partial nested orderings of the subsets resident in the virtual storage according to their table virtual storage addresses until the m/s such orderings become exhausted.
Claim 7
Dependent Claim 26 words
A data processing system as claimed in any preceding claim wherein said internal memory includes a byte-oriented, randomly addressable portion and a block-oriented and LRU-managed portion.
Claim 8
Dependent Claim 29 words
A data processing system as claimed in any preceding claim, wherein the ratio of internal (real) memory backing to virtual storage lies in the range substantially between 30-80 percent.
Claim 9
Independent Claim 133 words
A method of performing an external sort operation on key-based records in a data processing system comprising a CPU having LRU-managed virtual storage supported by fast internal (real) memory and a slower higher capacity backing store, the method comprising the steps of: (a) during a sort phase, reading subsets of record keys into a fully internal memory-backed virtual storage, arranging the records into ordered strings, and mapping the ordered strings into other selectively internal memory-backed portions of virtual storage; and (b) during a merge phase, mapping back preselected elements of the sorted strings into fully internal memory-backed virtual storage and performing a multiple- way merge operation on said mapped preselected string elements, whereby the virtual storage is used as a work device during the sort and merge phases of the external sort operation.
Claim 10
Independent Claim 133 words
A method of performing an external sort operation on key-based records in a data processing system comprising a CPU having LRU-managed virtual storage supported by fast internal (real) memory and a slower higher capacity backing store, the method comprising the steps of: (a) during a sort phase, reading subsets of record keys into a fully internal memory-backed virtual storage, arranging the records into ordered strings, and mapping the ordered strings into other selectively internal memory-backed portions of virtual storage; and (b) during a merge phase, mapping back preselected elements of the sorted strings into fully internal memory-backed virtual storage and performing a multiple- way merge operation on said mapped preselected string elements, whereby the virtual storage is used as a work device during the sort and merge phases of the external sort operation.
Claim 11
Dependent Claim 57 words
A method as claimed in claim 7, wherein the multiple-way merge is of the replacement selection type, wherein sort phase includes creating and updating a table of the starting virtual storage addresses of all ordered strings, and wherein the preselected elements used in the multiple-way merge are accessed according to the table address and a displacement therefrom.
Claim 12
Dependent Claim 60 words
A method as claimed in claim 7 or claim 8, wherein each subset is called into a counterpart virtual storage space at least twice the address capacity of the subset, and further wherein the ordered string is written into a distinctive portion of the internal memory-backed virtual storage by virtual storage address modification rather than data movement in internal memory.
Claim 13
Independent Claim 227 words
A method of generating a sort string of m records in a data processing system comprising a central processing unit having LRU-managed virtual storage, said CPU including internal (real) memory for storing programs and data, and means for accessing the real memory for executing sort and management operations, said real memory and accessing means being managed as virtual storage, the method of generating the sort string being manifest as a nested ordering of keys of the records and comprising the steps of: (a) during a first pass, calling one of m/s subsets of s keys (s < m) of the records from an extrinsic source into a portion of virtual storage fully backed by internal (real) memory, and arranging the called subset into a partial nested ordering thereof, moving the nested ordering to another portion of virtual storage selectively backed by internal (real) memory and updating a table with the virtual storage address of the nested ordering, the step being repeated until the m/s subsets are exhausted; and (b) during a second pass, executing a t-way replacement selection merge (t < s) in virtual storage selectively backed by internal (real) memory from among at least one key selected from each of t partial nested orderings of the subsets resident in the virtual storage according to their table virtual storage addresses until the m/s such orderings become exhausted.
Claim 14
Independent Claim 227 words
A method of generating a sort string of m records in a data processing system comprising a central processing unit having LRU-managed virtual storage, said CPU including internal (real) memory for storing programs and data, and means for accessing the real memory for executing sort and management operations, said real memory and accessing means being managed as virtual storage, the method of generating the sort string being manifest as a nested ordering of keys of the records and comprising the steps of: (a) during a first pass, calling one of m/s subsets of s keys (s < m) of the records from an extrinsic source into a portion of virtual storage fully backed by internal (real) memory, and arranging the called subset into a partial nested ordering thereof, moving the nested ordering to another portion of virtual storage selectively backed by internal (real) memory and updating a table with the virtual storage address of the nested ordering, the step being repeated until the m/s subsets are exhausted; and (b) during a second pass, executing a t-way replacement selection merge (t < s) in virtual storage selectively backed by internal (real) memory from among at least one key selected from each of t partial nested orderings of the subsets resident in the virtual storage according to their table virtual storage addresses until the m/s such orderings become exhausted.
Claim 15
Independent Claim 28 words
A method as claimed in any one of claims 7 to 10 wherein said internal memory includes a byte-oriented, randomly addressable portion and a block-oriented and LRU-managed portion.
Claim 16
Independent Claim 32 words
A method as claimed in any one of claims 7 to 11 wherein wherein the ratio of internal (real) memory backing to virtual storage lies in the range substantially between 30-80 percent.

References Cited (Backward Citations)

No citation records indexed.

USPTO Annuity & Maintenance Windows

Maintenance schedule is calculated for granted US utility patents.

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag