CN111930299B - Method for distributing storage units and related equipment - Google Patents

Method for distributing storage units and related equipment Download PDF

Info

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
Application number
CN202010573182.7A
Other languages
Chinese (zh)
Other versions
CN111930299A (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.)
China Construction Bank Corp
Original Assignee
China Construction Bank Corp
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 China Construction Bank Corp filed Critical China Construction Bank Corp
Priority to CN202010573182.7A priority Critical patent/CN111930299B/en
Publication of CN111930299A publication Critical patent/CN111930299A/en
Application granted granted Critical
Publication of CN111930299B publication Critical patent/CN111930299B/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/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0608Saving storage space on storage systems
    • 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/0629Configuration or reconfiguration of storage systems
    • G06F3/0631Configuration or reconfiguration of storage systems by allocating resources to storage systems
    • 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/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed 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

Method for distributing storage units and related equipment
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.
CN202010573182.7A 2020-06-22 2020-06-22 Method for distributing storage units and related equipment Active CN111930299B (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (17)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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