CN111090390A - Storage allocation method and device of distributed system and computer equipment - Google Patents

Storage allocation method and device of distributed system and computer equipment Download PDF

Info

Publication number
CN111090390A
CN111090390A CN201911055685.9A CN201911055685A CN111090390A CN 111090390 A CN111090390 A CN 111090390A CN 201911055685 A CN201911055685 A CN 201911055685A CN 111090390 A CN111090390 A CN 111090390A
Authority
CN
China
Prior art keywords
osd
iteration
initial
preset
temperature
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.)
Granted
Application number
CN201911055685.9A
Other languages
Chinese (zh)
Other versions
CN111090390B (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.)
Ping An Technology Shenzhen Co Ltd
Original Assignee
Ping An Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ping An Technology Shenzhen Co Ltd filed Critical Ping An Technology Shenzhen Co Ltd
Priority to CN201911055685.9A priority Critical patent/CN111090390B/en
Publication of CN111090390A publication Critical patent/CN111090390A/en
Priority to PCT/CN2020/093024 priority patent/WO2021082421A1/en
Application granted granted Critical
Publication of CN111090390B publication Critical patent/CN111090390B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Stored Programmes (AREA)

Abstract

The application discloses a storage allocation method and device of a distributed system and computer equipment, relates to the technical field of computers, and can enable the PG number of each OSD of a distributed storage system cluster to be the same as much as possible to the greatest extent, so that partial OSD space is prevented from being fully occupied in advance. The method comprises the following steps: configuring initial weights corresponding to the OSD according to the disk space size of the OSD in the distributed storage system, and distributing the initial PG number corresponding to the OSD according to the initial weights; according to the number of the distributed initial PGs, carrying out iterative adjustment on initial weights corresponding to the configured OSD for multiple times; and after the preset iteration termination condition is met, executing the final configuration of the OSD weights in the distributed storage system according to the weights corresponding to the OSD after the multiple times of iteration adjustment. The method and the device are suitable for the weight configuration of the OSD in the distributed storage system.

Description

