CN113672168B - Bandwidth resource allocation method, device and equipment of storage system and storage medium - Google Patents

Bandwidth resource allocation method, device and equipment of storage system and storage medium Download PDF

Info

Publication number
CN113672168B
CN113672168B CN202110800341.7A CN202110800341A CN113672168B CN 113672168 B CN113672168 B CN 113672168B CN 202110800341 A CN202110800341 A CN 202110800341A CN 113672168 B CN113672168 B CN 113672168B
Authority
CN
China
Prior art keywords
volume
bandwidth resources
logic
bandwidth
logical volume
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202110800341.7A
Other languages
Chinese (zh)
Other versions
CN113672168A (en
Inventor
王勇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Jinan Inspur Data Technology Co Ltd
Original Assignee
Jinan Inspur Data Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Jinan Inspur Data Technology Co Ltd filed Critical Jinan Inspur Data Technology Co Ltd
Priority to CN202110800341.7A priority Critical patent/CN113672168B/en
Publication of CN113672168A publication Critical patent/CN113672168A/en
Application granted granted Critical
Publication of CN113672168B publication Critical patent/CN113672168B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0662Virtualisation aspects
    • G06F3/0665Virtualisation aspects at area level, e.g. provisioning of virtual or logical volumes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals

Abstract

The application discloses a bandwidth resource allocation method of a storage system, which is characterized in that bandwidth resources of the storage system are effectively allocated among a plurality of logic volumes, firstly, corresponding preset proportion is set for each logic volume, when the bandwidth resources are allocated, if the requirements of the logic volumes are large, the logic volumes are ensured to obtain bandwidth resources not lower than the preset proportion no matter the system is busy or idle, otherwise, if the requirements of the logic volumes are smaller or no, the idle bandwidth resources are allocated to other logic volumes with requirements, and finally, the purpose of allocating the available bandwidth resources to the logic volumes with actual requirements as much as possible is achieved, so that the logic volumes with requirements can obtain enough bandwidth resources, meanwhile, the utilization rate of the bandwidth resources of the storage system is obviously improved, and the idle of the bandwidth resources of the system is reduced. In addition, the application also provides a bandwidth resource allocation device, equipment and a readable storage medium of the storage system, and the technical effects of the device correspond to those of the method.

Description

Bandwidth resource allocation method, device and equipment of storage system and storage medium
Technical Field
The present invention relates to the field of computer technologies, and in particular, to a method, an apparatus, a device, and a readable storage medium for allocating bandwidth resources of a storage system.
Background
The bandwidth of the storage system belongs to a shared resource, and is generally required to be distributed among a plurality of logic volumes, meanwhile, the bandwidth resource has an aging property, and a certain total bandwidth amount is available in each unit time and can only be consumed at the moment. In order to ensure that each logical volume can occupy the system bandwidth resource, a common allocation method is a mode of limiting the maximum usage amount, so that the situation that other logical volumes cannot occupy the bandwidth resource due to excessive consumption of individual logical volumes is avoided, but the allocation method can limit the maximum utilization rate of the system bandwidth resource on one hand, and cannot ensure that each logical volume can occupy enough bandwidth resource when needed on the other hand.
It can be seen how to provide a bandwidth resource allocation scheme in a storage system, so as to avoid the above drawbacks, which is a problem to be solved by those skilled in the art.
Disclosure of Invention
The invention aims to provide a bandwidth resource allocation method, device and equipment of a storage system and a readable storage medium, which are used for solving the problems that the current bandwidth resource allocation scheme not only limits the maximum utilization rate of bandwidth resources, but also can not ensure that a logic volume with a requirement obtains enough bandwidth resources. The specific scheme is as follows:
in a first aspect, the present application provides a method for allocating bandwidth resources of a storage system, including:
setting a corresponding preset proportion for each logic volume of the storage system;
determining bandwidth resources of the preset proportion, which are preset to be distributed to each logic volume, according to the preset proportion and available bandwidth resources of the storage system in unit time;
when bandwidth resources are allocated to the logic volume of the bandwidth resources to be occupied, judging whether the bandwidth resources with the preset proportion meet the requirements of the logic volume or not;
if yes, distributing the bandwidth resources with the preset proportion to the logic volume;
if the bandwidth resources do not meet the requirements, the bandwidth resources of the preset proportion and the bandwidth resources of the target logic volume are allocated for the logic volume to meet the requirements of the logic volume, wherein the target logic volume is a logic volume borrowed by the bandwidth resources of the logic volume within the past T unit times and/or a logic volume which does not occupy the bandwidth resources for the longest time within the past T unit times.
Optionally, the allocating the bandwidth resource of the preset proportion and the bandwidth resource of the target logical volume to the logical volume to meet the requirement of the logical volume, where the target logical volume is a logical volume borrowed by the bandwidth resource of the logical volume in the past T units of time and/or a logical volume that does not occupy the bandwidth resource for the longest time in the past T units of time, includes:
judging whether a first target logical volume exists, wherein the first target logical volume is a logical volume borrowed by the logical tape width resource in the past T unit time;
if a first target logical volume exists, allocating the bandwidth resources with the preset proportion and the bandwidth resources of the first target logical volume to the logical volume so as to meet the requirements of the logical volume;
if the first target logical volume does not exist or the bandwidth resources of the preset proportion and the bandwidth resources of the first target logical volume cannot meet the requirements of the logical volume, judging whether a second target logical volume exists, wherein the second target logical volume is the logical volume which does not occupy the bandwidth resources for the longest time in the past T unit time;
if the second target logical volume exists, the bandwidth resources with the preset proportion and the bandwidth resources of the second target logical volume are allocated for the logical volume, or the bandwidth resources with the preset proportion, the bandwidth resources of the first target logical volume and the bandwidth resources of the second target logical volume are allocated for the logical volume, so that the requirements of the logical volume are met.
Optionally, after the determining whether the first target logical volume exists, the method further includes:
and if a plurality of first target logical volumes exist, sequentially selecting the first target logical volumes from the plurality of first target logical volumes according to the order of borrowing time from the early to the late, and distributing bandwidth resources of the selected first target logical volumes to the logical volumes until the requirements of the logical volumes are met or the unselected first target logical volumes do not exist.
Optionally, after the allocating the bandwidth resource of the preset proportion and the bandwidth resource of the second target logical volume to the logical volume, or allocating the bandwidth resource of the preset proportion, the bandwidth resource of the first target logical volume and the bandwidth resource of the second target logical volume to the logical volume, the method further includes:
generating a borrowed record between the logical volume and the second target logical volume;
correspondingly, after the allocating the bandwidth resource of the preset proportion and the bandwidth resource of the first target logical volume to the logical volume, the method further includes:
and marketing the borrowing record between the logical volume and the first target logical volume.
Optionally, after the generating the borrowed record between the logical volume and the second target logical volume, the method further includes:
and when the existence time of the borrowing record exceeds T unit time, the borrowing record is subjected to sales.
Optionally, when allocating bandwidth resources to the logical volumes that are to occupy bandwidth resources, the method further includes:
obtaining a target queue, and determining a logic volume positioned at the head of the target queue as a logic volume of the next bandwidth resource to be allocated, wherein the target queue is used for recording the logic volume of the bandwidth resource to be occupied, and the arrangement sequence of the logic volumes in the target queue is as follows: the logical volume borrowed by the bandwidth resource is in front, and the logical volume waiting to occupy the bandwidth resource is in back due to own demand.
Optionally, if there are a plurality of the logic volumes borrowed by bandwidth resources or a plurality of the logic volumes waiting to occupy bandwidth resources due to own demand, the arrangement order of the logic volumes in the target queue is as follows: the longer and the earlier the time the bandwidth resource was not occupied in the past T units of time.
In a second aspect, the present application provides a bandwidth resource allocation apparatus of a storage system, including:
the proportion setting module is used for setting corresponding preset proportion for each logic volume of the storage system;
the to-be-allocated module is used for determining bandwidth resources of the preset proportion which are expected to be allocated to each logic volume according to the preset proportion and available bandwidth resources of the storage system in unit time;
the judging module is used for judging whether the bandwidth resources with the preset proportion meet the requirements of the logic volume or not when the bandwidth resources are allocated to the logic volume with the bandwidth resources to be occupied;
the first allocation module is used for allocating the bandwidth resources with the preset proportion to the logic volume when the bandwidth resources with the preset proportion meet the requirements of the logic volume;
and the second allocation module is used for allocating the bandwidth resources with the preset proportion and the bandwidth resources of the target logic volume to the logic volume to meet the requirements of the logic volume when the bandwidth resources with the preset proportion do not meet the requirements of the logic volume, wherein the target logic volume is a logic volume borrowed by the bandwidth resources of the logic volume within the past T unit times and/or a logic volume which does not occupy the bandwidth resources for the longest time within the past T unit times.
In a third aspect, the present application provides a bandwidth resource allocation apparatus of a storage system, including:
a memory: for storing a computer program;
a processor: for executing the computer program to implement the bandwidth resource allocation method of the storage system as described above.
In a fourth aspect, the present application provides a readable storage medium for storing a computer program for implementing a bandwidth resource allocation method of a storage system as described above when executed by a processor.
The bandwidth resource allocation method of the storage system provided by the application comprises the following steps: setting a corresponding preset proportion for each logic volume of the storage system; determining bandwidth resources of preset proportion which are preset to be distributed to each logic volume according to the preset proportion and available bandwidth resources of the storage system in unit time; when bandwidth resources are allocated to the logic volume of the bandwidth resources to be occupied, judging whether the bandwidth resources with preset proportion meet the requirements of the logic volume or not; if yes, distributing bandwidth resources with preset proportion to the logic volume; if the bandwidth resources are not met, the bandwidth resources of the preset proportion and the bandwidth resources of the target logic volume are allocated for the logic volume to meet the requirements of the logic volume, wherein the target logic volume is the logic volume borrowed by the bandwidth resources of the logic volume in the past T unit times and/or the logic volume which does not occupy the bandwidth resources for the longest time in the past T unit times.
Therefore, the method effectively allocates the bandwidth resources of the storage system among the plurality of logic volumes, firstly, a corresponding preset proportion is set for each logic volume, when the bandwidth resources are allocated, if the requirements of the logic volumes are large, the logic volumes are guaranteed to obtain the bandwidth resources not lower than the preset proportion no matter the system is busy or idle, otherwise, if the requirements of the logic volumes are smaller or no, the idle bandwidth resources are allocated to other logic volumes with requirements, and finally, the purpose of allocating the available bandwidth resources to the logic volumes with actual requirements as much as possible is achieved, so that the logic volumes with requirements can obtain enough bandwidth resources, meanwhile, the utilization rate of the bandwidth resources of the storage system is obviously improved, and the idle of the bandwidth resources of the system is reduced.
In addition, the application further provides a bandwidth resource allocation device, a device and a readable storage medium of the storage system, and the technical effects of the device and the device correspond to those of the method, and are not repeated here.
Drawings
For a clearer description of embodiments of the present application or of the prior art, the drawings that are used in the description of the embodiments or of the prior art will be briefly described, it being apparent that the drawings in the description that follow are only some embodiments of the present application, and that other drawings may be obtained from these drawings by a person of ordinary skill in the art without inventive effort.
Fig. 1 is a flowchart of a first embodiment of a bandwidth resource allocation method of a storage system provided in the present application;
fig. 2 is a flowchart of a second embodiment of a bandwidth resource allocation method of a storage system provided in the present application;
FIG. 3 is a functional block diagram of an embodiment of a bandwidth resource allocation apparatus of a storage system provided herein;
fig. 4 is a schematic structural diagram of an embodiment of a bandwidth resource allocation device of a storage system provided in the present application.
Detailed Description
In order to provide a better understanding of the present application, those skilled in the art will now make further details of the present application with reference to the drawings and detailed description. It will be apparent that the described embodiments are only some, but not all, of the embodiments of the present application. All other embodiments, which can be made by one of ordinary skill in the art without undue burden from the present disclosure, are within the scope of the present disclosure.
The core of the application is to provide a bandwidth resource allocation method, a device, equipment and a readable storage medium of a storage system, which can ensure that on one hand, a logic volume with large demand can be allocated to bandwidth resources not lower than a preset proportion, and on the other hand, idle bandwidth resources of a logic volume with smaller demand or no demand are allocated to a logic volume with actual demand, so that the system bandwidth utilization rate is improved as much as possible, and the waste of the system bandwidth resources is avoided.
In the following, an embodiment of a bandwidth resource allocation method of a storage system provided in the present application is described, with reference to fig. 1, where the embodiment includes:
s11, setting corresponding preset proportion for each logic volume of the storage system;
s12, determining bandwidth resources of preset proportion which are preset to be distributed to each logic volume according to the preset proportion and available bandwidth resources of the storage system in unit time;
s13, when bandwidth resources are allocated to the logic volume of the bandwidth resources to be occupied, judging whether the bandwidth resources with preset proportion meet the requirements of the logic volume; if yes, entering S14, otherwise entering S15;
s14, distributing bandwidth resources with preset proportion for the logic volume;
s15, distributing bandwidth resources of a preset proportion and bandwidth resources of a target logic volume to the logic volume to meet the demands of the logic volume, wherein the target logic volume is a logic volume borrowed by the bandwidth resources of the logic volume within the past T unit times and/or a logic volume which does not occupy the bandwidth resources for the longest time within the past T unit times.
The present embodiment abstracts bandwidth resource allocation, and considers that a storage system can only provide a certain amount of bandwidth resources in a unit time, and allocates bandwidth resources in a unit time for a logical volume each time. The method comprises the steps of firstly setting preset proportion (one-to-one correspondence between the logic volumes and the preset proportion) for each logic volume of a storage system according to experience, then determining available bandwidth resources of the storage system in unit time, and further determining bandwidth resources of the preset proportion which are expected to be allocated to each logic volume, wherein the bandwidth resources are bandwidth resources which can be occupied by the logic volume in unit time. It should be noted that here, only the allocation is to be made, and the bandwidth resources are not actually allocated to the logical volumes.
When the bandwidth resources are really allocated, firstly determining a logic volume of the bandwidth resources to be occupied, then determining the bandwidth resources with preset proportion corresponding to the logic volume and the requirements of the logic volume, judging whether the bandwidth resources with preset proportion meet the requirements of the logic volume, and if so, allocating the bandwidth resources with preset proportion to the logic volume; if the bandwidth resource is not satisfied, bandwidth resources of the target logical volume are allocated to the logical volume in addition to the bandwidth resources of the preset proportion to the logical volume so as to satisfy the requirement of the logical volume. In order to ensure the maximization of the utilization rate of the bandwidth resource, the target logical volume in this embodiment is specifically: the logical volumes that borrowed the logical tape bandwidth resources in the past T units of time and/or the logical volumes that did not occupy the bandwidth resources for the longest time in the past T units of time. The value of T can be set or adjusted according to the actual requirement, which is not limited in this embodiment.
Therefore, the embodiment introduces the concepts of bandwidth resource borrowing, bandwidth resource returning and borrowing expiration. The borrowing of bandwidth resources refers to that the embodiment allows the logic volume to borrow bandwidth resources of other logic volumes when the self requirements are not satisfied; the returning of the bandwidth resource refers to returning the bandwidth resource to the borrowed party which cannot meet the requirement, and it is worth mentioning that the bandwidth resource returned here is not the same bandwidth resource as the bandwidth resource which is borrowed before because the bandwidth resource has a time attribute; the expiration of borrowing refers to that once the borrowing relation exceeds T unit time, the borrowing record is subjected to sales, and the borrowing relation is considered to be absent, so that even if the demand of a borrowed party is not satisfied, bandwidth resources cannot be preferentially acquired from the borrowed party.
As a specific implementation, a borrowing record may be generated when bandwidth resource borrowing occurs; when the bandwidth resource returns, the borrowing record is subjected to sales; and when the existence time of the borrowed record exceeds T unit time, the borrowed record is also subjected to sales.
In this embodiment, only the logical volume occupies the bandwidth resource of the storage system, and in practice, the resource allocation logic of this embodiment may be further applied to other scenarios, such as the logical volume occupies the IOPS (Input/Output Operations Per Second, number of output/output operations per second) resource of the storage system, the object read/write occupies the bandwidth resource of the storage system, and the object read/write occupies the IOPS resource of the storage system.
According to the bandwidth resource allocation method of the storage system, the bandwidth resources of the storage system are effectively allocated among the plurality of logic volumes, firstly, the corresponding preset proportion is set for each logic volume, when the bandwidth resources are allocated, if the requirements of the logic volumes are large, the logic volumes are guaranteed to obtain the bandwidth resources not lower than the preset proportion no matter the system is busy or idle, otherwise, if the requirements of the logic volumes are small or no, the idle bandwidth resources are allocated to other logic volumes with requirements, and finally, the purpose of allocating the available bandwidth resources to the logic volumes with actual requirements as much as possible is achieved, the utilization rate of the bandwidth resources of the storage system can be improved obviously, and the idle of the bandwidth resources of the system is reduced.
The second embodiment of the bandwidth resource allocation method of the storage system provided by the present application is implemented based on the first embodiment, and is expanded to a certain extent based on the first embodiment.
Specifically, when allocating bandwidth resources to logical volumes, the second embodiment optimizes the allocation order of each logical volume.
Referring to fig. 2, the second embodiment specifically includes:
s201, setting corresponding preset proportion for each logic volume of a storage system;
s202, determining bandwidth resources of preset proportion which are preset to be distributed to each logic volume according to preset proportion and available bandwidth resources of a storage system in unit time;
s203, acquiring a target queue, and determining a logic volume positioned at the head of the target queue as a logic volume of the next bandwidth resource to be allocated;
the target queue is used for recording a logic volume of bandwidth resources to be occupied, and the arrangement sequence of the logic volume in the target queue is as follows: the logical volume borrowed by the bandwidth resource is in front, and the logical volume waiting to occupy the bandwidth resource is in back due to own demand.
If there are multiple logical volumes borrowed by bandwidth resources or multiple logical volumes waiting to occupy bandwidth resources due to their own needs, the order of arrangement of the logical volumes in the target queue is: the longer and the earlier the time the bandwidth resource was not occupied in the past T units of time.
S204, judging whether bandwidth resources with preset proportion meet the requirement of the logic volume or not; if yes, go to S205, otherwise go to S206;
s205, distributing bandwidth resources with preset proportion for the logic volume;
s206, distributing bandwidth resources with preset proportion for the logical volumes, and judging whether a first target logical volume exists, wherein the first target logical volume is a logical volume borrowed by the bandwidth resources of the logical volumes in the past T unit time; if so, go to S207, otherwise go to S209;
s207, further distributing bandwidth resources of a first target logical volume to the logical volume, and selling borrowed records between the logical volume and the first target logical volume;
specifically, if the number of the first target logical volumes is one, allocating bandwidth resources of the first target logical volumes to the logical volumes; and if the number of the first target logical volumes is a plurality of, sequentially selecting the first target logical volumes from the plurality of first target logical volumes according to the sequence from the early to the late of borrowing time, and distributing the bandwidth resources of the selected first target logical volumes to the logical volumes until the requirements of the logical volumes are met or the unselected first target logical volumes do not exist.
S208, judging whether the current requirement of the logical volume is met, if yes, not processing, otherwise, entering S209;
s209, judging whether a second target logical volume exists, wherein the second target logical volume is a logical volume which does not occupy bandwidth resources for the longest time in the past T unit time; if yes, entering S210, if not, not processing;
s210, further distributing bandwidth resources of a second target logical volume to the logical volume, and generating borrowed records between the logical volume and the second target logical volume;
s211, when the borrowing record is not sold for more than T unit time, the borrowing record is sold.
Based on the above-described second embodiment, the implementation procedure of this embodiment will be described below taking practical application as an example.
Assuming that the available bandwidth resource in unit time of the storage system is M, the available bandwidth resource needs to be occupied by N logical volumes according to a preset proportion, and M is to be allocated to each logical volume according to the preset proportion, the bandwidth resources expected to be occupied in unit time of each logical volume are M1, M2, … and mn respectively.
When the bandwidth resources are allocated to the logic volume, if the bandwidth resource quantity with the preset proportion can meet the requirement of the logic volume, only the bandwidth resource quantity with the preset proportion is allocated to the logic volume, and if the bandwidth resource quantity with the preset proportion cannot meet the requirement of the logic volume, the bandwidth resources of the target logic volume are allocated in addition to the bandwidth resources with the preset proportion. Specifically, bandwidth resources are preferentially obtained from the logical volumes borrowed by the logical bandwidth resources, when a plurality of logical volumes borrowed by the logical bandwidth resources exist, bandwidth resources are sequentially obtained from the logical volumes with borrowing relations at the earliest, and if the requirements of the logical volumes cannot be met, resources are borrowed from the logical volumes with bandwidth resources occupying the longest time within the past T unit times.
When the logical volume obtains the returned bandwidth resource from the borrower, the corresponding borrowing record needs to be billed, and the billing is started from the borrowing which occurs earliest in T unit time. When the bandwidth resource borrowing occurs, only the borrowing occurring in T unit time is calculated, and the borrowing exceeding T unit time is directly posted.
When a plurality of logic volumes wait for occupying bandwidth resources, logic volumes borrowed by other logic volumes are preferentially selected for allocation, if a plurality of logic volumes borrowed by bandwidth resources exist, logic volumes which do not occupy bandwidth for the longest time in the past T unit time are selected for allocation, and if no logic volumes borrowed by bandwidth resources exist, logic volumes which do not occupy bandwidth for the longest time in the past T unit time are selected for allocation.
Once the logic volume occupies the bandwidth resource, or the logic volume which has the borrowing relation borrows the bandwidth resource, the logic volume is calculated as the occupied bandwidth resource, and the time when the bandwidth resource occupies is the last occupied time point of the bandwidth resource.
It should be noted that, when the logic volume needs to occupy the bandwidth resource, the maximum amount of the bandwidth resource occupied by a single time is the product of the T unit times and the allocation amount of the unit time, and in this way, the situation that no new allocation scheduling process exists for a long time due to excessive bandwidth resource occupied by a single time is avoided.
The bandwidth resource allocation device of the storage system provided in the embodiments of the present application is described below, and the bandwidth resource allocation device of the storage system described below and the bandwidth resource allocation method of the storage system described above may be referred to correspondingly.
The bandwidth resource allocation device of the storage system of this embodiment, as shown in fig. 3, includes:
a proportion setting module 31, configured to set a corresponding preset proportion for each logical volume of the storage system;
a to-be-allocated module 32, configured to determine, according to the preset proportion and the available bandwidth resources of the storage system in a unit time, a bandwidth resource of the preset proportion that is predicted to be allocated to each of the logical volumes;
a judging module 33, configured to judge whether the bandwidth resource of the preset proportion meets the requirement of the logical volume when allocating the bandwidth resource to the logical volume of the bandwidth resource to be occupied;
a first allocation module 34, configured to allocate the bandwidth resource of the preset proportion to the logical volume when the bandwidth resource of the preset proportion meets the requirement of the logical volume;
and the second allocation module 35 is configured to allocate, for the logical volume, the bandwidth resource of the preset proportion and the bandwidth resource of the target logical volume to meet the requirement of the logical volume when the bandwidth resource of the preset proportion does not meet the requirement of the logical volume, where the target logical volume is a logical volume borrowed by the bandwidth resource of the logical volume in the past T units of time and/or a logical volume that does not occupy the bandwidth resource for the longest time in the past T units of time.
The bandwidth resource allocation device of the storage system of this embodiment is used to implement the foregoing bandwidth resource allocation method of the storage system, and thus, the specific implementation of the device can be seen from the foregoing example portions of the bandwidth resource allocation method of the storage system, for example, the proportion setting module 31, the to-be-allocated module 32, the judging module 33, the first allocating module 34, and the second allocating module 35, which are respectively used to implement steps S11, S12, S13, S14, and S15 in the bandwidth resource allocation method of the storage system. Therefore, the detailed description will be omitted herein with reference to the accompanying drawings, which illustrate examples of the respective parts.
In addition, since the bandwidth resource allocation device of the storage system of the present embodiment is used to implement the foregoing method for allocating bandwidth resources of the storage system, the roles of the bandwidth resource allocation device of the present embodiment correspond to those of the foregoing method, and will not be described herein.
In addition, the application further provides a bandwidth resource allocation device of the storage system, as shown in fig. 4, including:
memory 100: for storing a computer program;
processor 200: for executing the computer program to implement the bandwidth resource allocation method of the storage system as described above.
Finally, the present application provides a readable storage medium for storing a computer program for implementing a bandwidth resource allocation method of a storage system as described above when executed by a processor.
In this specification, each embodiment is described in a progressive manner, and each embodiment is mainly described in a different point from other embodiments, so that the same or similar parts between the embodiments are referred to each other. For the device disclosed in the embodiment, since it corresponds to the method disclosed in the embodiment, the description is relatively simple, and the relevant points refer to the description of the method section.
The steps of a method or algorithm described in connection with the embodiments disclosed herein may be embodied directly in hardware, in a software module executed by a processor, or in a combination of the two. The software modules may be disposed in Random Access Memory (RAM), memory, read Only Memory (ROM), electrically programmable ROM, electrically erasable programmable ROM, registers, hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art.
The foregoing has outlined rather broadly the more detailed description of the present application and the principles and embodiments of the present application have been presented in terms of specific examples, which are provided herein to assist in the understanding of the method and core concepts of the present application; meanwhile, as those skilled in the art will have modifications in the specific embodiments and application scope in accordance with the ideas of the present application, the present description should not be construed as limiting the present application in view of the above.

Claims (7)

1. A method for allocating bandwidth resources of a storage system, comprising:
setting a corresponding preset proportion for each logic volume of the storage system;
determining bandwidth resources of the preset proportion, which are preset to be distributed to each logic volume, according to the preset proportion and available bandwidth resources of the storage system in unit time;
when bandwidth resources are allocated to the logic volume of the bandwidth resources to be occupied, judging whether the bandwidth resources with the preset proportion meet the requirements of the logic volume or not;
if yes, distributing the bandwidth resources with the preset proportion to the logic volume;
if the bandwidth resources do not meet the requirements, allocating the bandwidth resources of the preset proportion and the bandwidth resources of a target logic volume to the logic volume so as to meet the requirements of the logic volume, wherein the target logic volume is a logic volume borrowed by the bandwidth resources of the logic volume within the past T unit times and/or a logic volume which does not occupy the bandwidth resources for the longest time within the past T unit times;
the bandwidth resource allocation method of the storage system further comprises the following steps: when the existence time of the borrowing record exceeds T unit time, sales are conducted on the borrowing record; the borrowing record is a borrowing record between the logical volume and a second target logical volume; the second target logical volume is a logical volume which does not occupy bandwidth resources for the longest time in the past T unit time;
wherein when allocating bandwidth resources for the logical volumes of bandwidth resources to be occupied, the method further comprises:
obtaining a target queue, and determining a logic volume positioned at the head of the target queue as a logic volume of the next bandwidth resource to be allocated, wherein the target queue is used for recording the logic volume of the bandwidth resource to be occupied, and the arrangement sequence of the logic volumes in the target queue is as follows: the logic volume borrowed by the bandwidth resource is in front, and the logic volume waiting to occupy the bandwidth resource is in back due to the self demand;
if there are a plurality of logic volumes borrowed by bandwidth resources or a plurality of logic volumes waiting for occupying bandwidth resources due to own demand, the arrangement order of the logic volumes in the target queue is as follows: the longer and the earlier the time the bandwidth resource was not occupied in the past T units of time.
2. The method of claim 1, wherein allocating the bandwidth resource of the preset proportion and the bandwidth resource of the target logical volume to the logical volume to meet the requirement of the logical volume, wherein the target logical volume is a logical volume borrowed by the bandwidth resource of the logical volume in the past T units of time and/or a logical volume that does not occupy the bandwidth resource for the longest time in the past T units of time, includes:
judging whether a first target logical volume exists, wherein the first target logical volume is a logical volume borrowed by the logical tape width resource in the past T unit time;
if a first target logical volume exists, allocating the bandwidth resources with the preset proportion and the bandwidth resources of the first target logical volume to the logical volume so as to meet the requirements of the logical volume;
if the first target logical volume does not exist or the bandwidth resources of the preset proportion and the bandwidth resources of the first target logical volume cannot meet the requirements of the logical volume, judging whether a second target logical volume exists, wherein the second target logical volume is the logical volume which does not occupy the bandwidth resources for the longest time in the past T unit time;
if the second target logical volume exists, the bandwidth resources with the preset proportion and the bandwidth resources of the second target logical volume are allocated for the logical volume, or the bandwidth resources with the preset proportion, the bandwidth resources of the first target logical volume and the bandwidth resources of the second target logical volume are allocated for the logical volume, so that the requirements of the logical volume are met.
3. The method of claim 2, further comprising, after said determining whether the first target logical volume exists:
and if a plurality of first target logical volumes exist, sequentially selecting the first target logical volumes from the plurality of first target logical volumes according to the order of borrowing time from the early to the late, and distributing bandwidth resources of the selected first target logical volumes to the logical volumes until the requirements of the logical volumes are met or the unselected first target logical volumes do not exist.
4. The method of claim 2, further comprising, after the allocating the bandwidth resources of the preset proportion and the bandwidth resources of the second target logical volume for the logical volume or allocating the bandwidth resources of the preset proportion, the bandwidth resources of the first target logical volume, and the bandwidth resources of the second target logical volume for the logical volume:
generating a borrowed record between the logical volume and the second target logical volume;
correspondingly, after the allocating the bandwidth resource of the preset proportion and the bandwidth resource of the first target logical volume to the logical volume, the method further includes:
and marketing the borrowing record between the logical volume and the first target logical volume.
5. A bandwidth resource allocation apparatus of a storage system, comprising:
the proportion setting module is used for setting corresponding preset proportion for each logic volume of the storage system;
the to-be-allocated module is used for determining bandwidth resources of the preset proportion which are expected to be allocated to each logic volume according to the preset proportion and available bandwidth resources of the storage system in unit time;
the judging module is used for judging whether the bandwidth resources with the preset proportion meet the requirements of the logic volume or not when the bandwidth resources are allocated to the logic volume with the bandwidth resources to be occupied;
the first allocation module is used for allocating the bandwidth resources with the preset proportion to the logic volume when the bandwidth resources with the preset proportion meet the requirements of the logic volume;
the second allocation module is used for allocating the bandwidth resources with the preset proportion and the bandwidth resources of the target logic volume to the logic volume to meet the requirements of the logic volume when the bandwidth resources with the preset proportion do not meet the requirements of the logic volume, wherein the target logic volume is a logic volume borrowed by the bandwidth resources of the logic volume within the past T unit times and/or a logic volume which does not occupy the bandwidth resources for the longest time within the past T unit times;
the bandwidth resource allocation device of the storage system is further used for: when the existence time of the borrowing record exceeds T unit time, sales are conducted on the borrowing record; the borrowing record is a borrowing record between the logical volume and a second target logical volume; the second target logical volume is a logical volume which does not occupy bandwidth resources for the longest time in the past T unit time;
the bandwidth resource allocation device of the storage system is further used for: obtaining a target queue, and determining a logic volume positioned at the head of the target queue as a logic volume of the next bandwidth resource to be allocated, wherein the target queue is used for recording the logic volume of the bandwidth resource to be occupied, and the arrangement sequence of the logic volumes in the target queue is as follows: the logic volume borrowed by the bandwidth resource is in front, and the logic volume waiting to occupy the bandwidth resource is in back due to the self demand;
if there are a plurality of logic volumes borrowed by bandwidth resources or a plurality of logic volumes waiting for occupying bandwidth resources due to own demand, the arrangement order of the logic volumes in the target queue is as follows: the longer and the earlier the time the bandwidth resource was not occupied in the past T units of time.
6. A bandwidth resource allocation apparatus of a storage system, comprising:
a memory: for storing a computer program;
a processor: for executing the computer program to implement the bandwidth resource allocation method of a storage system according to any of claims 1 to 4.
7. A readable storage medium for storing a computer program which, when executed by a processor, is adapted to implement the bandwidth resource allocation method of a storage system according to any one of claims 1 to 4.
CN202110800341.7A 2021-07-15 2021-07-15 Bandwidth resource allocation method, device and equipment of storage system and storage medium Active CN113672168B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110800341.7A CN113672168B (en) 2021-07-15 2021-07-15 Bandwidth resource allocation method, device and equipment of storage system and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110800341.7A CN113672168B (en) 2021-07-15 2021-07-15 Bandwidth resource allocation method, device and equipment of storage system and storage medium

Publications (2)

Publication Number Publication Date
CN113672168A CN113672168A (en) 2021-11-19
CN113672168B true CN113672168B (en) 2024-02-13

Family

ID=78539218

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110800341.7A Active CN113672168B (en) 2021-07-15 2021-07-15 Bandwidth resource allocation method, device and equipment of storage system and storage medium

Country Status (1)

Country Link
CN (1) CN113672168B (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101106417A (en) * 2007-08-20 2008-01-16 北京航空航天大学 A satellite call access control method
CN106533982A (en) * 2016-11-14 2017-03-22 西安电子科技大学 Dynamic queue scheduling device and method based on bandwidth borrowing
CN109767057A (en) * 2018-11-28 2019-05-17 北京三快在线科技有限公司 Resource allocation methods, device, electronic equipment and storage medium
WO2019137320A1 (en) * 2018-01-09 2019-07-18 阿里巴巴集团控股有限公司 Resource scheduling method, apparatus, device and system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101106417A (en) * 2007-08-20 2008-01-16 北京航空航天大学 A satellite call access control method
CN106533982A (en) * 2016-11-14 2017-03-22 西安电子科技大学 Dynamic queue scheduling device and method based on bandwidth borrowing
WO2019137320A1 (en) * 2018-01-09 2019-07-18 阿里巴巴集团控股有限公司 Resource scheduling method, apparatus, device and system
CN109767057A (en) * 2018-11-28 2019-05-17 北京三快在线科技有限公司 Resource allocation methods, device, electronic equipment and storage medium

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
一种改进的无线通信网络带宽分配方法;张文波;谭小波;;宇航学报(12);全文 *
基于逻辑卷副本整合的节能存储技术研究;王峰;刘洋;;河南师范大学学报(自然科学版)(03);全文 *

Also Published As

Publication number Publication date
CN113672168A (en) 2021-11-19

Similar Documents

Publication Publication Date Title
US9274844B2 (en) Priority-based management of system load level
CN109976917B (en) Load scheduling method, device, load scheduler, storage medium and system
CN1728118B (en) Resource allocation management method and apparatus
WO2017166643A1 (en) Method and device for quantifying task resources
CN105159782A (en) Cloud host based method and apparatus for allocating resources to orders
JP2016521417A (en) Method and device for scheduling I / O ports of virtual disks
US9223373B2 (en) Power arbitration for storage devices
US10884667B2 (en) Storage controller and IO request processing method
CN111694515A (en) Zone writing distribution method and system based on ZNS solid state disk
CN108241535B (en) Resource management method and device and server equipment
CN111104219A (en) Binding method, device, equipment and storage medium of virtual core and physical core
CN110688256A (en) Metadata power-on recovery method and device, electronic equipment and storage medium
CN112311590A (en) Cloud service lease optimization method, device, equipment and medium
CN109756429A (en) Bandwidth allocation methods and equipment
CN117251275B (en) Multi-application asynchronous I/O request scheduling method, system, equipment and medium
CN113672168B (en) Bandwidth resource allocation method, device and equipment of storage system and storage medium
CN108876446B (en) Consumption resource allocation method, device and equipment
CN110096352A (en) Process management method, device and computer readable storage medium
WO2017133421A1 (en) Method and device for sharing resources among multiple tenants
CN114489463B (en) Method and device for dynamically adjusting QOS of storage volume and computing equipment
CN113742059B (en) Task allocation method, device, computer equipment and storage medium
CN115080253A (en) GPU task allocation method and device, electronic equipment and storage medium
CN110750330A (en) Virtual machine creating method, system, electronic equipment and storage medium
CN117453378B (en) Method, device, equipment and medium for scheduling I/O requests among multiple application programs
CN111831397B (en) Method, device, equipment and storage medium for processing IO request

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant