System and method for managing data retrieval bandwidth

Electrical computers and digital processing systems: multicomput – Computer-to-computer session/connection establishing

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C709S228000, C709S229000, C709S230000, C707S793000, C707S793000

Reexamination Certificate

active

06289383

ABSTRACT:

TECHNICAL FIELD OF THE INVENTION
This invention relates to storage management systems and methods and more particularly to such system and method for efficiently managing the retrieval of data in accordance with desired system operational protocol.
BACKGROUND OF THE INVENTION
It is, of course, well known that computers use disks for the storage of data. Over the course of years as the CPU and other components of the computer architecture have become faster and faster the data retrieval speed (bandwidth) from these disks has also become faster. Many arrangements have been used, including interleaving, stripping, the concurrent use of multiple disks, high speed caching and including many forms of “look ahead” processing. All of which have not kept up with the continued advances in CPU processing speeds.
One solution to the problem which has only limited success is to partition the disk so that different users have access to only a preassigned disk space. This solution does not solve the multiple access problem with more than one user trying to obtain data from the disk at the same time, albeit from different apportioned disk spaces.
Another solution has been to allow certain access to have “immediate” data retrieval capability, almost on an interrupt basis. Here again, only one user can obtain data at a time using such a retrieval system. In such a system the user gives the system a number of bytes per second (or some other measure of desired access) and the system operates to provide this magnitude of throughput; however, such systems can only do this for what is called direct access to the disk. Thus, until the request for this group is met, no other application can access the storage. Accordingly, only one group has priority and everybody else waits.
Care must also be taken to avoid what is known as priority inversion. This results when a user has the lowest priority on the system (perhaps being allowed to have 1% of the CPU) and that user makes a high number of disk requests. Inversion occurs because CPU consumption stops as soon as a disk request is made and the required operation does not use the full time slot allotted. In such a situation, the user gets a higher priority to make up for the under utilization of the CPU. Thus, in such a situation, the 1% user can effectively stop the entire system. The problem is compounded when large data transfers are needed, such as a backup operation when much or all of the disk data is transferred to another storage medium, such as to a magnetic tape. Or when a large amount of data is required for a particular operation. Often in these situations if the data retrieval bandwidth is not fast enough the operation fails. For example, if the data does not come off of the disk fast enough to keep up with the tape streaming speed then the tape shuts down and the transfer process becomes inefficient. Applications that must wait for data retrieval often also shut down or shed load so as to match themselves to accommodate the data retrieval bandwidth.
Further compounding the problem is the fact that often many users share the same system, each user having different requirements. Thus, in a university setting many different departments may share the same system. Thus, the math department and the geology departments both may share the same system with the registrar's office where the class scheduling application resides. Thus, the situation can occur (and often does) that one or more of these departments may require disk bandwidth at a time when the other user also demands bandwidth. In this situation simply apportioning the disk among these users (while it solves the disk storage space availability problem) does not solve the problem of simultaneous data access. Also, giving one of the users direct access to the disk will result in the other users not being able to access their data at certain times.
Compounding the problem even further is the fact that certain users will demand equal access with another user, or will demand access in some proportion to the other users.
Thus, there is a need in the art for a system that will allow access to a data storage medium, such as a computer disk drive, on a controllable basis.
There is a further need in the art for such a system which can be selectively adapted so that certain users can be assured of access in a selected proportion to other users.
There is a still further need in the art for a storage access system which will maximize the apparent available data retrieval bandwidth for system users.
There is a need in the art for a storage access system which can be arranged to fairly and consistently apportion the input/output (I/O) between competing user applications allowing each such user application to achieve its apportioned usage.
SUMMARY OF THE INVENTION
These and other objects, features and technical advantages are achieved by a system and method which a system is arranged so as to assign to particular users (or applications) a percentage of the I/O requests from storage. Once the assignment is made to a particular user (application) a factor number becomes associated with each and every data request from that user. The number, in turn, is used to calculate an end time for data retrieval such that the data requested will be available to the user at that end time. Each such end time will take into account the possible start times that then existed will be adjusted accordingly.
In operation, the higher the percentage assigned to the user, the lower will be the factor for that user. Thus, when multiple access requests arrive from different users various end times are calculated, each dependent upon the last end time granted that user and the size of the current request available start times, which in turn are calculated on a first to arrive basis.
Using this system and method it would be expected that a user with a 75% retrieval availability will be granted 3 storage access requests for every one request granted to the 25% user and an 80% user will, for any batch of retrieval requests, be granted 8 out of every 10 requests.
The system, in effect, delays retrieval requests for periods of time so that other users can get into the request queue in relationship to their assigned percentages. Thus, access to storage is no longer on a first to request basis but rather each request is processed to determine when, based on an arbitrary start time for each batch of requests, the data will be retrieved. From the user's perspective there is no perceived difference in retrieval time and so long as the time is under a certain amount, for example, one second, the user does not know that the retrieval process was artificially delayed as to any particular request.
In some situation it is advantageous to rearrange the order of the retrieval requests, even after they have been calculated as discussed above so that the system will operate even faster. Thus, by way of example, the physical location on the disk of certain data may dictate when that data should be obtained for maximum retrieval performance. In such situations, request orderings for such data will be rearranged
It is one technical advantage of the invention that for every batch of storage device requests the actual data retrieval start times will be adjusted for each user in accordance with the percentage availability assigned to that user.
It is a further technical advantage of the invention that the start times will be further adjusted dependent upon efficient operation and data retrieval techniques.
It is a still further technical advantage of the invention that even the users who have been assigned 1% of the data retrievals will not be blocked from data retrieval (starvation) and that low assigned percentage users can not block any other user from retrieval regardless as to how many retrieval requests the low percentage user makes (inversion).
The foregoing has outlined rather broadly the features and technical advantages of the present invention in order that the detailed description of the invention that follows may be better understood.

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

System and method for managing data retrieval bandwidth does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with System and method for managing data retrieval bandwidth, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and System and method for managing data retrieval bandwidth will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-2529976

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