Storage allocation method and device of distributed system and computer equipment
Technical Field
The present application relates to the field of computer technologies, and in particular, to a method and an apparatus for allocating storage in a distributed system, and a computer device.
Background
For a distributed Storage system (e.g., Ceph), objects to be stored can be distributed into different Placement Groups (PGs) by a crush algorithm, and the PGs are also distributed onto respective Object Storage Devices (OSDs) according to corresponding rules, and an OSD includes a plurality of PGs, and the number of PGs included in an OSD is related to the weight of the OSD.
Currently, the OSD weight setting is determined according to the size of the OSD disk space. However, in practical use, it can be found that due to the defect of the flush algorithm, even if all OSDs use the same disk space and the same weight is set, the PG number actually allocated to each OSD is not uniform. If the PG quantity is distributed unevenly, partial OSD space is occupied fully in advance, a barrel effect is generated, the whole distributed storage system cluster cannot be written, and the residual disk space is greatly wasted.
Disclosure of Invention
In view of this, the present application provides a storage allocation method and apparatus for a distributed system, and a computer device, and mainly aims to solve the technical problems that in the prior art, the weight of each OSD of the distributed storage system is not accurate, so that the PG number actually allocated to each OSD is not uniform, and further, a part of OSD space is fully occupied in advance, a barrel effect is generated, so that the whole distributed storage system cluster cannot be written in, and the remaining disk space is greatly wasted.
According to an aspect of the present application, there is provided a storage allocation method of a distributed system, the method including:
configuring initial weights corresponding to the OSD according to the disk space size of the OSD in the distributed storage system, and distributing the initial PG number corresponding to the OSD according to the initial weights;
according to the distributed initial PG numbers, carrying out iteration adjustment for multiple times on the initial weights corresponding to the configured OSDs, wherein the OSD weight with the largest PG number at the time is reduced in each iteration, the OSD weight with the smallest PG number at the time is increased at the same time, and the PG numbers corresponding to the OSDs are redistributed according to the weights corresponding to the regulated OSDs so as to carry out the next iteration adjustment based on the PG numbers corresponding to the redistributed OSDs;
and after the preset iteration termination condition is met, executing the final configuration of the OSD weights in the distributed storage system according to the weights corresponding to the OSD after the multiple times of iteration adjustment.
According to another aspect of the present application, there is provided a storage allocation apparatus of a distributed system, the apparatus including:
the configuration module is used for configuring initial weights corresponding to the OSD according to the disk space size of the OSD in the distributed storage system and distributing the initial PG quantity corresponding to the OSD according to the initial weights;
the adjusting module is used for carrying out iterative adjustment on initial weights respectively corresponding to the configured OSD for multiple times according to the distributed initial PG numbers, wherein the OSD weight with the largest PG number at the time is reduced in each iteration, the OSD weight with the smallest PG number at the time is increased at the same time, and the PG numbers respectively corresponding to the OSD are redistributed according to the respective weights corresponding to the regulated OSD so as to carry out the next iterative adjustment based on the PG numbers respectively corresponding to the redistributed OSD;
and the configuration module is further used for executing the final configuration of the OSD weights in the distributed storage system according to the respective weights of the OSD after the OSD is adjusted by multiple iterations after the preset iteration termination condition is met.
According to yet another aspect of the present application, there is provided a non-transitory readable storage medium having stored thereon a computer program which, when executed by a processor, implements the storage allocation method of the above-described distributed system.
According to yet another aspect of the present application, there is provided a computer apparatus comprising a non-volatile readable storage medium, a processor, and a computer program stored on the non-volatile readable storage medium and executable on the processor, the processor implementing the storage allocation method of the distributed system described above when executing the program.
By means of the technical scheme, the storage allocation method and device of the distributed system and the computer equipment are provided. Compared with the prior art, the method and the device have the advantages that the initial weights corresponding to the OSD are configured according to the disk space size of the OSD in the distributed storage system, and the initial PG numbers corresponding to the OSD are distributed according to the initial weights. And then, according to the distributed initial PG numbers, carrying out multiple iteration adjustment on the initial weights respectively corresponding to the configured OSD, reducing the OSD weight with the largest PG number at the time in each iteration, simultaneously increasing the OSD weight with the smallest PG number at the time, and redistributing the PG numbers respectively corresponding to the OSD according to the adjusted weights respectively corresponding to the OSD so as to carry out the next iteration adjustment based on the PG numbers respectively corresponding to the redistributed OSD. In this way, it is equivalent to performing balanced adjustment on the weight of the OSD with the largest PG number and the weight of the OSD with the smallest PG number at each iteration adjustment, so as to make the PG numbers of each OSD of the distributed storage system cluster as the same as possible to a great extent. And then avoid some OSD space to be taken up full in advance, reduce the possibility that produces the wooden barrel effect, guarantee that whole distributed storage system cluster all can write, make full use of disk space to avoid producing the extravagant condition of disk space.
The above description is only an outline of the technical solution of the present application, and the present application can be implemented in accordance with the content of the description so as to make the technical means of the present application more clearly understood, and the detailed description of the present application will be given below so that the above and other objects, features, and advantages of the present application can be more clearly understood.
Drawings
The accompanying drawings, which are included to provide a further understanding of the application and are incorporated in and constitute a part of this application, illustrate embodiment(s) of the application and together with the description serve to explain the application and not to limit the application to the disclosed embodiment. In the drawings:
fig. 1 is a schematic flowchart illustrating a storage allocation method of a distributed system according to an embodiment of the present application;
FIG. 2 is a flow chart illustrating a storage allocation method for another distributed system according to an embodiment of the present disclosure;
fig. 3 shows a schematic structural diagram of a storage allocation apparatus of a distributed system according to an embodiment of the present application.
Detailed Description
The present application will be described in detail below with reference to the accompanying drawings in conjunction with embodiments. It should be noted that the embodiments and features of the embodiments in the present application may be combined with each other without conflict.
Aiming at the technical problems that the PG quantity actually distributed by each OSD is uneven when the weight of each OSD in the distributed storage system is set through a flush algorithm at present, and further, partial OSD space is fully occupied in advance, so that a barrel effect is generated, the whole distributed storage system cluster cannot be written in, and the remaining disk space is greatly wasted, the embodiment provides a storage distribution method of the distributed system, and as shown in FIG. 1, the method comprises the following steps:
101. and configuring initial weights corresponding to the OSD according to the disk space of the OSD in the distributed storage system, and distributing the initial PG number corresponding to the OSD according to the initial weights.
In this embodiment, cluster information (the number of OSDs included, the size of the disk space of each OSD, the IP address of the host where the OSD is located, and the like) of the distributed storage system may be obtained through a control center (connected to each host in the system, and used for managing the entire distributed storage system) in the distributed storage system, so as to further obtain the size of the disk space of each OSD. And then configuring initial weights corresponding to the OSD respectively and distributing the initial PG quantity corresponding to the OSD respectively according to the disk space size of the OSD. For example, the larger the disk space of the OSD is, the larger the corresponding initial weight is, and the more the initial PG number is allocated; the smaller the disk space of the OSD, the smaller its corresponding initial weight, and the smaller the number of initial PGs assigned.
The execution subject of the present embodiment may be a device or apparatus for configuring the weight of each OSD in the distributed storage system, and may be configured on the distributed storage system side, such as the control center side. For example, for a Ceph distributed storage system, it may be configured on the central compute node side of a Ceph software deployment.
102. And carrying out iterative adjustment on initial weights respectively corresponding to the configured OSD for multiple times according to the distributed initial PG numbers.
And the OSD weight with the most PG number at the time is reduced in each iteration, the OSD weight with the least PG number at the time is increased at the same time, and the PG numbers corresponding to the OSD are redistributed according to the respective weights corresponding to the regulated OSD so as to carry out the next iteration regulation based on the PG numbers corresponding to the redistributed OSD.
In this way, it is equivalent to performing balanced adjustment on the weight of the OSD with the largest PG number and the weight of the OSD with the smallest PG number at each iteration adjustment, so as to make the PG numbers of each OSD of the distributed storage system cluster as the same as possible to a great extent.
103. And after the preset iteration termination condition is met, executing the final configuration of the OSD weights in the distributed storage system according to the weights corresponding to the OSD after the multiple times of iteration adjustment.
The preset iteration termination condition can be preset according to actual requirements. For example, after multiple iteration adjustments, when the PG number is assigned according to the latest OSD weight, the PG number difference between the OSD with the highest PG number and the OSD with the lowest PG number is less than a certain threshold, and if the PG number difference cannot be guaranteed, the iteration is continued until the PG number difference between the OSD with the highest PG number and the OSD with the lowest PG number is less than a certain threshold.
Compared with the prior art, the storage allocation method of the distributed storage system in the embodiment is equivalent to performing balanced adjustment on the weight of the OSD with the largest PG number and the weight of the OSD with the smallest PG number during each iteration adjustment, and the purpose is to make the PG numbers of each OSD of the distributed storage system cluster as the same as possible to the greatest extent. And then avoid some OSD space to be taken up full in advance, reduce the possibility that produces the wooden barrel effect, guarantee that whole distributed storage system cluster all can write, make full use of disk space to avoid producing the extravagant condition of disk space.
Further, as a refinement and an extension of the specific implementation of the foregoing embodiment, in order to fully illustrate the specific implementation process in this embodiment, another storage allocation method for a distributed system is provided, as shown in fig. 2, the method includes:
201. and configuring initial weights corresponding to the OSD according to the disk space of the OSD in the distributed storage system, and distributing the initial PG number corresponding to the OSD according to the initial weights.
202. And carrying out iterative adjustment on initial weights respectively corresponding to the configured OSD for multiple times according to the distributed initial PG numbers.
In each iteration, randomly generating a random number from a preset adjusting range, subtracting the random number from the OSD weight with the largest PG number at that time, and adding the OSD weight with the smallest PG number at that time to the random number; and reallocating the PG quantity respectively corresponding to the OSD according to the weight respectively corresponding to the adjusted OSD so as to carry out the next iteration adjustment based on the PG quantity respectively corresponding to the reallocated OSD.
The random number size will vary with each iterative adjustment, which means that the amplitude of the adjustment has a certain uncertainty with each adjustment, but will be within a uniform adjustment range. The adjusting mode of increasing a certain disturbance degree form can be more suitable for actual adjusting scenes, and further more balanced adjustment can be performed on the weight of the OSD with the largest PG number and the weight of the OSD with the smallest PG number, so that the PG numbers of each OSD of the distributed storage system cluster are the same as much as possible to the greatest extent.
Optionally, the process of determining the preset adjustment range may specifically include: carrying out variance calculation on the initial weights respectively corresponding to the OSD; and then inquiring a corresponding preset adjustment range according to the first variance value obtained by calculation and the maximum weight and the minimum weight in the initial weights.
For the optional mode, mapping relationships between different variance values, maximum weights and minimum weights and different preset adjustment ranges can be preset, and then the corresponding preset adjustment ranges are inquired by using the mapping relationships. By executing the optional mode, the aim is to stably and properly adjust the adjustment in each iteration adjustment, avoid the problem that the adjustment efficiency is influenced due to the over-small adjustment amplitude and avoid the problem that the adjustment precision is influenced due to the over-large adjustment amplitude.
203. And after the preset iteration termination condition is met, distributing the latest PG quantity corresponding to the OSD according to the weight corresponding to the OSD after the multiple times of iteration adjustment.
Optionally, the determining process of the preset iteration termination condition may specifically include: firstly, calculating the variance of each allocated initial PG quantity; then obtaining the maximum iteration times corresponding to the calculated second variance values, and obtaining initial temperatures and temperature attenuation coefficients corresponding to the second variance values, wherein different second variance values have respective corresponding maximum iteration times (corresponding mapping relations can be preset), and different second variance values have respective corresponding initial temperatures and temperature attenuation coefficients (corresponding mapping relations can be preset); then, determining a preset iteration termination condition according to the obtained maximum iteration times; or, determining a preset iteration termination condition according to the obtained initial temperature and the temperature attenuation coefficient; or, determining a preset iteration termination condition according to the obtained maximum iteration times, the initial temperature and the temperature attenuation coefficient.
Through the optional mode, more appropriate iteration termination conditions can be automatically set, manual setting is replaced, and the efficiency and accuracy of weight configuration can be improved. There may be three further optional ways to determine the preset iteration termination condition:
(1) the setting of the iteration termination condition is performed only by using the maximum iteration number, and correspondingly, the determining of the preset iteration termination condition according to the obtained maximum iteration number may specifically include: when the iteration times are equal to the obtained maximum iteration times, determining that a preset iteration termination condition is met; and when the iteration times are less than the obtained maximum iteration times, indicating to continue the iteration.
(2) The iteration termination condition is set only by using a limiting mode of temperature attenuation, and correspondingly, the determining of the preset iteration termination condition according to the obtained initial temperature and the obtained temperature attenuation coefficient may specifically include: using the formula Tn=anT0Calculating the latest temperature T after n iterationsnWherein, T0Is the initial temperature, a is the temperature decay coefficient; when the latest temperature TnAnd when the temperature is smaller than the preset temperature threshold value, determining that a preset iteration termination condition is met. When the latest temperature TnAnd when the temperature is larger than the preset temperature threshold value, indicating that the iteration is continued.
The above-mentioned manner for determining the preset iteration termination condition by using the initial temperature and the temperature attenuation coefficient is not unique, and further optional, there may be various manners, for example, setting the initial temperature T and the temperature attenuation coefficient a, then after one iteration, the temperature is attenuated to T-aT, then after another iteration, the temperature is attenuated to T-aT-a (T-aT) … again, and so on, and the iteration is stopped when the finally attenuated temperature is smaller than the preset temperature threshold.
(3) The two manners (1) and (2) are combined, and correspondingly, the determining a preset iteration termination condition according to the obtained maximum iteration number, initial temperature and temperature attenuation coefficient may specifically include: using the formula Tn=anT0Calculating the latest temperature T after n iterationsnWherein, T0Is the initial temperature, a is the temperature decay coefficient; when the iteration number is equal to the maximum obtained iteration number and the latest temperature TnAnd when the temperature is smaller than the preset temperature threshold value, determining that a preset iteration termination condition is met. Stopping iteration when one of the two modes (1) and (2) meets the iteration termination condition; and if the two modes do not meet the iteration termination condition, continuing the iteration.
For the alternative (3), it is equivalent to setting two iteration termination conditions, one is the maximum iteration number, and the other is the decay temperature, and which condition is satisfied first to terminate the iteration. Although the two termination conditions are determined by the same variance value, the same variance value does not represent that the PG distribution number of each OSD is the same, so that the actual iteration effect has uncertainty, and in order to obtain a better calculation effect, the optional method (3) can automatically select a proper termination condition, so that a more accurate iteration calculation result is realized, and the weight configuration of the OSD is more accurate, so that the PG number of each OSD of the distributed storage system cluster is the same as much as possible, and the disk space is fully utilized.
204. And judging whether the PG number difference between the OSD with the most newly distributed PG number and the OSD with the least PG number is smaller than a preset number threshold value or not.
Wherein, the predetermined number threshold may be preset according to actual requirements, and is used to integrally determine whether the PG number newly allocated among the OSDs has a large fluctuation, and if the fluctuation is small, it indicates that the PG numbers newly allocated among the OSDs are the same as much as possible, step 205a may be executed; if the fluctuation is still large, the process shown in step 205b is performed.
205a, if the PG quantity difference between the two is smaller than the predetermined quantity threshold, executing the final configuration of the OSD weights in the distributed storage system according to the weights corresponding to the OSD after multiple times of iterative adjustment.
Step 205b, which is parallel to step 205a, if the PG number difference between the two is greater than or equal to the predetermined number threshold, continuing to perform one or more iterations until the PG number difference between the two is less than the predetermined number threshold, terminating the iteration, and performing final configuration of OSD weights in the distributed storage system according to weights corresponding to the OSD after final iteration adjustment.
For this embodiment, since the preset iteration termination condition may actually deviate to some extent (for example, a few cases still cannot meet the requirement that PG number allocations are as same as possible when iteration is terminated, and it is necessary to iterate once or more), by the above-mentioned manner, the PG numbers finally allocated to each OSD may be finally made as same as possible, so as to fully utilize the disk space.
Based on the foregoing embodiment method, to further explain the specific implementation process of this embodiment, the following example is given by taking a Ceph distributed storage system cluster as an example, but is not limited to this:
for example, ① first determines the disk space size of each OSD in the Ceph cluster, configures the initial weights corresponding to the OSDs according to the disk space size of each OSD, and then determines and obtains the initial vector based on the initial weights
Figure RE-GDA0002390589870000081
I.e. the initial vector
Figure RE-GDA0002390589870000082
The initial weights corresponding to the OSDs are included in the OSD.
② based on an initial vector
Figure RE-GDA0002390589870000083
An initial state may be determined
Figure RE-GDA0002390589870000084
E0Represents the variance value corresponding to the initial state,
Figure RE-GDA0002390589870000085
is an initial vector
Figure RE-GDA0002390589870000086
The target function of (a) is determined,
Figure RE-GDA0002390589870000087
P0 0is the number of PG, P, assigned to the first OSD according to its initial weight1 0The number of PGs … assigned to the second OSD based on its initial weight.
Figure RE-GDA0002390589870000088
Is based on
Figure RE-GDA0002390589870000089
Each OSD assigns a variance in the number of PGs.
③ according to E0The corresponding maximum iteration number L, the initial temperature T and the temperature attenuation coefficient α are configured, wherein the variance calculation mode of the OSD distribution PG number specifically includes the calculation of P0 0,P1 0,P2 0,.., then P0 0,P1 0,P2 0,., the average of the squares of the differences from the average, which is the variance value to be calculated, a mapping relationship may be preset, that is, different variance values have respective maximum iteration times L, and different variance values have respective initial temperatures T and temperature decay coefficients αIn the scheme, when the iteration number is equal to the maximum iteration number L or the temperature is attenuated to a certain threshold value, the iteration is stopped. By these termination conditions, it can be ensured as much as possible that after the iteration is completed, the PG number difference between the OSD with the largest PG number and the OSD with the smallest PG number in the Ceph cluster is smaller than a certain threshold (e.g., smaller than 10).
Besides the above configuration through the mapping relationship, the most suitable maximum iteration number L, initial temperature T and temperature attenuation coefficient α can be adjusted and set manually according to actual conditions
Figure RE-GDA00023905898700000810
Is composed of
Figure RE-GDA00023905898700000811
Figure RE-GDA00023905898700000812
Is composed of
Figure RE-GDA00023905898700000813
EmIs E0And m represents the number of iterations.
④ in each iteration, the weight of the OSD with the largest PG number and the weight of the OSD with the smallest PG number in the Ceph cluster are adjusted by the generated random number thetal<θ<θhWherein thetalMinimum range value adjusted for theta and thetahFor the maximum range value of theta adjustment, theta is adjusted in each iterationlAnd thetahAre fixed and then a number theta is randomly selected from this range to be adjusted. The weight w of osdj which can particularly maximize the number of PGsj=wjθ, weight w of osdk to minimize the number of PGsk=wk+ theta, thus generating a new weight vector
Figure RE-GDA0002390589870000091
Figure RE-GDA0002390589870000092
Theta as abovelAnd thetahThe specific determination method of (3) may include: based on
Figure RE-GDA0002390589870000093
Calculating the variance of initial weights corresponding to the OSD, and using the variance and
Figure RE-GDA0002390589870000094
the medium maximum weight value and the minimum weight value are inquired to corresponding range values, and then theta is determinedlAnd thetah. Besides the configuration through the mapping relation, the more appropriate theta can be manually adjusted and set according to the actual situationlAnd thetah
⑤ in each iteration, after weight adjustment, based on new weight vector
Figure RE-GDA0002390589870000095
Updating into the configuration of the Ceph cluster to obtain new weight vector
Figure RE-GDA0002390589870000096
The newly configured weights of each osd in (1) reassign the corresponding number of PGs. The principle of redistribution here is that the larger the weight is, the larger the number of correspondingly distributed PGs is; the smaller the weight, the smaller the number of PGs it correspondingly assigns.
According to the new PG distribution result, thereby obtaining a vector
Figure RE-GDA0002390589870000097
The vector
Figure RE-GDA0002390589870000098
Which contains the number of newly allocated PGs for each osd in the Ceph cluster. Computing
Figure RE-GDA0002390589870000099
ΔE=Em+1-EmThat is, the variance value in the current iteration is subtracted from the variance value in the previous iteration, and the smaller the variance value is, the more balanced the PG number of each OSD in the Ceph cluster is, so when Δ E is smaller<When 0, it indicates that the iterative process of the present scheme is tending to find the optimal solution, so that the processing result corresponding to the current iteration can be accepted, i.e. the processing result corresponding to the current iteration is acceptable
Figure RE-GDA00023905898700000910
Then order
Figure RE-GDA00023905898700000911
Thereby instructing the next iteration process to be performed. When Δ E is>At 0, although there is no trend toward finding the optimal solution for a while, it is possible to find a more optimal solution when the next iteration process is executed based on the current iteration processing result, that is, it is possible to find the global optimal solution, and therefore, the probability is used
Figure RE-GDA00023905898700000912
Receiving
Figure RE-GDA00023905898700000913
And then instructs to perform the next iteration process.
In this embodiment, steps ③ and ④ correspond to the processing procedure in one iteration, after one iteration is completed, the number of iterations is accumulated to 1, and T is α T, i.e., one temperature decay is completed.
⑥, continuing to perform the next iteration according to the above-mentioned processes in steps ④ and ⑤ until the iteration number is greater than L or the latest temperature value is less than the preset temperature threshold after temperature attenuation, and stopping the iteration, at this time, it is necessary to determine whether the difference between the numbers of the OSDs with the largest PG number and the OSDs with the smallest PG number, which are newly allocated in the Ceph cluster, is less than a certain threshold, and if the difference is less than the certain threshold, it is determined to stop the iteration.
Calculating the corresponding delta E when the iteration is terminated, namely the E value corresponding to the last iteration and the last iterationThe difference between the corresponding E values. If the Δ E is less than 0, the trend of finding the optimal solution is satisfied, and the result obtained by the current final iteration is the final result required by the scheme, namely the result obtained by the scheme
Figure RE-GDA0002390589870000101
And setting the weight of each OSD in the Ceph cluster according to the weight value of each OSD in the vector for the optimal solution under the current condition, and further distributing the PG number corresponding to each OSD in the Ceph cluster according to the weight setting. And if the delta E is larger than 0, the better global optimal solution is possibly obtained by carrying out iteration again, so that the iteration can be continuously indicated until the delta E after the latest iteration is smaller than 0, and the iteration is stopped, and the global optimal solution is further found.
By the storage allocation method of the distributed storage system in the embodiment, it is equivalent to performing balanced adjustment on the weight of the OSD with the largest PG number and the weight of the OSD with the smallest PG number in each iteration adjustment, so as to make the PG numbers of each OSD of the distributed storage system cluster as the same as possible to the greatest extent. And then avoid some OSD space to be taken up full in advance, reduce the possibility that produces the wooden barrel effect, guarantee that whole distributed storage system cluster all can write, make full use of disk space to avoid producing the extravagant condition of disk space.
Further, as a specific implementation of the method shown in fig. 1 to fig. 2, an embodiment of the present application provides a storage allocation apparatus for a distributed system, as shown in fig. 3, the apparatus includes: a configuration module 31 and an adjustment module 32.
A configuration module 31, configured to configure initial weights corresponding to OSDs according to the sizes of the disk spaces of the OSDs of the object storage devices in the distributed storage system, and allocate the numbers of initial placement groups PG corresponding to the OSDs according to the initial weights;
an adjusting module 32, configured to perform multiple iteration adjustments on the initial weights corresponding to the configured OSDs according to the allocated initial PG numbers, where the OSD weight with the largest PG number at that time is reduced in each iteration, the OSD weight with the smallest PG number at that time is increased at the same time, and the PG numbers corresponding to the OSDs are reallocated according to the respective weights corresponding to the adjusted OSDs, so as to perform the next iteration adjustment based on the PG numbers corresponding to the reallocated OSDs;
the configuration module 31 is further configured to, after a preset iteration termination condition is met, execute final configuration of OSD weights in the distributed storage system according to respective weights corresponding to the OSD adjusted by multiple iterations.
In a specific application scenario, the adjusting module 32 is specifically configured to randomly generate a random number from a preset adjusting range in each iteration, subtract the random number from the OSD weight with the largest PG number at that time, and add the OSD weight with the smallest PG number at that time to the random number.
In a specific application scenario, the apparatus further comprises: a determination module 33;
a determining module 33, configured to perform variance calculation on the initial weights respectively corresponding to the OSDs; and inquiring the corresponding preset adjustment range according to the calculated first variance value and the maximum weight and the minimum weight in the initial weight.
In a specific application scenario, the determining module 33 is further configured to perform variance calculation on each allocated initial PG quantity; acquiring the maximum iteration times corresponding to the calculated second variance values, and acquiring initial temperatures and temperature attenuation coefficients corresponding to the second variance values, wherein different second variance values have the maximum iteration times corresponding to the second variance values, and different second variance values have the initial temperatures and the temperature attenuation coefficients corresponding to the second variance values; determining the preset iteration termination condition according to the obtained maximum iteration times; or, determining the preset iteration termination condition according to the obtained initial temperature and the temperature attenuation coefficient; or determining the preset iteration termination condition according to the obtained maximum iteration times, the initial temperature and the temperature attenuation coefficient.
In a specific application scenario, the determining module 33 is specifically configured to determine that a preset iteration termination condition is met when the iteration number is equal to the obtained maximum iteration number;
the determining module 33 is further configured to calculate a latest temperature Tn after n iterations by using a formula Tn-anT 0, where T0 is the initial temperature, and a is the temperature decay coefficient; and when the latest temperature Tn is smaller than a preset temperature threshold value, determining that a preset iteration termination condition is met.
In a specific application scenario, the determining module 33 is further configured to utilize the formula Tn=anT0Calculating the latest temperature T after n iterationsnWherein, T0Is the initial temperature, a is the temperature decay coefficient; when the iteration number is equal to the obtained maximum iteration number and the latest temperature TnAnd when the temperature is smaller than the preset temperature threshold value, determining that a preset iteration termination condition is met.
In a specific application scenario, the configuration module 31 is specifically configured to, after a preset iteration termination condition is met, allocate the latest PG numbers corresponding to the OSDs according to the weights corresponding to the OSDs adjusted by multiple iterations; judging whether the PG number difference between the OSD with the most PG number and the OSD with the least PG number which are distributed newly is smaller than a preset number threshold value or not; if the PG number difference between the two is smaller than the preset number threshold, executing the final configuration of the OSD weights in the distributed storage system according to the weights corresponding to the OSD after multiple times of iterative adjustment; if the PG quantity difference between the two is larger than or equal to the preset quantity threshold, continuing to perform one or more times of iteration processing until the PG quantity difference between the two is smaller than the preset quantity threshold, terminating iteration, and executing final configuration of OSD weights in the distributed storage system according to weights corresponding to OSD after final iteration adjustment.
It should be noted that other corresponding descriptions of the functional units related to the storage allocation apparatus of the distributed system provided in this embodiment may refer to the corresponding descriptions in fig. 1 to fig. 2, and are not described herein again.
Based on the methods shown in fig. 1 and fig. 2, correspondingly, the present application further provides a storage medium, on which a computer program is stored, and when the computer program is executed by a processor, the storage allocation method of the distributed system shown in fig. 1 and fig. 2 is implemented.
Based on such understanding, the technical solution of the present application may be embodied in the form of a software product, which may be stored in a non-volatile storage medium (which may be a CD-ROM, a usb disk, a removable hard disk, etc.), and includes several instructions for enabling a computer device (which may be a personal computer, a server, or a network device, etc.) to execute the method of the embodiments of the present application.
Based on the foregoing methods shown in fig. 1 and fig. 2 and the virtual device embodiment shown in fig. 3, to achieve the foregoing object, an embodiment of the present application further provides a computer device, which may specifically be a personal computer, a server, a network device, and the like, where the entity device includes a storage medium and a processor; a storage medium for storing a computer program; a processor for executing a computer program to implement the storage allocation method of the distributed system as shown in fig. 1 and 2.
Optionally, the computer device may further include a user interface, a network interface, a camera, Radio Frequency (RF) circuitry, sensors, audio circuitry, a WI-FI module, and so forth. The user interface may include a Display screen (Display), an input unit such as a keypad (Keyboard), etc., and the optional user interface may also include a USB interface, a card reader interface, etc. The network interface may optionally include a standard wired interface, a wireless interface (e.g., a bluetooth interface, WI-FI interface), etc.
It will be understood by those skilled in the art that the computer device structure provided in the present embodiment is not limited to the physical device, and may include more or less components, or combine some components, or arrange different components.
The storage medium may further include an operating system and a network communication module. The operating system is a program that manages the hardware and software resources of the above-described physical devices, and supports the operation of the information processing program as well as other software and/or programs. The network communication module is used for realizing communication among components in the storage medium and other hardware and software in the entity device.
Through the above description of the embodiments, those skilled in the art will clearly understand that the present application can be implemented by software plus a necessary general hardware platform, and can also be implemented by hardware. By applying the technical scheme of the application, the equalization adjustment is performed on the weight of the OSD with the largest PG number and the weight of the OSD with the smallest PG number in each iteration adjustment, so as to make the PG numbers of each OSD of the distributed storage system cluster as the same as possible to the greatest extent. And then avoid some OSD space to be taken up full in advance, reduce the possibility that produces the wooden barrel effect, guarantee that whole distributed storage system cluster all can write, make full use of disk space to avoid producing the extravagant condition of disk space.
Those skilled in the art will appreciate that the figures are merely schematic representations of one preferred implementation scenario and that the blocks or flow diagrams in the figures are not necessarily required to practice the present application. Those skilled in the art will appreciate that the modules in the devices in the implementation scenario may be distributed in the devices in the implementation scenario according to the description of the implementation scenario, or may be located in one or more devices different from the present implementation scenario with corresponding changes. The modules of the implementation scenario may be combined into one module, or may be further split into a plurality of sub-modules.
The above application serial numbers are for description purposes only and do not represent the superiority or inferiority of the implementation scenarios. The above disclosure is only a few specific implementation scenarios of the present application, but the present application is not limited thereto, and any variations that can be made by those skilled in the art are intended to fall within the scope of the present application.

