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

Method and system for load balancing by replicating a portion of a file being read by a first stream onto second device and reading portion with a second stream capable of accessing

Assignee: International Business Machines Corp
•
Filing: 1998-08-28
•
Granted: 2001-04-24
•
Expires: 2018-08-28
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method and system for improving load balancing in a file server is disclosed. The method includes determining the existence of an overload condition on a storage device, the storage device having a plurality of retrieval streams accessing at least one file thereon; selecting a first retrieval stream reading a file; replicating a portion of said file being read by said first retrieval stream onto a second storage device; and reading the replicated portion of said file on said second storage device with a retrieval stream capable of accessing the replicated portion of said file. The method and system enables the dynamic replication of data objects to respond to fluctuating user demand. The method and system is particularly useful in file servers such as multimedia servers delivering continuously in real time large multimedia files such as movies.

Inventors

  • 👤 Asit Dan
  • 👤 Martin Gerhard Kienzle
  • 👤 Dinkar Sitaram
  • 👤 Philip Shi-lung Yu

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-08 15:13
CPC Classifications
H; H04; H04N; H04N21/00; H04N21/20; H04N21/21; H04N21/218; H04N21/21815; H04N21/2182; G; G06; G06F; G06F16/00; G06F16/40; G06F3/00; G06F3/06; G06F3/0601; G06F3/0602; G06F3/061; G06F3/0628; G06F3/0646; G06F3/065; G06F3/0668; G06F3/0671; G06F3/0683; G06F3/0689; G06F11/00; G06F11/30; G06F11/34; G06F11/3409; G06F11/3433

Claims Analysis

