Multi-volume, write-behind data storage in a distributed...

Electrical computers and digital processing systems: memory – Storage accessing and control – Control technique

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C711S111000

Reexamination Certificate

active

06418519

ABSTRACT:

TECHNICAL FIELD
The present invention relates to mass storage of computer systems. More-particularly, the invention relates to a write-behind enablement process which allows writing of data to multiple volumes of storage media associated with one or more server nodes in a distributed processing environment.
BACKGROUND OF THE INVENTION
In a distributed client/server storage environment, a client process will send data for storage to a remote server node, which writes the data to the actual storage medium. The ability to write data to remote storage medium allows an application program to use hardware that is associated with processors other than the one the application program is running on. The sharing of hardware resources in this way is a main advantage of a distributed computing environment. In order to improve performance within such an environment, it is desirable that the client program write several blocks of data to the server node for storage before reading a response-from the server node to see if the transferred blocks of data have been written correctly. This technique of writing to the server node multiple blocks of data before confirming at a predetermined interval that the data has been correctly written is referred to as a “write-behind” function. With this function, communication overhead and delays between the client and server are minimized.
One difficulty with the write-behind process occurs because the client node does not continually check for status after sending each block of data. It will not be notified that the storage medium is full until the predetermined number of blocks have been sent to the server. Thus, the client node may only be notified of an end of volume condition after it has sent several additional blocks of data following the first block of data that would not fit in the storage medium.
One way that previous products have handled this problem is to require the client program to know the size of the storage medium before writing to it. As the client writes blocks of data to the storage medium, it knows that after a pre-specified number of blocks it must stop writing, and transition to a new storage medium. By doing this, the client never sends extra blocks to the server that cannot be written to the existing medium, and the problem is avoided.
There are two penalties for requiring the client to know the size of the storage media ahead of time. The first is that it is inconvenient to the programmer who must specify the storage medium size. The second is that in order to be safe, the maximum number of blocks is often not written to the storage medium. Thus, part of each storage medium may go unused.
In view of the above, a different approach to data transfer interfacing of the client and server nodes is desired.
DISCLOSURE OF THE INVENTION
Briefly summarized, in a first aspect the present invention comprises an article of manufacture which includes at least one computer usable medium having computer readable program code means embodied therein for storing data in a distributed processing system having multiple processors. One processor of the system is designated a client node and one or more other processors are designated server nodes. Each server node has at least one storage medium associated therewith. The computer readable program code means in the article of manufacture includes computer readable program code means for causing a computer to: (i) write blocks of data from a client process of the client node to a first storage medium of a first server node, the writing continuing until all blocks of data to be stored by the client process are written to the first storage medium or a physical end of storage is reached for the first storage medium, wherein the physical end of storage is reached without size of the first storage medium having been predetermined; (ii) switch writing blocks of data from the client node to a second storage medium of a second server node if the physical end of storage is reached for the first storage medium, wherein the switching writing is transparent to the client process; and (iii) adapt the writing of blocks of data from the client process of the client node to the first storage medium and to the second storage medium so that the writing comprises a write-behind operation, with the first server node and the second server node periodically notifying the client node whether previously received blocks of data have been correctly written to the first storage medium or the second storage medium, respectively.
In another aspect, the invention comprises an article of manufacture which includes at least one computer usable medium having computer readable program code means embodied therein for storing data in a distributed processing system having multiple processors. One processor of the system comprises a client node and one or more other processors comprise server nodes. Each server node has at least one storage medium associated therewith. The computer readable program code means in the article of manufacture includes computer readable program code means for causing a computer to: (i) write blocks of data from a client process of the client node to a first storage medium of the at least one storage medium associated with the first server node, the writing continuing until a physical end of the first storage medium is reached, wherein the physical end of the first storage medium is reached without having predetermined a size of the first storage medium; (ii) switch the writing of blocks of data to a second storage medium after the physical end of the first storage medium is reached, the second storage medium comprising a storage medium of the first server node or a storage medium of a second server node of the distributed processing system; (iii) adapt the writing of blocks of data to the first storage medium to comprise a write-behind operation wherein the first server node periodically notifies the client node whether previously received blocks of data have been written correctly to the first storage medium; and (iv) ascertain for the client process of the client node how many blocks of data were written to the first storage medium.
In a still further aspect, an article of manufacture is provided which includes at least one computer usable medium having computer readable program code means embodied therein for storing data in a distributed processing system having multiple processors. One processor of the system is designated a client node and one or more other processors comprise server nodes. Each server node has at least one storage medium associated therewith. The computer readable program code means in the article of manufacture includes computer readable program code means for causing a computer to: (i) write blocks of data from a client process of the client node to a first storage medium associated with a first server node of the distributed processing system, the writing continuing until a physical end of the first storage medium is reached, wherein the physical end of the first storage medium is reached without having predetermined a size of available storage in the first storage medium; (ii) write a header label to a second storage medium when the physical end of the first storage medium is reached, the second storage medium comprising a storage medium associated with the first server node or a storage medium associated with a second server node of the distributed processing system; (iii) switch the writing of blocks of data to the second storage medium when the physical end of the first storage medium is reached, wherein the header label precedes the writing of blocks of data to the second storage medium; and (iv) adapt the writing of blocks of data to the first storage medium so that the writing comprises a write-behind operation with the first server node periodically notifying the client node whether previously received blocks of data have been written correctly to the first storage medium.
The concepts presented herein produce numerous advantages over conventional client/server interfacing

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Multi-volume, write-behind data storage in a distributed... does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Multi-volume, write-behind data storage in a distributed..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Multi-volume, write-behind data storage in a distributed... will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-2884258

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.