Claims (10)

1. A method for allocating storage in a distributed system, comprising:
configuring initial weights corresponding to OSD respectively according to the size of a disk space of OSD of object storage equipment in the distributed storage system, and distributing the quantity of initial setting groups PG corresponding to OSD respectively according to the initial weights;
according to the distributed initial PG numbers, carrying out iteration adjustment for multiple times on the initial weights corresponding to the configured OSDs, wherein the OSD weight with the largest PG number at the time is reduced in each iteration, the OSD weight with the smallest PG number at the time is increased at the same time, and the PG numbers corresponding to the OSDs are redistributed according to the weights corresponding to the regulated OSDs so as to carry out the next iteration adjustment based on the PG numbers corresponding to the redistributed OSDs;
and after the preset iteration termination condition is met, executing the final configuration of the OSD weights in the distributed storage system according to the weights corresponding to the OSD after the multiple times of iteration adjustment.
2. The method of claim 1, wherein the iteratively adjusting the initial weights corresponding to the configured OSDs for a plurality of times according to the number of the assigned initial PGs comprises:
in each iteration, a random number is randomly generated from a preset adjusting range, the random number is subtracted from the OSD weight with the largest PG number at that time, and meanwhile, the OSD weight with the smallest PG number at that time is added to the random number.
3. The method according to claim 2, wherein the process of determining the preset adjustment range specifically includes:
carrying out variance calculation on the initial weights respectively corresponding to the OSD;
and inquiring the corresponding preset adjustment range according to the calculated first variance value and the maximum weight and the minimum weight in the initial weight.
4. The method according to claim 1, wherein the determining of the preset iteration termination condition specifically includes:
calculating the variance of each allocated initial PG quantity;
acquiring the maximum iteration times corresponding to the calculated second variance values, and acquiring initial temperatures and temperature attenuation coefficients corresponding to the second variance values, wherein different second variance values have the maximum iteration times corresponding to the second variance values, and different second variance values have the initial temperatures and the temperature attenuation coefficients corresponding to the second variance values;
determining the preset iteration termination condition according to the obtained maximum iteration times; or the like, or, alternatively,
determining the preset iteration termination condition according to the obtained initial temperature and the obtained temperature attenuation coefficient; or the like, or, alternatively,
and determining the preset iteration termination condition according to the obtained maximum iteration times, the initial temperature and the temperature attenuation coefficient.
5. The method according to claim 4, wherein the determining the preset iteration termination condition according to the obtained maximum iteration number specifically includes:
when the iteration times are equal to the obtained maximum iteration times, determining that a preset iteration termination condition is met;
determining the preset iteration termination condition according to the obtained initial temperature and the obtained temperature attenuation coefficient, specifically comprising:
using the formula Tn=anT0Calculating the latest temperature T after n iterationsnWherein, T0Is the initial temperature, a is the temperature decay coefficient;
when the latest temperature TnAnd when the temperature is smaller than the preset temperature threshold value, determining that a preset iteration termination condition is met.
6. The method according to claim 4, wherein determining the preset iteration termination condition according to the obtained maximum iteration number, the initial temperature and the temperature attenuation coefficient specifically comprises:
using the formula Tn=anT0Calculating the latest temperature T after n iterationsnWherein, T0Is the initial temperature, a is the temperature decay coefficient;
when the iteration number is equal to the obtained maximum iteration number and the latest temperature TnAnd when the temperature is smaller than the preset temperature threshold value, determining that a preset iteration termination condition is met.
7. The method according to claim 1, wherein the performing the final configuration of the OSD weights in the distributed storage system according to the weights corresponding to the OSD adjusted by multiple iterations after the preset iteration termination condition is satisfied specifically includes:
after a preset iteration termination condition is met, distributing the latest PG quantity corresponding to the OSD according to the weight corresponding to the OSD after multiple times of iteration adjustment;
judging whether the PG number difference between the OSD with the most PG number and the OSD with the least PG number which are distributed newly is smaller than a preset number threshold value or not;
if the PG number difference between the two is smaller than the preset number threshold, executing the final configuration of the OSD weights in the distributed storage system according to the weights corresponding to the OSD after multiple times of iterative adjustment;
if the PG quantity difference between the two is larger than or equal to the preset quantity threshold, continuing to perform one or more times of iteration processing until the PG quantity difference between the two is smaller than the preset quantity threshold, terminating iteration, and executing final configuration of OSD weights in the distributed storage system according to weights corresponding to OSD after final iteration adjustment.
8. A storage allocation apparatus for a distributed system, comprising:
the configuration module is used for configuring initial weights corresponding to OSD respectively according to the size of a disk space of OSD of object storage equipment in the distributed storage system and distributing the quantity of PG (pre-distortion) of initial placement groups corresponding to OSD respectively according to the initial weights;
the adjusting module is used for carrying out iterative adjustment on initial weights respectively corresponding to the configured OSD for multiple times according to the distributed initial PG numbers, wherein the OSD weight with the largest PG number at the time is reduced in each iteration, the OSD weight with the smallest PG number at the time is increased at the same time, and the PG numbers respectively corresponding to the OSD are redistributed according to the respective weights corresponding to the regulated OSD so as to carry out the next iterative adjustment based on the PG numbers respectively corresponding to the redistributed OSD;
and the configuration module is further used for executing the final configuration of the OSD weights in the distributed storage system according to the respective weights of the OSD after the OSD is adjusted by multiple iterations after the preset iteration termination condition is met.
9. A non-transitory readable storage medium having stored thereon a computer program, wherein the program, when executed by a processor, implements the storage allocation method of the distributed system of any one of claims 1 to 7.
10. A computer device comprising a non-volatile readable storage medium, a processor and a computer program stored on the non-volatile readable storage medium and executable on the processor, wherein the processor implements the storage allocation method of the distributed system according to any one of claims 1 to 7 when executing the program.
CN201911055685.9A 2019-10-31 2019-10-31 Storage allocation method and device of distributed system and computer equipment Active CN111090390B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201911055685.9A CN111090390B (en) 2019-10-31 2019-10-31 Storage allocation method and device of distributed system and computer equipment
PCT/CN2020/093024 WO2021082421A1 (en) 2019-10-31 2020-05-28 Storage allocation method and apparatus for distributed system, and computer device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911055685.9A CN111090390B (en) 2019-10-31 2019-10-31 Storage allocation method and device of distributed system and computer equipment