Total Claims: 49
Claim 1
Independent Claim 119 words
An article of manufacture comprising a computer useable medium having computer readable program code means embodied therein for improving load balancing in a file server, comprising: code means for determining the existence of an overload condition on a first storage device, said first storage device having a plurality of retrieval streams accessing at least one file thereon; code means for selecting a first retrieval stream reading a file; code means for replicating a portion of said file while being read by said first retrieval stream onto a second storage device; and code means for reading said replicated portion of said file on said second storage device with a retrieval stream capable of accessing said replicated portion of said file.
Claim 2
Dependent Claim 119 words
An article of manufacture comprising a computer useable medium having computer readable program code means embodied therein for improving load balancing in a file server, comprising: code means for determining the existence of an overload condition on a first storage device, said first storage device having a plurality of retrieval streams accessing at least one file thereon; code means for selecting a first retrieval stream reading a file; code means for replicating a portion of said file while being read by said first retrieval stream onto a second storage device; and code means for reading said replicated portion of said file on said second storage device with a retrieval stream capable of accessing said replicated portion of said file.
Claim 3
Dependent Claim 33 words
The article of manufacture of claim 1 wherein said determining code means determines the existence of an overload condition on the first storage device by detecting a threshold level on said storage device.
Claim 4
Dependent Claim 24 words
The article of manufacture of claim 1 wherein said first retrieval stream is selectively chosen from a plurality of retrieval streams reading said file.
Claim 5
Dependent Claim 33 words
The article of manufacture of claim 1 wherein said second storage device is chosen from a plurality of available storage devices, said second storage device having the largest available amount of storage space.
Claim 6
Dependent Claim 68 words
The article of manufacture of claim 1 wherein said code means for replicating a portion of said file being read by said first retrieval stream onto said second storage device includes code means for initially creating a switching point entry on a file information table so that said portion of said file can be indexed for ease of switching between said second storage device and another storage device.
Claim 7
Dependent Claim 186 words
An article of manufacture comprising a computer useable medium having computer readable program code means embodied therein for improving load balancing in a file server comprising: code means for determining the existence of an overload condition on a first storage device, said first storage device having a plurality of retrieval streams accessing at least one file thereon; code means for selecting a first retrieval stream reading a file; code means for replicating a portion of said file being read by said first retrieval stream onto a second storage device; and code means for reading said replicated portion of said file on said second storage device with a retrieval stream capable of accessing said replicated portion of said file; wherein said code means for replicating a portion of said file being read by said first retrieval stream onto a second storage device comprises: code means for reading said file using said first retrieval stream from said first storage device; and code means for writing said portion of said file using a retrieval stream capable of accessing said replicated portion of said file onto said second storage device.
Claim 8
Dependent Claim 186 words
An article of manufacture comprising a computer useable medium having computer readable program code means embodied therein for improving load balancing in a file server comprising: code means for determining the existence of an overload condition on a first storage device, said first storage device having a plurality of retrieval streams accessing at least one file thereon; code means for selecting a first retrieval stream reading a file; code means for replicating a portion of said file being read by said first retrieval stream onto a second storage device; and code means for reading said replicated portion of said file on said second storage device with a retrieval stream capable of accessing said replicated portion of said file; wherein said code means for replicating a portion of said file being read by said first retrieval stream onto a second storage device comprises: code means for reading said file using said first retrieval stream from said first storage device; and code means for writing said portion of said file using a retrieval stream capable of accessing said replicated portion of said file onto said second storage device.
Claim 9
Dependent Claim 15 words
The article of manufacture of claim 1 wherein said file comprises a plurality of blocks.
Claim 10
Dependent Claim 26 words
The article of manufacture of claim 7 wherein said file comprises a plurality of segments, each of said plurality of segments comprising a plurality of blocks.
Claim 11
Dependent Claim 28 words
The article of manufacture of claim 1 wherein said file comprises a plurality of segments and said portion of the file being replicated comprises one or more segments.
Claim 12
Dependent Claim 16 words
The article of manufacture of claim 1 wherein said file includes at least one primary segment.
Claim 13
Dependent Claim 16 words
The article of manufacture of claim 10 wherein said file includes a plurality of primary segments.
Claim 14
Dependent Claim 12 words
The system of claim 11 wherein said primary segments are permanent segments.
Claim 15
Dependent Claim 142 words
An article of manufacture comprising a computer useable medium having computer readable program code means embodied therein for improving load balancing in a file server, comprising: code means for determining the existence of an overload condition on a first storage device, said first storage device having a plurality of retrieval streams accessing at least one file thereon; code means for selecting a first retrieval stream reading a file; code means for replicating a portion of said file being read by said first retrieval stream onto a second storage device; and code means for reading said replicated portion of said file on said second storage device with a retrieval stream capable of accessing said replicated portion of said file; wherein said file includes at least one permanent, primary segment; and wherein said replicated portion of said file comprises at least one secondary segment.
Claim 16
Dependent Claim 142 words
An article of manufacture comprising a computer useable medium having computer readable program code means embodied therein for improving load balancing in a file server, comprising: code means for determining the existence of an overload condition on a first storage device, said first storage device having a plurality of retrieval streams accessing at least one file thereon; code means for selecting a first retrieval stream reading a file; code means for replicating a portion of said file being read by said first retrieval stream onto a second storage device; and code means for reading said replicated portion of said file on said second storage device with a retrieval stream capable of accessing said replicated portion of said file; wherein said file includes at least one permanent, primary segment; and wherein said replicated portion of said file comprises at least one secondary segment.
Claim 17
Dependent Claim 14 words
The article of manufacture claim 13 wherein said secondary segment is a temporary segment.
Claim 18
Dependent Claim 14 words
The article of manufacture of claim 14 wherein said secondary segment may be deleted.
Claim 19
Dependent Claim 25 words
The article of manufacture of claim 15 further comprising code means for converting one of said at least one primary segment to a secondary segment.
Claim 20
Dependent Claim 25 words
The article of manufacture of claim 15 further comprising code means for converting one of said at least one secondary segment to a primary segment.
Claim 21
Dependent Claim 183 words
An article of manufacture comprising a computer useable medium having computer readable program code means embodied therein for improving load balancing in a file server comprising: code means for determining the existence of an overload condition on a first storage device, said first storage device having a plurality of retrieval streams accessing at least one file thereon; code means for selecting a first retrieval stream reading a file; code means for replicating a portion of said file being read by said first retrieval stream onto a second storage device; and code means for reading said replicated portion of said file on said second storage device with a retrieval stream capable of accessing said replicated portion of said file; wherein said file comprises a plurality of blocks; and wherein said code means for replicating said portion of said file being read by said first retrieval stream onto said second storage device comprises: code means for sequentially reading said plurality of blocks from said first retrieval stream; and code means for writing one or more of said plurality of blocks onto said second storage device.
Claim 22
Dependent Claim 183 words
An article of manufacture comprising a computer useable medium having computer readable program code means embodied therein for improving load balancing in a file server comprising: code means for determining the existence of an overload condition on a first storage device, said first storage device having a plurality of retrieval streams accessing at least one file thereon; code means for selecting a first retrieval stream reading a file; code means for replicating a portion of said file being read by said first retrieval stream onto a second storage device; and code means for reading said replicated portion of said file on said second storage device with a retrieval stream capable of accessing said replicated portion of said file; wherein said file comprises a plurality of blocks; and wherein said code means for replicating said portion of said file being read by said first retrieval stream onto said second storage device comprises: code means for sequentially reading said plurality of blocks from said first retrieval stream; and code means for writing one or more of said plurality of blocks onto said second storage device.
Claim 23
Dependent Claim 195 words
An article of manufacture comprising a computer useable medium having computer readable program code means embodied therein for improving load balancing in a file server comprising: code means for determining the existence of an overload condition on a first storage device, said first storage device having a plurality of retrieval streams accessing at least one file thereon; code means for selecting a first retrieval stream reading a file; code means for replicating a portion of said file being read by said first retrieval stream onto a second storage device; and code means for reading said replicated portion of said file on said second storage device with a retrieval stream capable of accessing said replicated portion of said file; wherein said file comprises a plurality of segments, each of said plurality of segments comprising a plurality of blocks; and wherein said code means for replicating said portion of said file being read by said first retrieval stream onto said second storage device comprises: code means for sequentially reading at least one of said segments from said first retrieval stream; and code means for writing at least one of said segments on to said second storage device.
Claim 24
Dependent Claim 195 words
An article of manufacture comprising a computer useable medium having computer readable program code means embodied therein for improving load balancing in a file server comprising: code means for determining the existence of an overload condition on a first storage device, said first storage device having a plurality of retrieval streams accessing at least one file thereon; code means for selecting a first retrieval stream reading a file; code means for replicating a portion of said file being read by said first retrieval stream onto a second storage device; and code means for reading said replicated portion of said file on said second storage device with a retrieval stream capable of accessing said replicated portion of said file; wherein said file comprises a plurality of segments, each of said plurality of segments comprising a plurality of blocks; and wherein said code means for replicating said portion of said file being read by said first retrieval stream onto said second storage device comprises: code means for sequentially reading at least one of said segments from said first retrieval stream; and code means for writing at least one of said segments on to said second storage device.
Claim 25
Dependent Claim 16 words
The article of manufacture of claim 1 wherein said file server comprises a multimedia file server.
Claim 26
Dependent Claim 14 words
The article of manufacture of claim 1 wherein said storage device comprises a disk.
Claim 27
Dependent Claim 101 words
An article of manufacture comprising a computer useable medium having computer readable program code means embodied therein for improving load balancing in a file server comprising: code means for determining an excess number of permanently stored primary copies of a segment of a file; code means for converting one of said permanently stored primary copies of said segment, not being accessed, to a temporary secondary copy of said segment, wherein said secondary copy of said segment is capable of being overwritten; and code means for overwriting said secondary copy of said segment for improving the load balancing in said file server.
Claim 28
Dependent Claim 101 words
An article of manufacture comprising a computer useable medium having computer readable program code means embodied therein for improving load balancing in a file server comprising: code means for determining an excess number of permanently stored primary copies of a segment of a file; code means for converting one of said permanently stored primary copies of said segment, not being accessed, to a temporary secondary copy of said segment, wherein said secondary copy of said segment is capable of being overwritten; and code means for overwriting said secondary copy of said segment for improving the load balancing in said file server.
Claim 29
Dependent Claim 100 words
An article of manufacture comprising a computer useable medium having computer readable program code means embodied therein for improving load balancing in a file server comprising: code means for determining an excess number of permanently stored primary segments of a file; code means for estimating a required number of primary segments based on load history; code means for converting one of said permanently stored primary segments, not being accessed, to a temporary secondary segment, wherein said secondary segment is capable of being overwritten; and code means for overwriting said secondary segment for improving the load balancing in said file server.
Claim 30
Dependent Claim 100 words
An article of manufacture comprising a computer useable medium having computer readable program code means embodied therein for improving load balancing in a file server comprising: code means for determining an excess number of permanently stored primary segments of a file; code means for estimating a required number of primary segments based on load history; code means for converting one of said permanently stored primary segments, not being accessed, to a temporary secondary segment, wherein said secondary segment is capable of being overwritten; and code means for overwriting said secondary segment for improving the load balancing in said file server.
Claim 31
Dependent Claim 26 words
The article of manufacture of claim 23 further comprising code means for converting all permanently stored primary segments greater than said required number of primary segments.
Claim 32
Dependent Claim 99 words
An article of manufacture comprising a computer useable medium having computer readable program code means embodied therein for improving load balancing in a file server comprising: code means for determining a load on a temporarily stored secondary copy of a segment of a file; code means for determining if said load on said secondary copy of said segment exceeds a threshold value; and code means for converting said temporarily stored secondary copy of said segment to a permanently stored primary copy of said segment of said file, wherein said primary copy of said segment is prevented from being overwritten.
Claim 33
Dependent Claim 99 words
An article of manufacture comprising a computer useable medium having computer readable program code means embodied therein for improving load balancing in a file server comprising: code means for determining a load on a temporarily stored secondary copy of a segment of a file; code means for determining if said load on said secondary copy of said segment exceeds a threshold value; and code means for converting said temporarily stored secondary copy of said segment to a permanently stored primary copy of said segment of said file, wherein said primary copy of said segment is prevented from being overwritten.
Claim 34
Dependent Claim 96 words
An article of manufacture comprising a computer useable medium having computer readable program code means embodied therein for improving load balancing in a file server comprising: code means for determining a load on a temporarily stored secondary segment of a file including means for determining a variable load history for said secondary segment; code means for determining if said load on said secondary segment exceeds a threshold value; and code means for converting said temporarily stored secondary segment to a permanently stored primary segment of said file, wherein said primary segment is prevented from being overwritten.
Claim 35
Dependent Claim 96 words
An article of manufacture comprising a computer useable medium having computer readable program code means embodied therein for improving load balancing in a file server comprising: code means for determining a load on a temporarily stored secondary segment of a file including means for determining a variable load history for said secondary segment; code means for determining if said load on said secondary segment exceeds a threshold value; and code means for converting said temporarily stored secondary segment to a permanently stored primary segment of said file, wherein said primary segment is prevented from being overwritten.
Claim 36
Dependent Claim 25 words
The article of manufacture of claim 26 further comprising code means for analyzing said variable load history for determining if said threshold value is exceeded.
Claim 37
Dependent Claim 23 words
The article of manufacture of claim 1 wherein said file server comprises a video server, and wherein said file comprises a video file.
Claim 38
Independent Claim 108 words
A method for balancing a load in a file server having a plurality of retrieval streams reading at least one file therein, comprising: copying a portion of a file of said at least one file from a first storage area to a second storage area in said file server, for future access by at least one other retrieval stream, while the same data of the portion of the same file is being read by a given retrieval stream of the plurality of retrieval streams, wherein said copying includes using the given retrieval stream to read the data of the portion of the file from the first storage area.
Claim 39
Independent Claim 108 words
A method for balancing a load in a file server having a plurality of retrieval streams reading at least one file therein, comprising: copying a portion of a file of said at least one file from a first storage area to a second storage area in said file server, for future access by at least one other retrieval stream, while the same data of the portion of the same file is being read by a given retrieval stream of the plurality of retrieval streams, wherein said copying includes using the given retrieval stream to read the data of the portion of the file from the first storage area.
Claim 40
Independent Claim 118 words
A method for balancing a load in a file server having a plurality of retrieval streams reading at least one file therein, comprising: copying a portion of a file of said at least one file from a first storage area to a second storage area in said file server while the same data of the portion of the same file is being read by a given retrieval stream of the plurality of retrieval streams, wherein said copying includes using the given retrieval stream to read the data of the portion of the file from the first storage area, and using another retrieval stream to write the data of the portion of the file to the second storage area.
Claim 41
Independent Claim 118 words
A method for balancing a load in a file server having a plurality of retrieval streams reading at least one file therein, comprising: copying a portion of a file of said at least one file from a first storage area to a second storage area in said file server while the same data of the portion of the same file is being read by a given retrieval stream of the plurality of retrieval streams, wherein said copying includes using the given retrieval stream to read the data of the portion of the file from the first storage area, and using another retrieval stream to write the data of the portion of the file to the second storage area.
Claim 42
Independent Claim 114 words
A system for balancing a load in a file server having a plurality of retrieval streams reading at least one file therein, comprising: means for copying a portion of a file of said at least one file from a first storage area to a second storage area in said file server, for future access by at least one other retrieval stream, while the same data of the portion of the same file is being read by a given retrieval stream of the plurality of retrieval streams, wherein said means for copying includes means for using the given retrieval stream to read the data of the portion of the file from the first storage area.
Claim 43
Independent Claim 114 words
A system for balancing a load in a file server having a plurality of retrieval streams reading at least one file therein, comprising: means for copying a portion of a file of said at least one file from a first storage area to a second storage area in said file server, for future access by at least one other retrieval stream, while the same data of the portion of the same file is being read by a given retrieval stream of the plurality of retrieval streams, wherein said means for copying includes means for using the given retrieval stream to read the data of the portion of the file from the first storage area.
Claim 44
Independent Claim 124 words
A system for balancing a load in a file server having a plurality of retrieval streams reading at least one file therein, comprising: means for copying a portion of a file of said at least one file from a first storage area to a second storage area in said file server while the same data of the portion of the same file is being read by a given retrieval stream of the plurality of retrieval streams, wherein said means for copying includes means for using the given retrieval stream to read the data of the portion of the file from the first storage area, and using another retrieval stream to write the data of the portion of the file to the second storage area.
Claim 45
Independent Claim 124 words
A system for balancing a load in a file server having a plurality of retrieval streams reading at least one file therein, comprising: means for copying a portion of a file of said at least one file from a first storage area to a second storage area in said file server while the same data of the portion of the same file is being read by a given retrieval stream of the plurality of retrieval streams, wherein said means for copying includes means for using the given retrieval stream to read the data of the portion of the file from the first storage area, and using another retrieval stream to write the data of the portion of the file to the second storage area.
Claim 46
Dependent Claim 132 words
An article of manufacture comprising a computer useable medium having computer readable program code means embodied therein for balancing a load in a file server having a plurality of retrieval streams reading at least one file therein, comprising: code means for copying a portion of a file of said at least one file from a first storage area to a second storage area in said file server, for future access by at least one other retrieval stream, while the same data of the portion of the same file is being read by a given retrieval stream of the plurality of retrieval streams, wherein said code means for copying includes code means for using the given retrieval stream to read the data of the portion of the file from the first storage area.
Claim 47
Dependent Claim 132 words
An article of manufacture comprising a computer useable medium having computer readable program code means embodied therein for balancing a load in a file server having a plurality of retrieval streams reading at least one file therein, comprising: code means for copying a portion of a file of said at least one file from a first storage area to a second storage area in said file server, for future access by at least one other retrieval stream, while the same data of the portion of the same file is being read by a given retrieval stream of the plurality of retrieval streams, wherein said code means for copying includes code means for using the given retrieval stream to read the data of the portion of the file from the first storage area.
Claim 48
Dependent Claim 145 words
An article of manufacture comprising a computer useable medium having computer readable program code means embodied therein for balancing a load in a file server having a plurality of retrieval streams reading at least one file therein, comprising: code means for copying a portion of a file of said at least one file from a first storage area to a second storage area in said file server while the same data of the portion of the same file is being read by a given retrieval stream of the plurality of retrieval streams, wherein said code means for copying includes code means for using the given retrieval stream to read the data of the portion of the file from the first storage area, and code means for using another retrieval stream to write the data of the portion of the file to the second storage area.
Claim 49
Dependent Claim 145 words
An article of manufacture comprising a computer useable medium having computer readable program code means embodied therein for balancing a load in a file server having a plurality of retrieval streams reading at least one file therein, comprising: code means for copying a portion of a file of said at least one file from a first storage area to a second storage area in said file server while the same data of the portion of the same file is being read by a given retrieval stream of the plurality of retrieval streams, wherein said code means for copying includes code means for using the given retrieval stream to read the data of the portion of the file from the first storage area, and code means for using another retrieval stream to write the data of the portion of the file to the second storage area.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2004-04-23 2004-10-23 2005-04-24 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2008-04-23 2008-10-23 2009-04-24 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2012-04-23 2012-10-23 2013-04-24 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag