CN111930299B - Method for distributing storage units and related equipment - Google Patents
Method for distributing storage units and related equipment Download PDFInfo
- Publication number
- CN111930299B CN111930299B CN202010573182.7A CN202010573182A CN111930299B CN 111930299 B CN111930299 B CN 111930299B CN 202010573182 A CN202010573182 A CN 202010573182A CN 111930299 B CN111930299 B CN 111930299B
- Authority
- CN
- China
- Prior art keywords
- storage
- resource pool
- target
- storage unit
- requirement
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 37
- 238000012216 screening Methods 0.000 claims abstract description 18
- 238000004590 computer program Methods 0.000 claims description 6
- 238000004364 calculation method Methods 0.000 claims description 3
- 238000001914 filtration Methods 0.000 claims 1
- BASFCYQUMIYNBI-UHFFFAOYSA-N platinum Chemical compound [Pt] BASFCYQUMIYNBI-UHFFFAOYSA-N 0.000 description 6
- BQCADISMDOOEFD-UHFFFAOYSA-N Silver Chemical compound [Ag] BQCADISMDOOEFD-UHFFFAOYSA-N 0.000 description 3
- PCHJSUWPFVWCPO-UHFFFAOYSA-N gold Chemical compound [Au] PCHJSUWPFVWCPO-UHFFFAOYSA-N 0.000 description 3
- 229910052737 gold Inorganic materials 0.000 description 3
- 239000010931 gold Substances 0.000 description 3
- 229910052697 platinum Inorganic materials 0.000 description 3
- 229910052709 silver Inorganic materials 0.000 description 3
- 239000004332 silver Substances 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000002360 explosive Substances 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000013468 resource allocation Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0608—Saving storage space on storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0631—Configuration or reconfiguration of storage systems by allocating resources to storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
The invention provides a method for distributing storage units and related equipment, and relates to the field of storage resource distribution. The method comprises the following steps: obtaining storage demand information of a user, wherein the storage demand information comprises: host information, capacity requirements, bandwidth requirements, IOPS requirements of the user host; determining a target storage resource pool according to the storage demand information; and screening a first storage unit set from available storage units in the target resource pool according to the capacity requirement, the bandwidth requirement, the IOPS requirement and the storage parameters of the storage units in the target resource pool, wherein the storage parameters of the storage units comprise: capacity, bandwidth, IOPS; determining a target storage unit according to the storage parameters of the storage units in the first storage unit set and the root mean square error of the storage requirement; and distributing the target storage unit to the user. The invention can distribute the optimal target storage unit meeting the user demands for the user, improve the utilization rate of storage resources and reduce the storage cost.
Description
Technical Field
The present invention relates to the field of storage resource allocation, and in particular, to a method for allocating storage units and related devices.
Background
With the explosive growth of data, how to distribute reasonable storage for mass data becomes a research hotspot in the field of data storage.
In the prior art, since the storage allocation mechanism is not perfected, the current method for allocating the storage units is to sequentially determine whether the remaining capacity of the storage units in the storage resource pool meets the storage requirement after the storage requirement of the user is acquired, and allocate the first storage unit meeting the storage requirement as a target storage unit to the user.
The method for distributing the target storage units is serial execution logic, which can cause the idling of storage resources, the utilization rate of the storage resources is low, and the storage cost of enterprises is high.
Disclosure of Invention
The invention provides a method for distributing storage units and related equipment, which are used for solving the problems of low utilization rate of storage resources and high operation and maintenance cost when the storage units are distributed in the prior art.
In a first aspect, an embodiment of the present invention provides a method for allocating a storage unit, where the method includes:
obtaining storage demand information of a user, wherein the storage demand information comprises: host information, capacity requirements, bandwidth requirements, IOPS (Input/Output Operations Per Second, number of read/write operations per second) requirements of the user host;
determining a target storage resource pool according to the storage demand information;
and screening a first storage unit set from available storage units in the target resource pool according to the capacity requirement, the bandwidth requirement, the IOPS requirement and the storage parameters of the storage units in the target resource pool, wherein the storage parameters of the storage units comprise: capacity, bandwidth, IOPS;
determining a target storage unit according to the storage parameters of the storage units in the first storage unit set and the root mean square error of the storage requirement;
and distributing the target storage unit to the user.
In one implementation manner of this embodiment, the determining the target storage resource pool according to the storage requirement information includes:
determining a required storage resource pool level according to the capacity requirement, the bandwidth requirement and the IOPS requirement;
and determining a target storage resource pool corresponding to the storage resource pool level from the storage resource pools of the same storage network with the user host according to the host information.
In one implementation of this embodiment,
the storage requirement information further includes: a desired storage system;
the determining the target storage resource pool according to the storage demand information further includes:
and determining a target storage resource pool from the storage resource pools which are positioned in the same storage network with the user host according to the required storage system and storage resource pool level.
In one implementation manner of this embodiment, the screening the first storage unit set from the available storage units in the target resource pool according to the capacity requirement, the bandwidth requirement, the IOPS requirement, and the storage parameters of the storage units in the target resource pool includes:
acquiring storage parameters of a storage unit in the target storage resource pool from a storage resource pool database;
screening storage units meeting a third-order judgment model from available storage units in the target storage resource pool according to the capacity requirement, the bandwidth requirement, the IOPS requirement and the storage parameters of the storage units in the target resource pool;
wherein, the third-order judgment model is as follows:
wherein X is user Representing capacity demand, Y user Indicating bandwidth demand, Z user Indicating IOPS demand, X dec Representing the capacity decision factor, Y dec Representing bandwidth decision factor, Z dec Representing IOPS decision factor, X m Representing the capacity of the mth available storage unit in the target storage resource pool, Y m Representing bandwidth of an mth available storage unit in a target storage resource pool, Z m IOPS, K representing the mth available storage unit in the target storage resource pool m Representing the number of ports in an available port group of an mth available storage unit in the target storage resource pool;
and marking the storage units meeting the third-order judgment model as first storage units.
In one implementation manner of this embodiment, the determining the target storage unit according to the root mean square error of the storage parameter of the storage unit in the first storage unit set and the storage requirement includes:
calculating root mean square errors of storage parameters of each storage unit in the first storage unit set and the storage requirements through the following formulas:
wherein X is user Representing capacity demand, Y user Indicating bandwidth demand, Z user Indicating IOPS demand, X j,sec Representing the capacity of the jth memory cell in the first set of memory cells, Y j,sec Representing the bandwidth, Z, of the jth memory cell in the first set of memory cells j,sec IOPS, K representing the jth memory cell in the first set of memory cells j,sec Representing the number of ports in the available port group of the jth storage unit in the first storage unit set;
and determining the storage unit with the minimum root mean square error from the first storage unit set according to the root mean square error of each storage unit as a target storage unit.
In another aspect, an embodiment of the present invention provides an apparatus for allocating a storage unit, where the apparatus includes:
the storage requirement acquisition module is used for acquiring storage requirement information of a user, and the storage requirement information comprises: host information, capacity requirements, bandwidth requirements, IOPS requirements of the user host;
the target resource pool determining module is used for determining a target storage resource pool according to the storage demand information;
the first storage unit screening module is configured to screen a first storage unit set from available storage units in the target resource pool according to the capacity requirement, the bandwidth requirement, the IOPS requirement and storage parameters of the storage units in the target resource pool, where the storage parameters of the storage units include: capacity, bandwidth, IOPS of the storage unit;
the target storage unit determining module is used for determining a target storage unit according to the root mean square error of the storage parameters of the storage units in the first storage unit set and the storage requirement;
and the allocation module is used for allocating the target storage unit to the user.
In one implementation manner of this embodiment, the target resource pool determining module includes:
a storage resource pool level determining unit, configured to determine a required storage resource pool level according to the capacity requirement, the bandwidth requirement, and the IOPS requirement;
and the target storage resource pool determining unit is used for determining a target storage resource pool corresponding to the storage resource pool level from storage resource pools which are positioned in the same storage network with the user host according to the host information.
In one implementation of this embodiment,
the storage requirement information further includes: a desired storage system;
the target storage resource pool determining unit is further configured to determine a target storage resource pool from storage resource pools located in a same storage network as the user host according to the required storage system and storage resource pool levels.
In one implementation manner of this embodiment, the first storage unit screening module includes:
a storage parameter obtaining unit, configured to obtain a storage parameter of a storage unit in the target storage resource pool from a storage resource pool database;
a screening unit, configured to screen a storage unit that meets a third-order decision model from available storage units in the target storage resource pool according to the capacity requirement, the bandwidth requirement, the IOPS requirement, and the storage parameters of the storage units in the target storage resource pool,
wherein, the third-order judgment model is as follows:
wherein X is user Representing capacity demand, Y user Indicating bandwidth demand, Z user Indicating IOPS demand, X dec Representing the capacity decision factor, Y dec Representing bandwidth decision factor, Z dec Representing IOPS decision factor, X m Representing the capacity of the mth available storage unit in the target storage resource pool, Y m Representing bandwidth of an mth available storage unit in a target storage resource pool, Z m IOPS, K representing the mth available storage unit in the target storage resource pool m Representing the number of ports in an available port group of an mth available storage unit in the target storage resource pool;
and the marking unit is used for marking the storage unit meeting the third-order judgment model as a first storage unit.
In one implementation manner of this embodiment, the target storage unit determining module includes:
the root mean square error calculation unit is used for calculating the root mean square error of the storage parameters of each storage unit in the first storage unit and the storage requirement through the following formula respectively:
wherein X is user Representing capacity demand, Y user Indicating bandwidth demand, Z user Indicating the need for an IOPS,X j,sec representing the capacity of the jth memory cell in the first set of memory cells, Y j,sec Representing the bandwidth, Z, of the jth memory cell in the first set of memory cells j,sec IOPS, K representing the jth memory cell in the first set of memory cells j,sec Representing the number of ports in the available port group of the jth storage unit in the first storage unit set;
and the target storage unit determining unit is used for determining the storage unit with the minimum root mean square error from the first storage unit set according to the root mean square error of each storage unit as the target storage unit.
In yet another aspect, an embodiment of the present invention provides a computer storage medium having stored thereon computer instructions executable by a processor to implement the method for allocating storage units according to any of the above embodiments.
In yet another aspect, an embodiment of the present invention provides a computer apparatus, the computer including:
a memory having a computer program stored thereon;
a processor, configured to execute the computer program to implement the method for allocating storage units according to any one of the foregoing embodiments.
Compared with the prior art, the method for distributing the storage units and the related equipment provided by the embodiment of the invention have the following beneficial technical effects:
according to the method for allocating the storage units and the related equipment, the non-serial execution logic is adopted, the optimal target storage units meeting the user requirements are comprehensively determined according to the storage resource pool level, the storage capacity, the storage bandwidth, the storage IOPS and other parameters, and the optimal storage units are allocated to the users, so that the utilization rate of storage resources can be effectively improved, and the storage cost can be reduced.
Drawings
In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings that are needed in the embodiments will be briefly described below, and it is obvious that the drawings in the following description are only drawings of some embodiments of the present invention, and other drawings may be obtained according to these drawings without inventive effort for a person skilled in the art.
FIG. 1 illustrates a flow chart of a method of allocating storage units according to one embodiment of the invention;
fig. 2 shows a schematic diagram of an apparatus module for allocating memory cells according to another embodiment of the present invention.
Detailed Description
For the purpose of making the objects, technical solutions and advantages of the present invention more apparent, the following detailed description of the embodiments of the present invention will be given with reference to the accompanying drawings. It should be understood that the various examples described below are for illustration only and are not intended to limit the scope of the present invention.
FIG. 1 illustrates a method of allocating memory cells according to one embodiment of the invention. The method is used for distributing the optimal storage units meeting the user demands to the users and improving the utilization rate of storage resources. As shown in fig. 1, the method of allocating storage units according to the present embodiment includes processes S101 to S104, and each process will be described below.
S101: obtaining storage demand information of a user, wherein the storage demand information comprises: host information, capacity requirements, bandwidth requirements, IOPS requirements of the subscriber host.
The user host may be an application server that needs to use the storage space. The host information, capacity requirement, bandwidth requirement, and IOPS (Input/Output Operations Per Second, number of read/write operations per second) requirement of the user host may be extracted from the storage requirement submitted by the user.
For example, the IP address of the user host, the host number, and storage requirement information such as how much G (storage capacity unit) capacity the user needs, how much Mbps (bandwidth unit) bandwidth is needed, how many times per second (IOPS unit) IOPS are needed, etc. may be extracted from the storage requirements submitted by the user.
S102: and determining a target storage resource pool according to the storage demand information.
The storage resource pool is a container for storing storage space resources, and all storage space used by the application servers is from the storage resource pool. The storage resource pool can be divided into 3 levels according to different storage media, namely a platinum-level storage resource pool (a first-level storage resource pool), a gold-level storage resource pool (a second-level storage resource pool) and a silver-level storage resource pool (a third-level storage resource pool).
After the storage demand information is acquired, the storage resource pool level required by the user can be determined according to the capacity demand, the bandwidth demand and the IOPS demand of the user, and then the target storage resource pool corresponding to the storage resource pool level is determined from the storage resource pools located in the same storage network with the host of the user according to the host information of the user.
For example, determining that the storage resource pool level required by the user is a gold storage resource pool according to the user capacity requirement, the bandwidth requirement and the IOPS requirement, the gold storage resource pool can be selected as the target storage resource pool from the storage resource pools located in the same storage network as the user host.
In one implementation of this embodiment, a user host may be coupled to multiple storage systems. For example, the user host is connected to a plurality of storage systems such as SAN (Storage Area Network) storage system, NAS (Network AttachedStorage) storage system, and the like. In this case, in addition to obtaining host information, capacity requirement, bandwidth requirement, IOPS requirement of the user host from the storage requirement of the user, it is also possible to obtain required storage system information from the storage requirement of the user, and then obtain a storage resource pool which is located in the same storage network as the user host and corresponds to the storage resource pool level required by the user from the storage system required by the user.
For example, if the storage system required by the user is a SAN storage system and the storage resource pool level is a platinum-level storage resource pool, the SAN platinum-level storage resource pool located in the same storage network as the host of the user may be obtained from the SAN storage system as the target resource pool. If the storage system required by the user is a NAS storage system and the required storage resource pool level is a silver-level storage resource pool, the NAS silver-level storage resource pool located in the same storage network with the user host may be obtained from the NAS storage system as the target resource pool.
S103: and screening a first storage unit set from available storage units in the target resource pool according to the capacity requirement, the bandwidth requirement, the IOPS requirement and the storage parameters of the storage units in the target resource pool, wherein the storage parameters of the storage units comprise: capacity, bandwidth, IOPS of the storage unit.
Where a storage unit may be a logical disk created on storage, which may be identified by LUN (Logic UnitNumber), a storage unit can only be bound to one host. The storage units in the storage resource pool that are not bound to the host are available storage units.
In one implementation manner of this embodiment, storage parameter information such as capacity, bandwidth, IOPS and the like of all available storage units in the target storage resource pool may be obtained from the storage resource pool database, then storage parameters of the available storage units and storage requirements of users are input into a third-order decision model, whether the storage parameters of the available storage units meet the third-order decision model is determined, if so, the available storage units are marked as first storage units, and if not, marking is not performed. Therefore, the first storage unit set can be primarily screened out from the target resource pool, so that the screening range of the target storage units is reduced.
The third-order judgment model is as follows:
wherein X is user Representing capacity demand, Y user Indicating bandwidth demand, Z user Indicating IOPS requirements.
X dec Representing the capacity decision factor, Y dec Representing bandwidth decision factor, Z dec Representing IOPS decision factor, X dec ,Y dec ,Z dec The three decision factors are empirical values and can be obtained through multiple iterative tests.
X m Representing the mth available in the target storage resource poolCapacity of memory cell, Y m Representing bandwidth of an mth available storage unit in a target storage resource pool, Z m The IOPS representing the mth available storage unit in the target storage resource pool.
K m And representing the number of ports in the available port group of the mth available storage unit in the target storage resource pool. Wherein the ports in the available port group of the storage unit are used for communication between the user host and the storage unit.
S104: and determining a target storage unit according to the storage parameters of the storage units in the first storage unit set and the root mean square error of the storage requirement.
In one implementation manner of this embodiment, the root mean square error of the storage parameter and the storage requirement of each storage unit in the first storage unit set may be calculated respectively, and then the storage unit with the smallest root mean square error of the storage parameter and the storage requirement is used as the target storage unit.
The root mean square error of the storage parameters and the storage requirements of each storage unit can be calculated by the following formula:
wherein X is user Representing capacity demand, Y user Indicating bandwidth demand, Z user Indicating IOPS demand, X j,sec Representing the capacity of the jth memory cell in the first set of memory cells, Y j,sec Representing the bandwidth, Z, of the jth memory cell in the first set of memory cells j,sec IOPS, K representing the jth memory cell in the first set of memory cells j,sec Representing the number of ports in the available port group of the jth memory cell in the first set of memory cells.
On the basis of calculating the root mean square error of the storage parameters and the storage requirements of each storage unit, the storage unit corresponding to the minimum value of the root mean square error can be used as a target storage unit, that is, the determined target storage unit is the optimal storage unit with the minimum root mean square error of the storage parameters and the user requirements, and the root mean square error of the storage unit is the minimum value of the root mean square error:
RMSE target =min{RMSE 1,sec ,RMSE 2,sec ,RMSE 3,sec ,...,RMSE n,sec }。
s105: and distributing the target storage unit to the user.
In one implementation of this embodiment, the target storage unit may be bound to the user host, so that the target storage unit provides storage resource services for the user host, and thus the target storage unit is allocated to the user.
The method for distributing the storage units in the embodiment adopts non-serial execution logic, so that the user requirements can be quickly matched. And the selection range of the target storage unit is reduced through the third-order judgment model, and the target storage unit is comprehensively determined according to the storage resource pool level, the storage capacity, the storage bandwidth, the storage IOPS and other parameters, so that the utilization rate of storage resources can be effectively improved, and the storage cost can be reduced.
Fig. 2 shows a schematic diagram of an apparatus module for allocating memory cells according to another embodiment of the present invention. As shown in fig. 2, the apparatus 10 for allocating storage units of the present embodiment includes: a storage demand acquisition module 11, a target resource pool determination module 12, a first storage unit screening module 13, a target storage unit determination module 14, and an allocation module 15.
The storage requirement obtaining module 11 is configured to obtain storage requirement information of a user, where the storage requirement information includes: host information, capacity requirements, bandwidth requirements, IOPS requirements of the user host;
a target resource pool determining module 12, configured to determine a target storage resource pool according to the storage requirement information;
a first storage unit screening module 13, configured to screen a first storage unit set from available storage units in the target resource pool according to the capacity requirement, the bandwidth requirement, the IOPS requirement, and storage parameters of the storage units in the target resource pool, where the storage parameters of the storage units include: capacity, bandwidth, IOPS of the storage unit;
the target storage unit determining module 14 determines a target storage unit according to the root mean square error of the storage parameters of the storage units in the first storage unit set and the storage requirement;
an allocation module 15, configured to allocate the target storage unit to the user.
In one implementation of this embodiment, the target resource pool determination module 12 further includes:
a storage resource pool level determining unit, configured to determine a required storage resource pool level according to the capacity requirement, the bandwidth requirement, and the IOPS requirement;
and the target storage resource pool determining unit is used for determining a target storage resource pool corresponding to the storage resource pool level from storage resource pools which are positioned in the same storage network with the user host according to the host information.
In an implementation manner of this embodiment, the storage requirement information further includes: a desired storage system;
the target storage resource pool determining unit is further configured to determine a target storage resource pool from storage resource pools located in a same storage network as the user host according to the required storage system and storage resource pool levels.
In one implementation of this embodiment, the first storage unit screening module 13 includes:
a storage parameter obtaining unit, configured to obtain a storage parameter of a storage unit in the target storage resource pool from a storage resource pool database;
a screening unit, configured to screen a storage unit that meets a third-order decision model from available storage units in the target storage resource pool according to the capacity requirement, the bandwidth requirement, the IOPS requirement, and the storage parameters of the storage units in the target storage resource pool,
wherein, the third-order judgment model is as follows:
wherein,X user representing capacity demand, Y user Indicating bandwidth demand, Z user Indicating IOPS demand, X dec Representing the capacity decision factor, Y dec Representing bandwidth decision factor, Z dec Representing IOPS decision factor, X m Representing the capacity of the mth available storage unit in the target storage resource pool, Y m Representing bandwidth of an mth available storage unit in a target storage resource pool, Z m IOPS, K representing the mth available storage unit in the target storage resource pool m Representing the number of ports in an available port group of an mth available storage unit in the target storage resource pool;
and the marking unit is used for marking the storage unit meeting the third-order judgment model as a first storage unit.
In one implementation of the present embodiment, the target storage unit determining module 14 includes:
the root mean square error calculation unit is used for calculating the root mean square error of the storage parameters of each storage unit in the first storage unit and the storage requirement through the following formula respectively:
wherein X is user Representing capacity demand, Y user Indicating bandwidth demand, Z user Indicating IOPS demand, X j,sec Representing the capacity of the jth memory cell in the first set of memory cells, Y j,sec Representing the bandwidth, Z, of the jth memory cell in the first set of memory cells j,sec IOPS, K representing the jth memory cell in the first set of memory cells j,sec Representing the number of ports in the available port group of the jth storage unit in the first storage unit set;
and the target storage unit determining unit is used for determining the storage unit with the minimum root mean square error from the first storage unit set according to the root mean square error of each storage unit as the target storage unit.
The device in this embodiment may be used to execute the corresponding process in the foregoing method embodiment, and the working principle and the execution method thereof may refer to the corresponding process in the foregoing method embodiment, which is not described herein again.
From the above description of embodiments, it will be apparent to those skilled in the art that the present invention may be implemented in software in combination with a hardware platform. With such understanding, all or part of the technical solution of the present invention contributing to the background art may be embodied in the form of a software product, which may be stored in a storage medium, such as ROM/RAM, a magnetic disk, an optical disk, etc., including several instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) to perform the methods described in some parts of the embodiments or implementations of the present invention.
Yet another embodiment of the present invention provides a computer storage medium, such as a hard disk, optical disk, flash memory, floppy disk, magnetic tape, etc., having stored thereon computer readable instructions executable by a processor to implement the method of allocating storage units described in the above embodiments.
Yet another embodiment of the present invention provides a computer apparatus comprising:
a memory on which a computer program is stored,
and a processor, which can execute the computer program to implement the method for allocating storage units according to the above embodiment.
The terms and expressions used in the present specification are used as examples only and are not meant to be limiting. It will be appreciated by those skilled in the art that numerous changes may be made to the details of the above-described embodiments without departing from the underlying principles of the disclosed embodiments. The scope of the invention is therefore to be determined only by the following claims, in which all terms are to be understood in their broadest reasonable sense unless otherwise indicated.
Claims (12)
1. A method of allocating memory cells, the method comprising:
obtaining storage demand information of a user, wherein the storage demand information comprises: host information, capacity requirements, bandwidth requirements, IOPS requirements of the user host;
determining a target storage resource pool according to the storage demand information;
and screening a first storage unit set from available storage units in the target storage resource pool according to the capacity requirement, the bandwidth requirement, the IOPS requirement and the storage parameters of the storage units in the target storage resource pool, wherein the storage parameters of the storage units comprise: capacity, bandwidth, IOPS;
determining a target storage unit according to the storage parameters of the storage units in the first storage unit set and the root mean square error of the storage requirement;
and distributing the target storage unit to the user.
2. The method of allocating storage units of claim 1, wherein said determining a target storage resource pool based on said storage demand information comprises:
determining a required storage resource pool level according to the capacity requirement, the bandwidth requirement and the IOPS requirement;
and determining a target storage resource pool corresponding to the storage resource pool level from the storage resource pools of the same storage network with the user host according to the host information.
3. The method of allocating memory cells of claim 2,
the storage requirement information further includes: a desired storage system;
the determining the target storage resource pool according to the storage demand information further includes:
and determining a target storage resource pool from the storage resource pools which are positioned in the same storage network with the user host according to the required storage system and storage resource pool level.
4. The method of allocating storage units according to claim 1, wherein the screening the first set of storage units from the available storage units in the target resource pool according to the capacity requirement, the bandwidth requirement, the IOPS requirement, and the storage parameters of the storage units in the target resource pool comprises:
acquiring storage parameters of a storage unit in the target storage resource pool from a storage resource pool database;
screening storage units meeting a third-order judgment model from available storage units in the target storage resource pool according to the capacity requirement, the bandwidth requirement, the IOPS requirement and the storage parameters of the storage units in the target resource pool;
wherein, the third-order judgment model is as follows:
wherein X is user Representing capacity demand, Y user Indicating bandwidth demand, Z user Indicating IOPS demand, X dec Representing the capacity decision factor, Y dec Representing bandwidth decision factor, Z dec Representing IOPS decision factor, X m Representing the capacity of the mth available storage unit in the target storage resource pool, Y m Representing bandwidth of an mth available storage unit in a target storage resource pool, Z m IOPS, K representing the mth available storage unit in the target storage resource pool m Representing the number of ports in an available port group of an mth available storage unit in the target storage resource pool;
and marking the storage units meeting the third-order judgment model as first storage units.
5. The method of allocating memory cells of claim 1, wherein said determining a target memory cell based on a root mean square error of a memory parameter of a memory cell in said first set of memory cells and said memory requirement comprises:
calculating root mean square errors of storage parameters of each storage unit in the first storage unit set and the storage requirements through the following formulas:
wherein X is user Representing capacity demand, Y user Indicating bandwidth demand, Z user Indicating IOPS demand, X j,sec Representing the capacity of the jth memory cell in the first set of memory cells, Y j,sec Representing the bandwidth, Z, of the jth memory cell in the first set of memory cells j,sec IOPS, K representing the jth memory cell in the first set of memory cells j,sec Representing the number of ports in the available port group of the jth storage unit in the first storage unit set;
and determining the storage unit with the minimum root mean square error from the first storage unit set according to the root mean square error of each storage unit as a target storage unit.
6. An apparatus for allocating memory cells, the apparatus comprising:
the storage requirement acquisition module is used for acquiring storage requirement information of a user, and the storage requirement information comprises: host information, capacity requirements, bandwidth requirements, IOPS requirements of the user host;
the target resource pool determining module is used for determining a target storage resource pool according to the storage demand information;
the first storage unit screening module is configured to screen a first storage unit set from available storage units in the target resource pool according to the capacity requirement, the bandwidth requirement, the IOPS requirement and storage parameters of the storage units in the target resource pool, where the storage parameters of the storage units include: capacity, bandwidth, IOPS of the storage unit;
the target storage unit determining module is used for determining a target storage unit according to the root mean square error of the storage parameters of the storage units in the first storage unit set and the storage requirement;
and the allocation module is used for allocating the target storage unit to the user.
7. The apparatus for allocating memory cells of claim 6, wherein the target resource pool determination module comprises:
a storage resource pool level determining unit, configured to determine a required storage resource pool level according to the capacity requirement, the bandwidth requirement, and the IOPS requirement;
and the target storage resource pool determining unit is used for determining a target storage resource pool corresponding to the storage resource pool level from storage resource pools which are positioned in the same storage network with the user host according to the host information.
8. The apparatus for distributing memory units as recited in claim 7, wherein,
the storage requirement information further includes: a desired storage system;
the target storage resource pool determining unit is further configured to determine a target storage resource pool from storage resource pools located in a same storage network as the user host according to the required storage system and storage resource pool levels.
9. The apparatus for allocating memory cells of claim 6, wherein the first memory cell filtering module comprises:
a storage parameter obtaining unit, configured to obtain a storage parameter of a storage unit in the target storage resource pool from a storage resource pool database;
a screening unit, configured to screen a storage unit that meets a third-order decision model from available storage units in the target storage resource pool according to the capacity requirement, the bandwidth requirement, the IOPS requirement, and the storage parameters of the storage units in the target storage resource pool,
wherein, the third-order judgment model is as follows:
wherein X is user Representing capacity demand, Y user Indicating bandwidth demand, Z user Indicating IOPS demand, X dec Representing the capacity decision factor, Y dec Representing bandwidth decision factor, Z dec Representing IOPS decision factor, X m Representing the capacity of the mth available storage unit in the target storage resource pool, Y m Representing bandwidth of an mth available storage unit in a target storage resource pool, Z m IOPS, K representing the mth available storage unit in the target storage resource pool m Representing the number of ports in an available port group of an mth available storage unit in the target storage resource pool;
and the marking unit is used for marking the storage unit meeting the third-order judgment model as a first storage unit.
10. The apparatus for allocating memory cells of claim 6, wherein the target memory cell determination module comprises:
the root mean square error calculation unit is used for calculating the root mean square error of the storage parameters of each storage unit in the first storage unit and the storage requirement through the following formula respectively:
wherein X is user Representing capacity demand, Y user Indicating bandwidth demand, Z user Indicating IOPS demand, X j,sec Representing the capacity of the jth memory cell in the first set of memory cells, Y j,sec Representing the bandwidth, Z, of the jth memory cell in the first set of memory cells j,sec IOPS, K representing the jth memory cell in the first set of memory cells j,sec Representing the number of ports in the available port group of the jth storage unit in the first storage unit set;
and the target storage unit determining unit is used for determining the storage unit with the minimum root mean square error from the first storage unit set according to the root mean square error of each storage unit as the target storage unit.
11. A computer storage medium having stored thereon computer instructions executable by a processor to implement the method of allocating storage units of any of claims 1-5.
12. A computer device, the computer comprising:
a memory having a computer program stored thereon;
a processor for executing the computer program to implement the method of allocating memory cells of any one of claims 1-5.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010573182.7A CN111930299B (en) | 2020-06-22 | 2020-06-22 | Method for distributing storage units and related equipment |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010573182.7A CN111930299B (en) | 2020-06-22 | 2020-06-22 | Method for distributing storage units and related equipment |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111930299A CN111930299A (en) | 2020-11-13 |
CN111930299B true CN111930299B (en) | 2024-01-26 |
Family
ID=73316895
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010573182.7A Active CN111930299B (en) | 2020-06-22 | 2020-06-22 | Method for distributing storage units and related equipment |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111930299B (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113721855A (en) * | 2021-09-01 | 2021-11-30 | 中国建设银行股份有限公司 | Storage method and device of storage resources, electronic equipment and computer storage medium |
Citations (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103036688A (en) * | 2013-01-05 | 2013-04-10 | 浪潮电子信息产业股份有限公司 | Accounting management method of cloud storage service used by users |
WO2013076736A2 (en) * | 2011-10-12 | 2013-05-30 | Tata Consultancy Services Limited | A method and system for consolidating a plurality of heterogeneous storage systems in a data center |
TW201416881A (en) * | 2013-12-09 | 2014-05-01 | Annethen Technology Co Ltd | Operation method of distributed memory disk cluster storage system |
CN103873559A (en) * | 2014-02-13 | 2014-06-18 | 南京斯坦德通信股份有限公司 | Database all-in-one machine capable of realizing high-speed storage |
CN104965677A (en) * | 2015-06-26 | 2015-10-07 | 北京百度网讯科技有限公司 | Storage system |
US9286261B1 (en) * | 2011-11-14 | 2016-03-15 | Emc Corporation | Architecture and method for a burst buffer using flash technology |
US9524111B1 (en) * | 2016-03-07 | 2016-12-20 | FittedCloud, Inc. | Devices, systems, apparatus, and methods for transparent and automated optimization of storage resource allocation in a cloud services system |
CN106502576A (en) * | 2015-09-06 | 2017-03-15 | 中兴通讯股份有限公司 | Migration strategy method of adjustment, capacity change suggesting method and device |
WO2017088717A1 (en) * | 2015-11-23 | 2017-06-01 | 华为技术有限公司 | Storage resource allocation method and system |
CN107506314A (en) * | 2016-06-14 | 2017-12-22 | 伊姆西公司 | Method and apparatus for managing storage system |
CN107590069A (en) * | 2017-08-16 | 2018-01-16 | 国家电网公司 | A kind of software definition storage performance evaluating method |
CN107728936A (en) * | 2017-09-05 | 2018-02-23 | 华为技术有限公司 | Method and apparatus for transmitting data processing request |
US9983795B1 (en) * | 2015-03-31 | 2018-05-29 | EMC IP Holding Company LLC | Techniques for determining a storage configuration |
CN207833486U (en) * | 2018-02-26 | 2018-09-07 | 湖南国科微电子股份有限公司 | A kind of solid-state memory system based on FPGA |
CN109062768A (en) * | 2018-08-09 | 2018-12-21 | 网宿科技股份有限公司 | The IO performance estimating method and device of cache server |
CN109154883A (en) * | 2017-03-22 | 2019-01-04 | 波利伍德有限责任公司 | Driving stage internal service quality |
CN110300134A (en) * | 2018-03-22 | 2019-10-01 | 杭州海康威视系统技术有限公司 | Memory space method of adjustment, device and the cloud storage system of cloud storage resource pool |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030236961A1 (en) * | 2000-11-07 | 2003-12-25 | Qiu Chaoxin C. | Systems and methods for management of memory in information delivery environments |
US8706914B2 (en) * | 2007-04-23 | 2014-04-22 | David D. Duchesneau | Computing infrastructure |
US20140025909A1 (en) * | 2012-07-10 | 2014-01-23 | Storone Ltd. | Large scale storage system |
US10019352B2 (en) * | 2013-10-18 | 2018-07-10 | Sandisk Technologies Llc | Systems and methods for adaptive reserve storage |
CN105940637B (en) * | 2014-02-27 | 2020-03-31 | 英特尔公司 | Method and apparatus for workload optimization, scheduling and placement for rack-level architecture computing systems |
US9923839B2 (en) * | 2015-11-25 | 2018-03-20 | International Business Machines Corporation | Configuring resources to exploit elastic network capability |
US20190102107A1 (en) * | 2017-09-29 | 2019-04-04 | Intel Corporation | Techniques for batch operations to storage devices |
US10891162B2 (en) * | 2018-01-25 | 2021-01-12 | Vmware, Inc | Methods and apparatus to improve external resource allocation for hyper-converged infrastructures based on costs analysis |
-
2020
- 2020-06-22 CN CN202010573182.7A patent/CN111930299B/en active Active
Patent Citations (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013076736A2 (en) * | 2011-10-12 | 2013-05-30 | Tata Consultancy Services Limited | A method and system for consolidating a plurality of heterogeneous storage systems in a data center |
US9286261B1 (en) * | 2011-11-14 | 2016-03-15 | Emc Corporation | Architecture and method for a burst buffer using flash technology |
CN103036688A (en) * | 2013-01-05 | 2013-04-10 | 浪潮电子信息产业股份有限公司 | Accounting management method of cloud storage service used by users |
TW201416881A (en) * | 2013-12-09 | 2014-05-01 | Annethen Technology Co Ltd | Operation method of distributed memory disk cluster storage system |
CN103873559A (en) * | 2014-02-13 | 2014-06-18 | 南京斯坦德通信股份有限公司 | Database all-in-one machine capable of realizing high-speed storage |
US9983795B1 (en) * | 2015-03-31 | 2018-05-29 | EMC IP Holding Company LLC | Techniques for determining a storage configuration |
CN104965677A (en) * | 2015-06-26 | 2015-10-07 | 北京百度网讯科技有限公司 | Storage system |
CN106502576A (en) * | 2015-09-06 | 2017-03-15 | 中兴通讯股份有限公司 | Migration strategy method of adjustment, capacity change suggesting method and device |
WO2017088717A1 (en) * | 2015-11-23 | 2017-06-01 | 华为技术有限公司 | Storage resource allocation method and system |
US9524111B1 (en) * | 2016-03-07 | 2016-12-20 | FittedCloud, Inc. | Devices, systems, apparatus, and methods for transparent and automated optimization of storage resource allocation in a cloud services system |
CN107506314A (en) * | 2016-06-14 | 2017-12-22 | 伊姆西公司 | Method and apparatus for managing storage system |
CN109154883A (en) * | 2017-03-22 | 2019-01-04 | 波利伍德有限责任公司 | Driving stage internal service quality |
CN107590069A (en) * | 2017-08-16 | 2018-01-16 | 国家电网公司 | A kind of software definition storage performance evaluating method |
CN107728936A (en) * | 2017-09-05 | 2018-02-23 | 华为技术有限公司 | Method and apparatus for transmitting data processing request |
CN207833486U (en) * | 2018-02-26 | 2018-09-07 | 湖南国科微电子股份有限公司 | A kind of solid-state memory system based on FPGA |
CN110300134A (en) * | 2018-03-22 | 2019-10-01 | 杭州海康威视系统技术有限公司 | Memory space method of adjustment, device and the cloud storage system of cloud storage resource pool |
CN109062768A (en) * | 2018-08-09 | 2018-12-21 | 网宿科技股份有限公司 | The IO performance estimating method and device of cache server |
Non-Patent Citations (2)
Title |
---|
张晶华 ; 张昕源 ; 蒋同军 ; 闫洪吉.《基于闪存阵列的日志结构文件系统在桌面云中的应用研究》.《国网技术学院学报》.2020,全文. * |
陈游旻 ; 李飞 ; 舒继武 .《大数据环境下的存储系统构建:挑战、方法和趋势》.《大数据》.2019,全文. * |
Also Published As
Publication number | Publication date |
---|---|
CN111930299A (en) | 2020-11-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6803403B2 (en) | Dedicated agent pool allocation method, electronics and computer readable storage media | |
CN103365781B (en) | For dynamically reconfiguring the method and apparatus of storage system | |
US10354201B1 (en) | Scalable clustering for mixed machine learning data | |
CN108776934B (en) | Distributed data calculation method and device, computer equipment and readable storage medium | |
US8478845B2 (en) | End-to-end provisioning of storage clouds | |
US20100125715A1 (en) | Storage System and Operation Method Thereof | |
CN106325756B (en) | Data storage method, data calculation method and equipment | |
CN107506145B (en) | Physical storage scheduling method and cloud host creation method | |
EP3537281B1 (en) | Storage controller and io request processing method | |
EP2745248A1 (en) | System and method for determining and visualizing efficiencies and risks in computing environments | |
US20120323821A1 (en) | Methods for billing for data storage in a tiered data storage system | |
CN111625367B (en) | Method for dynamically adjusting read-write resources of file system | |
US10496282B1 (en) | Adaptive port management to meet service level objectives using reinforcement learning | |
CN110708369A (en) | File deployment method and device for equipment nodes, scheduling server and storage medium | |
CN111338579B (en) | Read-write cache optimization method, system, terminal and storage medium based on storage pool | |
CN110414569A (en) | Cluster realizing method and device | |
CN111930299B (en) | Method for distributing storage units and related equipment | |
CN112214321A (en) | Node selection method and device for newly-added micro service and micro service management platform | |
CN108664322A (en) | Data processing method and system | |
CN111314234A (en) | Flow distribution method and device, storage medium and electronic equipment | |
CN111158595A (en) | Enterprise-level heterogeneous storage resource scheduling method and system | |
CN109660623A (en) | A kind of distribution method, device and the computer readable storage medium of cloud service resource | |
CN109445863A (en) | A kind of data processing method based on FPGA, device, equipment and medium | |
CN106126123B (en) | A kind of method, apparatus and system of the distribution of host volume | |
CN111598390B (en) | Method, device, equipment and readable storage medium for evaluating high availability of server |
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 |