Publications (2)

Publication Number Publication Date
CN111090390A true CN111090390A (en) 2020-05-01
CN111090390B CN111090390B (en) 2022-06-10

Family

ID=70394082

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911055685.9A Active CN111090390B (en) 2019-10-31 2019-10-31 Storage allocation method and device of distributed system and computer equipment

Country Status (2)

Country Link
CN (1) CN111090390B (en)
WO (1) WO2021082421A1 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112306692A (en) * 2020-11-13 2021-02-02 苏州浪潮智能科技有限公司 Method and device for group-in-group balancing of distributed storage system
WO2021082421A1 (en) * 2019-10-31 2021-05-06 平安科技(深圳)有限公司 Storage allocation method and apparatus for distributed system, and computer device
CN112817535A (en) * 2021-02-03 2021-05-18 柏科数据技术(深圳)股份有限公司 Method and device for distributing homing groups and distributed storage system
CN113282241A (en) * 2021-05-26 2021-08-20 上海仪电(集团)有限公司中央研究院 Ceph distributed storage-based hard disk weight optimization method and device
CN114138194A (en) * 2021-11-25 2022-03-04 苏州浪潮智能科技有限公司 Data distribution storage method, device, equipment and medium

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114253482A (en) * 2021-12-23 2022-03-29 深圳市名竹科技有限公司 Data storage method and device, computer equipment and storage medium

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120123980A1 (en) * 2010-04-28 2012-05-17 Indian Statistical Institute Optimization technique using evolutionary algorithms
US20160330281A1 (en) * 2015-05-07 2016-11-10 Dell Products L.P. Systems and methods to improve read/write performance in object storage applications
CN106991170A (en) * 2017-04-01 2017-07-28 广东浪潮大数据研究有限公司 A kind of method and apparatus of distributed document capacity equilibrium
CN107317864A (en) * 2017-06-29 2017-11-03 郑州云海信息技术有限公司 The data balancing method and device of a kind of storage device
CN108509157A (en) * 2018-04-13 2018-09-07 郑州云海信息技术有限公司 A kind of data balancing method and device applied to distributed file system
CN109343798A (en) * 2018-09-25 2019-02-15 郑州云海信息技术有限公司 To the method, apparatus and medium of the main PG equilibrium adjustment of distributed memory system
CN109343795A (en) * 2018-09-14 2019-02-15 郑州云海信息技术有限公司 A kind of balanced concocting method of distributed memory system OSD capacity
CN110018799A (en) * 2019-04-12 2019-07-16 苏州浪潮智能科技有限公司 A kind of main determining method, apparatus of storage pool PG, equipment and readable storage medium storing program for executing

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109359845B (en) * 2018-09-30 2019-06-21 南京地铁集团有限公司 Multi-target site selection method for urban rail transit level rescue station
CN111090390B (en) * 2019-10-31 2022-06-10 平安科技(深圳)有限公司 Storage allocation method and device of distributed system and computer equipment

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120123980A1 (en) * 2010-04-28 2012-05-17 Indian Statistical Institute Optimization technique using evolutionary algorithms
US20160330281A1 (en) * 2015-05-07 2016-11-10 Dell Products L.P. Systems and methods to improve read/write performance in object storage applications
CN106991170A (en) * 2017-04-01 2017-07-28 广东浪潮大数据研究有限公司 A kind of method and apparatus of distributed document capacity equilibrium
CN107317864A (en) * 2017-06-29 2017-11-03 郑州云海信息技术有限公司 The data balancing method and device of a kind of storage device
CN108509157A (en) * 2018-04-13 2018-09-07 郑州云海信息技术有限公司 A kind of data balancing method and device applied to distributed file system
CN109343795A (en) * 2018-09-14 2019-02-15 郑州云海信息技术有限公司 A kind of balanced concocting method of distributed memory system OSD capacity
CN109343798A (en) * 2018-09-25 2019-02-15 郑州云海信息技术有限公司 To the method, apparatus and medium of the main PG equilibrium adjustment of distributed memory system
CN110018799A (en) * 2019-04-12 2019-07-16 苏州浪潮智能科技有限公司 A kind of main determining method, apparatus of storage pool PG, equipment and readable storage medium storing program for executing

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021082421A1 (en) * 2019-10-31 2021-05-06 平安科技(深圳)有限公司 Storage allocation method and apparatus for distributed system, and computer device
CN112306692A (en) * 2020-11-13 2021-02-02 苏州浪潮智能科技有限公司 Method and device for group-in-group balancing of distributed storage system
CN112306692B (en) * 2020-11-13 2023-01-06 苏州浪潮智能科技有限公司 Method and device for group-in-group balancing of distributed storage system
CN112817535A (en) * 2021-02-03 2021-05-18 柏科数据技术(深圳)股份有限公司 Method and device for distributing homing groups and distributed storage system
CN112817535B (en) * 2021-02-03 2021-11-02 柏科数据技术(深圳)股份有限公司 Method and device for distributing homing groups and distributed storage system
CN113282241A (en) * 2021-05-26 2021-08-20 上海仪电(集团)有限公司中央研究院 Ceph distributed storage-based hard disk weight optimization method and device
CN113282241B (en) * 2021-05-26 2024-04-09 上海仪电(集团)有限公司中央研究院 Hard disk weight optimization method and device based on Ceph distributed storage
CN114138194A (en) * 2021-11-25 2022-03-04 苏州浪潮智能科技有限公司 Data distribution storage method, device, equipment and medium
CN114138194B (en) * 2021-11-25 2023-06-09 苏州浪潮智能科技有限公司 Data distribution storage method, device, equipment and medium

Also Published As

Publication number Publication date
CN111090390B (en) 2022-06-10
WO2021082421A1 (en) 2021-05-06

Similar Documents

Publication Publication Date Title
CN111090390B (en) Storage allocation method and device of distributed system and computer equipment
US6742100B1 (en) Method and system for managing memory pools in a partitioned computer system
US9183024B2 (en) Computer system with a cluster load balancer for graphics processing and graphics processing method thereof
US10013362B2 (en) Deterministic multifactor cache replacement
US7730185B2 (en) Method, apparatus and computer program product for sharing resources
US6968441B1 (en) Method and system for managing interdependent resources of a computer system
KR20180022556A (en) Method and apparatus for power and user distribution to sub-bands in noma systems
CN104407925A (en) Dynamic resource distribution method
US10346039B2 (en) Memory system
TW201447763A (en) System and method for controlling virtual machine
US6742099B1 (en) Method and system for automatically distributing resources in a partitioned computer system
CN110012001B (en) Resource allocation method and device
JP2018036779A (en) Electronic device, method, and information processing system
CN110493317B (en) Method for processing cloud platform resource fragments and related equipment
US20170104683A1 (en) Dynamically segmenting traffic for a/b testing in a distributed computing environment
US9563532B1 (en) Allocation of tasks in large scale computing systems
CN108200185B (en) Method and device for realizing load balance
CN110764876A (en) Cloud host creation method, device, equipment and readable storage medium
JP7214287B1 (en) Resource allocation determination method, device, computing device and computer program
US20120311155A1 (en) Method and apparatus for assigning and releasing licenses
CN112994911A (en) Calculation unloading method and device and computer readable storage medium
US10609132B2 (en) Hash data structure biasing
US11429420B2 (en) Method for controlling performance in virtualized environment and information processing device for the same
US20210235289A1 (en) Cellular telecommunications network
CN109240805B (en) Virtual machine allocation method and device

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40020234

Country of ref document: HK

SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant