WO2016006223A1 - 配置装置、配置方法及び配置プログラムを記憶する記録媒体 - Google Patents
配置装置、配置方法及び配置プログラムを記憶する記録媒体 Download PDFInfo
- Publication number
- WO2016006223A1 WO2016006223A1 PCT/JP2015/003383 JP2015003383W WO2016006223A1 WO 2016006223 A1 WO2016006223 A1 WO 2016006223A1 JP 2015003383 W JP2015003383 W JP 2015003383W WO 2016006223 A1 WO2016006223 A1 WO 2016006223A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- placement
- destination
- placement destination
- arrangement
- destinations
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 40
- 230000008859 change Effects 0.000 claims abstract description 36
- 230000004044 response Effects 0.000 claims abstract description 36
- 238000000605 extraction Methods 0.000 description 47
- 238000001514 detection method Methods 0.000 description 23
- 238000010586 diagram Methods 0.000 description 14
- 230000008569 process Effects 0.000 description 12
- 230000006870 function Effects 0.000 description 9
- 239000000284 extract Substances 0.000 description 7
- 230000000694 effects Effects 0.000 description 6
- 230000004048 modification Effects 0.000 description 6
- 238000012986 modification Methods 0.000 description 6
- 238000009795 derivation Methods 0.000 description 5
- 238000012217 deletion Methods 0.000 description 3
- 230000037430 deletion Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
- G06F16/1824—Distributed file systems implemented using Network-attached Storage [NAS] architecture
- G06F16/1827—Management specifically adapted to NAS
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B65—CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
- B65G—TRANSPORT OR STORAGE DEVICES, e.g. CONVEYORS FOR LOADING OR TIPPING, SHOP CONVEYOR SYSTEMS OR PNEUMATIC TUBE CONVEYORS
- B65G1/00—Storing articles, individually or in orderly arrangement, in warehouses or magazines
- B65G1/02—Storage devices
- B65G1/04—Storage devices mechanical
- B65G1/137—Storage devices mechanical with arrangements or automatic control means for selecting which articles are to be removed
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/418—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
- G05B19/4189—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by the transport system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2457—Query processing with adaptation to user needs
- G06F16/24578—Query processing with adaptation to user needs using ranking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/0643—Management of files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1041—Resource optimization
Definitions
- the present invention relates to a technique for determining an arrangement destination of an object.
- the placement destination where the object is placed is, for example, a storage device, a storage medium, a location, or a physical location. For example, by storing the relationship (association) between an object and a placement destination where the object is placed, the placement destination where the object is placed can be specified. If the placement destination where an object is placed cannot be identified at high speed, it is difficult to access the object at high speed.
- the storage capacity necessary for storing the association between the object and the arrangement destination increases as the number of objects increases.
- Patent Document 1 An example of an apparatus in which such a technique is used is disclosed in Patent Document 1, for example.
- the apparatus of Patent Document 1 generates a pseudo-random number using an object identifier as a seed.
- the pseudo-random number is uniquely determined for the seed.
- the generation probability of the pseudo random number is uniform in the range of the pseudo random number.
- the device of Patent Document 1 determines an arrangement destination related to a value range including a generated pseudo-random number as an arrangement destination of an object based on a table in which a relationship between a value range and an arrangement destination is recorded.
- the device of Patent Literature 1 repeats generation of pseudo-random numbers until a pseudo-random number included in a range of values related to the arrangement destination is generated.
- the placement destination is not determined unless a pseudo-random number that falls within the range of values associated with the placement destination is generated. In that case, until the generated pseudo random number falls within the range of values associated with the placement destination, the apparatus of Patent Document 1 updates the seed according to a predetermined method and the pseudo random number using the updated seed, for example. It repeats with occurrence. Therefore, the time required for the apparatus of Patent Document 1 to determine the placement destination is not determined. There is a possibility that the time for the device of Patent Document 1 to determine the placement destination may be extended by chance. Furthermore, the apparatus disclosed in Patent Document 1 rearranges objects when the placement destination, which is determined according to the rules, is changed due to the addition of the placement destination.
- One of the objects of the present invention is to provide an arrangement device or the like that can reduce the processing cost related to the arrangement of an object when the arrangement destination where the object is arranged changes according to the rule and is changed by adding the arrangement destination. There is.
- the placement device is assigned a setting value in response to receiving object information given to an object, and is assigned among one or more placement destinations where the object can be placed.
- the placement destination determined based on the free capacity indicating the amount of the object that can be newly placed in each placement destination according to the addition of the placement destination is other than the placement destination added last.
- a set value is assigned in response to receiving object information given to an object, and the setting value is given among one or more arrangement destinations where the object can be arranged.
- the newly added placement destination whose set value is larger than the characteristic value uniquely derived based on the object information is determined as the placement destination where the object is placed, and the placement destination is The placement destination determined based on the free capacity indicating the amount of the object that can be newly placed in each placement destination according to the addition is the placement other than the placement destination added last.
- the set value given to at least one of the placement destinations is changed so as not to change first.
- a setting value is assigned to a computer in response to receiving object information assigned to an object, and the arrangement program can be arranged among one or more arrangement destinations where the object can be arranged.
- the placement destination that is determined based on the free space that represents the amount of the object that can be newly placed in each of the placement destinations according to the addition of the placement destination is the last added Changing means for changing the setting value assigned to at least one of the placement destinations so as not to change to the placement destination other than the placement destination; Operate Te.
- the present invention is also realized by a recording medium that stores the above arrangement program.
- the present invention has an effect that it is possible to reduce the processing cost related to the arrangement of the object when the arrangement destination where the object is arranged, which is determined according to the rules, is changed by adding the arrangement destination.
- FIG. 1 is a block diagram showing a configuration of an arrangement system 10 according to the first embodiment of the present invention.
- FIG. 2 is a flowchart illustrating an example of the operation of the arrangement apparatus 100 according to the first embodiment when an arrangement destination is added.
- FIG. 3 is a flowchart illustrating an example of the operation of the set value derivation process of the arrangement device 100 according to the first embodiment.
- FIG. 4 is a diagram schematically illustrating an example of the order stored in the placement destination information storage unit 103 according to the first embodiment.
- FIG. 5 is a flowchart illustrating an example of an operation of determining an arrangement destination where an object is arranged in the arrangement apparatus 100 according to the first embodiment.
- FIG. 6 is a diagram schematically illustrating examples of parameters and characteristic values.
- FIG. 1 is a block diagram showing a configuration of an arrangement system 10 according to the first embodiment of the present invention.
- FIG. 2 is a flowchart illustrating an example of the operation of the arrangement apparatus 100 according to the first embodiment when an arrangement
- FIG. 7 is a diagram schematically illustrating a result of determination by the determination unit 101 according to the first embodiment.
- FIG. 8 is a flowchart illustrating an example of an operation of the placement apparatus 100 according to the first embodiment for estimating a placement destination candidate in which an object is placed.
- FIG. 9 is a block diagram illustrating an example of a configuration of an arrangement system 10A according to a modification of the first embodiment.
- FIG. 10 is a diagram illustrating an example of the configuration of the arrangement device 100B according to the second embodiment of this invention.
- FIG. 11 is a diagram illustrating an example of a hardware configuration of a computer 1000 that can realize an arrangement apparatus and an arrangement execution apparatus according to each embodiment of the present invention.
- FIG. 1 is a block diagram showing a configuration of an arrangement system 10 according to the present embodiment.
- an arrangement system 10 includes an arrangement apparatus 100 and one or more servers (server 301 to server 30N).
- the servers 301 to 30N are represented as a server array 300 in FIG.
- the placement apparatus 100 and each server are connected to be communicable with each other.
- each server is also referred to as an arrangement destination. That is, the servers 301 to 30N are also expressed as placement destinations 301 to 30N, respectively.
- the placement device 100 is further connected to the instruction device 400 so as to be communicable.
- Each placement destination (that is, each of the placement destination 301 to 30N) includes, for example, a storage area in which an object can be placed.
- Each placement destination stores an object in the storage area in response to a placement request described later.
- Each placement destination takes out an object stored in the storage area in response to a take-out request described later. Then, each placement destination sends the extracted object to the transmission source of the extraction request.
- the object is, for example, a group of data (data set).
- Object information is given to the object.
- the object information is, for example, an object identifier.
- the object information may include an attribute representing, for example, a property of the object.
- the object information may include an object identifier.
- the object information may be information unique to the object.
- the same object information is given to the objects treated as the same object even if the contents of the object are updated. Further, different object information is given to objects handled as different objects. Further, when an object that is treated as the same object is arranged multiple times in one arrangement destination, the object arranged in the arrangement destination is replaced with the object arranged last.
- the number of placement destinations can be increased, for example, by an operation of an administrator of the placement system 10.
- the increase of the placement destination is performed by adding the placement destinations one by one, for example. Further, the increase of the placement destination is also performed, for example, by increasing the storage area of the placement destination added last. The storage area of the placement destination other than the placement destination added last is not increased.
- “adding placement destinations” represents at least one of increasing the number of placement destinations and increasing the free capacity of the placement destination added last.
- the free space at the placement destination is a value representing the amount of objects that can be newly placed at the placement destination.
- the amount of objects may be represented by the number of objects, for example, when the sizes of the objects are the same.
- the amount of object may be represented by the size of the object.
- the instruction device 400 transmits to the placement device 100 a placement request that is a request to place the object at any of the placement destinations.
- the arrangement request is, for example, a predetermined signal.
- the instruction device 400 may transmit, to the placement device 100, an object that requests placement according to the placement request in addition to the placement request.
- the instruction apparatus 400 may transmit an object to the arrangement apparatus 100 as an arrangement request. That is, the instruction device 400 may request the placement of the object by transmitting the object to the placement device 100.
- the instruction device 400 further transmits to the placement device 100 a take-out request that is a request to take out an object placed at any of the placement destinations.
- the extraction request is, for example, a predetermined signal.
- the instruction device 400 may transmit, to the placement device 100, the identifier and object information of the object requested to be taken out by the take-out request in addition to the take-out request.
- the instruction device 400 may transmit the identifier and object information of the object requesting the removal to the placement device 100 as the removal request. That is, the instruction device 400 may request extraction of the object by transmitting the object identifier and the object information.
- the instruction device 400 may request to retrieve the object by transmitting the object identifier.
- Arrangement apparatus 100 includes a determination unit 101, a change unit 102, an arrangement destination information storage unit 103, an estimation unit 104, a request processing unit 105, an arrangement unit 106, a detection unit 107, and an extraction unit 108.
- the arrangement determination unit 110 included in the arrangement apparatus 100 includes a determination unit 101, a change unit 102, an arrangement destination information storage unit 103, and an estimation unit 104.
- the request processing unit 105 receives the arrangement request and the extraction request described above from the instruction device 400.
- the request processing unit 105 transmits a placement destination determination instruction, which is an instruction for determining a placement destination where the received object is placed, and the object information of the received object to the placement determination unit 110.
- the determination unit 101 included in the arrangement determination unit 110 receives the transmitted arrangement destination determination instruction and the object information of the object.
- the determination unit 101 uniquely determines an arrangement destination for the received object information and the arrangement destination when the arrangement destination determination instruction is received. The determination unit 101 will be described in detail later.
- the placement unit 106 places the object whose placement is instructed by the placement instruction at the placement destination determined by the determination unit 101.
- the placement unit 106 may receive the placement instruction, the placement destination identifier determined by the determination unit 101, and the object to be placed in the placement destination from the determination unit 101.
- the placement unit 106 may transmit a response indicating that the object placement has been successful to the instruction device 400 via the request processing unit 105.
- the request processing unit 105 transmits the placement destination estimation instruction and the received object information to the placement determination unit 110.
- the placement destination estimation instruction is an instruction for estimating a placement destination candidate in which an object to which the received object information is assigned is placed.
- the estimation unit 104 included in the arrangement determination unit 110 receives the transmitted arrangement destination estimation instruction and object information. Based on the received object information and the order in which the placement destinations are added, the estimation unit 104 is a placement destination candidate that is a placement destination in which the object to which the object information is assigned may be placed. Is estimated.
- the estimation unit 104 may further specify the placement destination where the received object information is placed among the placement destinations included in the placement destination candidates.
- the estimation unit 104 may further specify an arrangement destination with the latest addition order among the arrangement destinations where the objects to which the received object information is assigned are arranged.
- the estimation unit 104 will be described in detail later.
- the estimation unit 104 may transmit the identified placement destination identifier to the extraction unit 108 via the request processing unit 105, for example.
- the estimation unit 104 may transmit the specified placement destination identifier, object identifier, and extraction request to the extraction unit 108.
- the estimation unit 104 may transmit a data value representing the estimated placement destination candidate to the extraction unit 108 via the request processing unit 105, for example.
- the estimation unit 104 may transmit the data value indicating the estimated placement destination candidate, the object identifier, and the extraction request to the extraction unit 108.
- the fetching unit 108 may request the placement destination to take out the object.
- the extraction unit 108 may request the extraction of the object from each of the arrangement destinations estimated as the arrangement destination candidates by the estimation unit 104.
- the extraction unit 108 may select the placement destinations in descending order with respect to the addition order in order from the placement destination with the latest addition order among the placement destinations estimated as the placement destination candidates. Then, the extraction unit 108 may transmit an identifier of the object requested to be extracted and an object extraction request specified by the identifier to the selected placement destination.
- the placement destination that has received the object identifier and the retrieval request may determine whether or not the object specified by the received identifier is placed at the placement destination.
- the placement destination where the object specified by the received identifier is placed may be sent to the extraction unit 108.
- the placement destination where the object specified by the received identifier is not placed may transmit a response indicating that the object is not placed to the extraction unit 108.
- the extraction unit 108 may send the object to the instruction apparatus 400 via the request processing unit 105, for example.
- the extraction unit 108 may transmit an object identifier and a request for confirming the existence of the object to each of the placement destination candidates.
- the placement destination may perform processing for confirming whether or not the object specified by the received identifier is placed.
- the placement destination may transmit a response indicating whether or not the object is placed to the extraction unit 108.
- the extraction unit 108 may transmit the object identifier and the extraction request to the arrangement destination that has transmitted the response indicating that the object is arranged.
- the instruction device 400 may transmit a deletion request for deleting an object from any placement destination to the placement device 100.
- the instruction device 400 transmits an identifier of the object to be deleted, object information, and a deletion request to the request processing unit 105.
- the request processing unit 105 and the extraction unit 108 operate in the same manner as when an extraction request is received.
- the request transmitted to the placement destination is a deletion request.
- the object specified by the identifier is deleted depending on the arrangement destination where the object is arranged.
- the detection unit 107 identifies a server that operates as an arrangement destination. Then, the detection unit 107 acquires the free capacity of the placement destination from each of the identified placement destinations. The detection unit 107 further detects the addition of the placement destination. That is, the detection unit 107 detects an increase in the number of placement destinations and an increase in the storage area of the placement destination added last. For example, the detection unit 107 may transmit the identifier of the placement destination detected to be newly added to the changing unit 102 included in the placement determination unit 110. For example, the detecting unit 107 stores the identifier of the arrangement destination detected to be newly added in the arrangement destination information storage unit 103 so that the order in which each arrangement destination is added can be specified. Also good.
- the detection unit 107 transmits the acquired information indicating the free capacity of each placement destination to the change unit 102.
- the detection unit 107 may store the acquired information indicating the free capacity of each placement destination in the placement destination information storage unit 103.
- the information indicating the free space is also simply referred to as free space. For example, “acquire free space” indicates that information indicating free space is acquired.
- the determination unit 101 the change unit 102, the arrangement destination information storage unit 103, and the estimation unit 104 included in the arrangement determination unit 110 will be described.
- the determination unit 101 determines an arrangement destination where the object is arranged among one or more arrangement destinations where the object can be arranged. For example, the determining unit 101 arranges an object on the basis of the combination of one or more arrangement destinations described above and the object information given to the object according to the free space of each arrangement destination.
- An arrangement destination that is determined according to a rule for uniquely determining the ID is specified.
- the rule is, for example, a procedure of processing performed using an object that links the object information to one of the one or more placement destinations described above.
- the determination unit 101 determines the determined arrangement destination as an arrangement destination where the object is arranged.
- the determination unit 101 first calculates a characteristic value that is a value uniquely determined based on the object information assigned to the object and the placement destination for each placement destination.
- the determination unit 101 associates a characteristic value uniquely determined based on the object information given to the object and the arrangement destination with the arrangement destination.
- the characteristic value derived by the determination unit 101 may be a value that is uniformly or almost uniformly distributed between the lower limit value and the upper limit value of the characteristic value for various possible object information.
- the characteristic value is, for example, a hash of data obtained by concatenating object information and a server number.
- the determination unit 101 may derive a hash of data obtained by concatenating the object information and the server number using a predetermined hash function that generates a hash.
- the server number is a unique number assigned to the placement destination.
- the server number may represent, for example, the order in which the placement destination is added to the placement system 10.
- the server number may be an identifier of the arrangement destination. In the following description, the server number is also expressed as an arrangement destination number.
- the characteristic value may be, for example, a pseudo-random value derived by using object information as a seed value.
- the determination unit 101 may initialize a predetermined pseudorandom number generation function that generates pseudorandom numbers using the object information as a seed value.
- the pseudo random number generation function may be a function that generates the same pseudo random number sequence when initialized using the same seed.
- the determination part 101 should just generate
- the determination unit 101 may generate, for example, the same number of pseudorandom numbers as the number of placement destinations. Then, the determination unit 101 may associate the generated pseudo random numbers with the arrangement destination as the characteristic value in the order in which the arrangement destination is added, for example.
- the order of addition may be determined in advance for the arrangement destination existing in the initial state.
- the initial state when there are a plurality of arrangement destinations, it is only necessary that different addition orders are determined in advance for each of the plurality of arrangement destinations.
- each placement destination is given a parameter that is a value derived by the changing unit 102 based on the free space of the placement destination.
- the parameters of each placement destination are stored in the placement destination information storage unit 103, for example.
- the parameter is also expressed as “set value”. The parameter derivation by the changing unit 102 will be described in detail later.
- the deciding unit 101 arranges the arrangement destination added last among the arrangement destinations whose characteristic values derived based on the object information are smaller than the assigned parameters, and the object to which the object information is assigned is arranged. Decide where to place.
- the determination unit 101 transmits the determined placement destination identifier to the placement unit 106. For example, according to the rules described above, the object is placed in the last added location where the assigned setting value is greater than the characteristic value uniquely derived based on the object information attached to the object. Is to determine the placement destination.
- the rule is specifically determined by the set value given to each placement destination. As will be described in detail later, the change of the rule by the changing unit 102 is performed by changing the set value according to the free space at the placement destination.
- the changing unit 102 changes the rule for determining the placement destination, for example, in accordance with the addition of the placement destination.
- the changing unit 102 may change the rule for determining the placement destination in response to the addition of the placement destination being detected by the detection unit 107.
- the changing unit 102 may change the rule for determining the placement destination every time any object is placed.
- the changing unit 102 may change the rule for determining the placement destination every time any object is deleted from the placement destination.
- the changing unit 102 changes the rule so that the arrangement destination where an object is arranged, which is determined according to the rule, does not change to an arrangement destination other than the arrangement destination added last due to the change of the rule. .
- the change of the rule is, for example, a change of a setting value given to at least one of the placement destinations.
- the changing unit 102 When the placement system 10 starts operating, the changing unit 102 first receives, from the detection unit 107, for example, the free capacity of each placement destination existing at the time when the placement system 10 starts operating. The changing unit 102 calculates a parameter to be assigned to each placement destination based on the free space that represents the amount of objects that can be newly placed at each placement destination. Specifically, the changing unit 102 sequentially selects one arrangement destination from the arrangement destination. The changing unit 102 sets the parameter based on the selected free space of the placement destination and the sum of the free space of the selected placement destination and the free space of the placement destination added before the selected placement destination. calculate.
- the changing unit 102 calculates the parameter such that the lower limit value of the parameter is the same as the lower limit value of the characteristic value and the upper limit value of the characteristic value is less than the upper limit value of the parameter.
- the upper limit value of the parameter may be, for example, the smallest value that can be handled by the changing unit 102 among the values larger than the upper limit value of the characteristic value.
- the changing unit 102 assigns the calculated parameter to the selected placement destination.
- the changing unit 102 may store the calculated value in the placement destination information storage unit 103 as a parameter associated with the selected placement destination.
- the changing unit 102 may further store the parameter in the placement destination information storage unit 103 as the maximum value of the parameter associated with the selected placement destination.
- the changing unit 102 continues to select the placement destination and calculate the parameters until parameters assigned to all placement destinations are calculated.
- the value of the parameter only needs to be larger as the free space at the selected placement destination is larger. Furthermore, the value of the parameter may be a smaller value as the sum of the free space at the selected placement destination and the free space at the placement destination added before the selected placement destination is larger. If the range of values that can be taken by the characteristic value is 0 or more and less than 1, the parameter is added before the selected placement destination free space and the selected placement destination free space. Any value divided by the sum of the free space at the placement destination may be used. In the following description, the value obtained by dividing the free space of the selected placement destination by the sum of the free space of the selected placement destination and the free space of the placement destination added before the selected placement destination is Indicated as a parameter.
- the changing unit 102 may calculate a value obtained by multiplying the normal parameter by the difference between the upper limit value and the lower limit value.
- the changing unit 102 may calculate a value obtained by adding a lower limit value to the calculated value as a parameter.
- the changing unit 102 calculates the parameters of each placement destination in the same manner when a predetermined event occurs.
- the event is, for example, addition of an arrangement destination.
- the event may be that an object is placed.
- the event may be that an object is deleted.
- the event may be another event.
- the event may be a combination of a plurality of events.
- the changing unit 102 may similarly calculate the parameters of each placement destination when any of a plurality of predetermined events occurs.
- the changing unit 102 updates the parameters of each placement destination and the maximum value of the parameters stored in the placement destination information storage unit 103.
- the change unit 102 stores, for each placement destination, parameters related to the placement destination stored in the placement destination information storage unit 103, for example, according to the placement destination parameters calculated according to the occurrence of the event. replace. Furthermore, for each placement destination, the change unit 102 replaces the maximum parameter value with the calculated parameter when the calculated placement destination parameter is larger than the maximum parameter value associated with the placement destination.
- the placement destination information storage unit 103 stores parameters for each placement destination.
- the placement destination information storage unit 103 stores information that can specify the order of addition of each placement destination.
- the placement destination information storage unit 103 may store the free capacity of each placement destination.
- the placement destination information storage unit 103 further stores the maximum parameter value for each placement destination.
- the estimation unit 104 selects placement destination candidates in which the object to which the object information is assigned may be stored, for example, as follows: ,presume.
- the estimation unit 104 first calculates a characteristic value based on the received object information according to the same method as the determination unit 101. That is, the characteristic value calculated by the estimation unit 104 for the combination of the object information and the arrangement destination is the same as the characteristic value calculated by the determination unit 101 for the combination of the same object information and the arrangement destination.
- the determination unit 101 calculates, for example, a hash of data obtained by concatenating object information and a server number as a characteristic value. In this case, for example, for each of the placement destinations, the estimation unit 104 calculates, as the characteristic value, a hash of data obtained by connecting the received object information and the server number of the placement destination.
- the determination unit 101 may assign, for example, pseudo random numbers generated by a pseudo random number generation function initialized using object information as a seed to a placement destination as a characteristic value in the added order. Good.
- the estimation unit 104 assigns the pseudo-random numbers generated using the same pseudo-random number generation function initialized using the object information as a seed to each placement destination in the same added order. Assign as a value.
- the characteristic value is a value uniquely determined based on the object information and the arrangement destination. That is, the determination unit 101 and the estimation unit 104 always calculate the same characteristic value if the combination of the object information and the arrangement destination is the same. As described above, the determination unit 101 determines the arrangement destination that is added later and whose associated parameter is larger than the characteristic value as the arrangement in which the object is arranged. Therefore, when the characteristic value calculated based on the object assigned to the object and the placement destination is smaller than the maximum value of the parameter associated with the placement destination, the object is placed in the placement destination. There is a possibility.
- the estimation unit 104 sets all of the placement destinations whose calculated characteristic values are smaller than the maximum parameter values stored in the placement destination information storage unit 103 as placement destination candidates.
- the estimation unit 104 transmits the placement destination candidates to the extraction unit 108.
- the estimation unit 104 may transmit the identifier of each placement destination included in the placement destination candidates.
- FIG. 2 is a flowchart showing an example of the operation of the arrangement apparatus 100 according to this embodiment when an arrangement destination is added.
- the placement apparatus 100 may perform the operation shown in FIG. 2 periodically, for example.
- the detection unit 107 detects whether an arrangement destination has been added (step S101).
- the detection unit 107 only has to detect an operating placement destination. And the detection part 107 should just detect that the arrangement
- the detection unit 107 acquires the identifier of the added placement destination, for example, from the added placement destination.
- the detection unit 107 further acquires information indicating the free space from each placement destination.
- each placement destination may be designed to transmit information indicating the identifier and the free capacity in response to a request from the detection unit 107 to transmit information indicating the identifier and the free capacity.
- the detection unit 107 stores the identifiers of the added placement destinations in the placement destination information storage unit 103 via the changing unit 102 in a format that can identify the order of addition.
- the detection unit 107 may store the free space of each placement destination in the placement destination information storage unit 103 via the changing unit 102.
- the detection unit 107 may detect that the placement destination has been added when the amount of objects that can be placed at the last added placement destination has increased. In this case, the detection unit 107 does not have to store the added placement destination identifier in the placement destination information storage unit 103.
- the number of placement destinations increases by one. Further, the storage area of the placement destination added last can be increased. However, the number of placement destinations does not decrease. Further, the storage area of the placement destination other than the placement destination added last is not increased.
- the administrator who added the placement destination may notify the detection unit 107 of the identifier of the added placement destination by operating a terminal device (not shown), for example.
- the placement device 100 ends the operation shown in FIG.
- the changing unit 102 selects one placement destination.
- the changing unit 102 may select, for example, the latest added placement destination among the unselected placement destinations (step S104).
- the changing unit 102 derives a parameter by performing a set value derivation process for the selected placement destination (step S105). The setting value deriving process will be described in detail below.
- an object that is already placed in the placement destination is determined by the determination unit 101 as described later, even if the placement destination in which the object is placed is changed. There is no need to move to a new location.
- FIG. 3 is a flowchart showing an example of the operation of the set value derivation process of the placement apparatus 100 of the present embodiment.
- the changing unit 102 first calculates the sum of the free space at the selected placement destination and the free space at the placement destination added before the selected placement destination. That is, the changing unit 102 calculates the sum of the free capacities of all the placement destinations excluding the placement destination added after the selected placement destination (step S201). For example, as described above, the changing unit 102 derives a setting value, that is, a parameter, of the selected placement destination based on the free capacity of the selected placement destination and the sum of the free capacity calculated in Step S201 (Step S201). S202).
- a setting value that is, a parameter
- the changing unit 102 stores the parameter derived in step S202 in the placement destination information storage unit 103 as the selected placement destination parameter.
- the changing unit 102 may store, for example, the combination of the parameter derived in step S202 and the selected placement destination identifier in the placement destination information storage unit 103.
- the changing unit 102 compares the parameter derived in step S ⁇ b> 202 with the maximum value of the selected placement destination parameter stored in the placement destination information storage unit 103. When the derived parameter is not equal to the maximum value of the selected placement destination parameter (No in step S203), the placement apparatus 100 ends the operation illustrated in FIG.
- the changing unit 102 selects the selected placement destination parameter stored in the placement destination information storage unit 103. Is updated (step S204). That is, the changing unit 102 may store the parameter derived in step S202 in the placement destination information storage unit 103 as the maximum value of the selected placement destination parameter.
- FIG. 4 is a diagram schematically illustrating an example of the order stored in the placement destination information storage unit 103 of the present embodiment.
- the identifier, the order, the parameter, and the maximum parameter value are stored in the placement destination information storage unit 103 in association with each other for each placement destination.
- the parameter is included between 0 and 1.
- the parameter of the placement destination that is the first in the order is the maximum among the parameters of the placement destination.
- the changing unit 102 may calculate parameters according to the following procedure.
- the changing unit 102 may calculate the parameter according to a procedure other than the following procedure.
- ⁇ is an operator representing multiplication
- ⁇ is an operator representing division
- Step 1 For each placement destination, a value A j is calculated by dividing the free space by the largest free space among all placement destinations.
- a j represents a value obtained by dividing the free capacity of the j-th placement destination by the maximum value of the free capacity.
- Step 2 Calculate the sum of A j of all placement destinations. The reciprocal B of the calculated sum is calculated.
- Step 3 Assign 1 to variable C.
- Step 4 Select the placement destination j added last.
- Step 5 A j ⁇ B ⁇ C is calculated as the parameter P j of the selected placement destination j.
- Step 6 Calculate C ⁇ (1 ⁇ P j ). Substitute the calculated value into C.
- Step 7 If the order of the selected placement destination is the first order, the procedure is terminated.
- Step 8 Select the placement destination added one before the selected placement destination (ie, decrease j by 1), and return to Step 5.
- P j calculated in step 5 is A j ⁇ B ⁇ C ⁇ (ED) + D.
- the changing unit 102 may calculate the parameters of each placement destination when the placement destination is added.
- the changing unit 102 may calculate parameters for each placement destination in accordance with the placement of the object at any placement destination.
- the changing unit 102 may calculate the parameters of each placement destination before the determining unit 101 determines the placement destination where the object is placed.
- the changing unit 102 may calculate the parameters of each placement destination before the estimation unit 104 estimates the placement destination candidates where the objects are placed. Further, when calculating a parameter, the changing unit 102 does not have to calculate the parameter of the placement destination if any of the placement destination parameters does not change.
- FIG. 5 is a flowchart showing an example of an operation of determining an arrangement destination where an object is arranged in the arrangement apparatus 100 according to the present embodiment.
- the placement apparatus 100 determines a placement destination parameter before determining a placement destination where an object is placed.
- the request processing unit 105 receives an object and an arrangement instruction from the instruction device 400 (step S301). For example, object information such as an attribute or an identifier of the object is given to the received object.
- the instruction device 400 may transmit object information in addition to the object.
- the request processing unit 105 may receive object information in addition to the object.
- the request processing unit 105 transmits a placement destination determination instruction and object information to the determination unit 101.
- the determination unit 101 receives the placement destination determination instruction, no placement destination has been selected yet.
- the changing unit 102 determines the placement destination parameter before the determining unit 101 determines the placement destination where the object is placed.
- the changing unit 102 selects the placement destination added last among the placement destinations that have not been selected (step S302).
- the changing unit 102 performs a setting value derivation process for deriving a setting value (that is, a parameter) for the selected placement destination.
- Step S304 The set value deriving process in step S304 is the same as the set value deriving process in step S105 shown in FIG.
- the changing unit 102 may perform the operation shown in FIG. 3 described above in the setting value deriving process in step S304.
- the determination unit 101 derives a characteristic value based on the received object information attached to the object (step S305). As described above, the characteristic value of the present embodiment is uniquely determined for the combination of the object information and the arrangement destination.
- the determining unit 101 compares the parameter of the selected placement destination derived in step S304 with the characteristic value derived in step S305. When the derived characteristic value is smaller than the parameter of the selected placement destination (Yes in step S306), the determination unit 101 determines the selected placement destination as the placement destination where the object is placed (step S307). If the derived characteristic value is not smaller than the selected placement destination parameter (No in step S306), placement device 100 repeats the operations in and after step S302.
- the determination unit 101 determines the selected placement destination as the placement destination where the object is placed (step S307).
- the parameter derived for the placement destination having the first order is larger than the upper limit value that the characteristic value can take. In that case, the derived characteristic value is smaller than the parameter of the selected placement destination. Accordingly, the selected placement destination is determined as the placement destination where the object is placed. Therefore, when the selected placement destination is the first placement destination in the order, the determination unit 101 can omit the operations from step S304 to step S306 as in the operation illustrated in FIG.
- the placement unit 106 places the received object at the determined placement destination (step S308).
- FIG. 6 is a diagram schematically showing examples of parameters and characteristic values.
- servers 0 to 5 are identifiers of arrangement destinations.
- the horizontal bar indicated by “P” represents the size of the parameter.
- a black circle indicated by “R” represents the size of the characteristic value.
- FIG. 6 schematically shows the parameters and characteristic values of the placement destinations from the server 0 to the server 5.
- the parameters and characteristic values of the respective placement destinations are distributed between the upper limit value and the lower limit value represented by a broken line.
- FIG. 7 is a diagram schematically showing the result of determination by the determination unit 101.
- Identity in FIG. 7 represents the identifier of the arrangement destination.
- Server 0 to server 5 are the same as server 0 to server 5 shown in FIG.
- Order represents the order in which the placement destination is added to the placement system 10. The order indicates that the placement destination to which the order is assigned is added later as the value increases. The server 5 is the placement destination added most recently.
- Value comparison indicates whether the parameter P is greater than the characteristic value R.
- “Value comparison” shown in FIG. 7 represents the relationship between the parameters and characteristic values shown in FIG.
- a circle of “object placement destination” represents a placement destination determined by the determination unit 101 as a placement destination where the object is placed.
- the server 4 is the last added destination among the destinations whose characteristic values are equal to or less than the parameters. Therefore, the determination unit 101 determines the server 4 as an arrangement destination where the object is arranged as shown in FIG.
- FIG. 8 is a flowchart showing an example of an operation of estimating an arrangement destination candidate in which an object is arranged in the arrangement apparatus 100 of the present embodiment. For example, when the placement apparatus 100 takes out an object, the placement apparatus 100 performs an operation of estimating a placement destination candidate where the taken-out object is placed, as shown in FIG.
- the request processing unit 105 receives a retrieval request and object information from the instruction device 400 (step S401). Upon receiving the extraction request and the object information, the request processing unit 105 transmits an arrangement destination estimation instruction and object information to the estimation unit 104. When the estimation unit 104 receives the placement destination estimation instruction, no placement destination has been selected yet.
- the estimation unit 104 selects the placement destination added last among the unselected placement destinations (Step S403).
- the estimation unit 104 reads the maximum value of the selected placement destination parameter from the placement destination information storage unit 103 (step S404).
- the estimation unit 104 derives a characteristic value based on the received object information (step S405). As described above, in this embodiment, the characteristic value is uniquely determined for the combination of the object information and the arrangement destination. Further, the estimation unit 104 derives a characteristic value by the same method as the determination unit 101.
- the received object information in addition to the placement destination estimation instruction is object information given to the object placed at the placement destination determined by the determination unit 101.
- the characteristic value that the estimation unit 104 derives for the combination of the received object information and the selected placement destination is calculated for the same combination when the determination unit 101 determines the placement destination given to the object information. This is the same as the characteristic value derived from
- the estimation unit 104 compares the maximum value of the selected placement destination parameter with the characteristic value derived in step S405 (step S406).
- the maximum value of the selected placement destination parameter is not larger than the derived characteristic value (No in step S406)
- placement device 100 repeats the operations in and after step S402.
- the maximum value of the parameter of the selected placement destination is larger than the derived characteristic value (Yes in step S406), there is a possibility that the determination unit 101 has determined the selected placement destination as the placement destination of the target object. is there.
- the target object is an object to which the received object information is assigned.
- the estimation unit 104 adds the selected placement destination to the placement destination candidate where the target object is placed (Ste S407). After step S407, the placement apparatus 100 repeats the operations after step S402.
- the estimation unit 104 ends the placement destination candidate estimation.
- the estimation unit 104 identifies the placement destination added last among the placement destination candidates in which the target object is placed (step S408).
- the estimation unit 104 may perform access to inquire whether or not the target object specified by the received object identifier is arranged in each of the arrangement destinations included in the arrangement destination candidates.
- the estimation unit 104 may perform the access via, for example, the request processing unit 105 or the reading unit 108.
- the placement destination where the target object is placed may transmit a response indicating that the target object is placed to the estimation unit 104.
- An arrangement destination where the target object is not arranged may return an error, for example, for the access.
- the estimation unit 104 further specifies the arrangement destination added last among the arrangement destinations that transmitted the response indicating that the target object is arranged. do it.
- the estimation unit 104 may select the placement destination added most recently from the placement destination candidates.
- the estimation unit 104 may perform access to inquire whether or not the target object specified by the received identifier of the object is arranged at the selected arrangement destination.
- the estimation unit 104 may specify the arrangement destination as the arrangement destination added last.
- the estimation unit 104 may exclude the arrangement destination from the arrangement destination candidates. And the estimation part 104 should just repeat operation
- the estimation unit 104 transmits the identified identifier of the arrangement destination where the target object is arranged to the extraction unit 108.
- the extraction unit 108 extracts the target object from the arrangement destination where the target object is arranged (step S409).
- the extraction unit 108 may extract the target object from the estimation unit 104 from the arrangement destination specified by the arrangement destination identifier received via the request processing unit 105.
- the arrangement destination specified by the estimation unit 104 is the arrangement destination in which the addition order is the latest among the arrangement destinations in which the target object is arranged. .
- the extraction unit 108 extracts the target object from the arrangement destination in which the addition order is the latest among the arrangement destinations where the target object is arranged.
- the extraction unit 108 extracts the target object from the arrangement destinations that have transmitted the response indicating that the target object is arranged, and the arrangement destination having the latest addition order is added. What is necessary is just to transmit an extraction request.
- the arrangement destination that has received the extraction request may send the target object to the extraction unit 108.
- the extraction unit 108 may send the target object to the instruction device 400 via the request processing unit 105, for example.
- the arrangement destination determined as the arrangement destination where the object is arranged is the arrangement destination existing at the time of determination It may vary depending on the combination. That is, the same object may be arranged at a plurality of arrangement destinations.
- the target object is arranged a plurality of times while being updated, the object in the latest state is arranged in the arrangement destination added last among the arrangement destinations where the object is arranged.
- step S408 the estimation unit 104 adds the arrangement added most recently among the arrangement destinations where the target object is arranged as described above. You only need to specify the destination Then, the extraction unit 108 may extract the target object from the arrangement destination specified in step S408. As a result, the takeout unit 108 can take out the target object arranged most recently. Therefore, even when the target object is arranged a plurality of times while being updated, the extraction unit 108 can extract the newest target object. Further, in step S408, the estimation unit 104 may perform an access to inquire whether or not the target object is arranged in order from the later addition order among the arrangement destinations included in the arrangement destination candidates.
- the estimation unit 104 may end the access for inquiring whether or not the target object is arranged.
- the extraction unit 108 may extract the target object from the arrangement destination that has transmitted the response indicating that the target object is arranged.
- the placement destination candidates estimated by the estimation unit 104 are server 0, server 3, and server 4, as shown in FIG.
- Feature 1 A placement destination where an object is placed is uniquely determined based on a value derived using the identifier of the object and information associating the placement destination with a value range.
- Feature 2 Objects are placed at all placement destinations.
- Feature 3 Even when placement destinations are added, objects are placed almost uniformly at all placement destinations. Only a minimal number of objects are moved to place the objects uniformly.
- the arrangement device 100 includes the above-described feature 1 and feature 2. Furthermore, even if the placement apparatus 100 does not move the objects according to the addition of the placement destinations, the objects are arranged almost uniformly at the placement destinations as the number of objects to be placed increases.
- an object is a group of data.
- the object may be, for example, an object.
- each placement destination only needs to have a place where the object can be placed.
- positioning part 106 should just be a conveyance apparatus which can convey an object to each arrangement place.
- the take-out unit 108 may be a transport device that can transport an object from each placement destination.
- the first effect is that the processing cost related to the placement of the object can be reduced when the placement destination where the object is placed, which is determined according to the rules, changes due to the addition of the placement destination. There is.
- the change unit 102 determines each placement location so that the placement location in which the object is placed is not changed to a placement location other than the placement location added last. This is because the change is made based on the previous free space. This is because the determination unit 101 determines the placement destination of the object in accordance with the rules changed by the changing unit 102.
- the arrangement destination where the object to be taken out is placed is identified, for example, by checking the presence / absence of the object at all placement places where the object may be placed.
- the arrangement in which the object is arranged is compared to the case where the arrangement destination in which the object is arranged can be changed to an arbitrary arrangement destination that exists when the arrangement destination is added by adding the arrangement destination.
- the number of placement destinations that may be determined as destinations is limited. Therefore, when the rearranged objects are not rearranged, it is possible to reduce an increase in processing cost for specifying the placement destination of the extracted object. That is, in this case, in addition to reducing the processing cost of rearranging the object according to the addition of the placement destination, the placement apparatus 100 according to the present embodiment increases the processing cost for specifying the placement destination of the extracted object. Can be reduced.
- the placement destination of the object determined based on the object information in accordance with the rule changed based on the free space of each placement destination is the newly added placement destination. It does not change to other placement destinations. That is, the changing unit 102 changes the above-described rule so that the change in the object placement destination due to the addition of the placement destination is minimized. If the free space of each placement destination after relocation is the same, if the object is rearranged only for the placement destination added last, the object is placed between placement destinations other than the placement destination added last The amount of objects to be rearranged is small compared to the case where the objects are rearranged.
- the arrangement apparatus 100 can reduce the processing cost of the object rearrangement when the object is rearranged in accordance with a change in the rule for uniquely determining the object destination.
- the placement destination where the object is placed which is determined according to the rules, is changed by adding the placement destination, the object is placed in each placement destination without rearranging the already placed object.
- the object is placed in each placement destination without rearranging the already placed object.
- the changing unit 102 changes the rule for uniquely determining the placement destination of the object according to the free capacity of each placement destination. For example, the changing unit 102 changes the rule so as to determine that an object is arranged at each of the arrangement destinations at a rate corresponding to the free space. As a result, the number of objects placed in each placement destination is equal or nearly equal as the number of placed objects increases, even if the objects already placed in any placement destination are not rearranged. become.
- This embodiment further has a second effect that the maximum time required to determine the object placement destination can be shortened.
- the determination unit 101 of this embodiment determines the placement destination where the object is placed by repeating the process of determining whether the selected placement destination is the placement destination where the object is placed. Because it does.
- the number of processes does not exceed the number of arrangement destinations at the time when the process is started. As described above, the time for the device of Patent Document 1 to determine the placement destination may be extended by chance. However, in the present embodiment, even if the number of processes described above is increased by chance, the upper limit of the number of times is the number of placement destinations. Therefore, the arrangement apparatus 100 according to the present embodiment can reduce the maximum time required to determine the object arrangement destination.
- FIG. 9 is a block diagram illustrating an example of a configuration of an arrangement system 10A according to a modification of the first embodiment.
- the placement system 10A includes a placement device 100A, a placement execution device 200, and a server array 300.
- the arrangement execution apparatus 200 the arrangement apparatus 100A, the arrangement destinations included in the server array 300, and the instruction apparatus 400 are connected to be communicable with each other.
- the server array 300 and the instruction device 400 are the same as the server array 300 and the instruction device 400 of the first embodiment, respectively.
- Each component of the arrangement device 100A is the same as the component to which the same code
- Each component of the arrangement execution device 200 is the same as the component to which the same reference numeral is assigned in the arrangement device 100 of the first embodiment.
- the determination unit 101 transmits the determined placement destination identifier to the placement unit 106 via the request processing unit 105, for example.
- the placement unit 106 may receive from the request processing unit 105 a placement instruction that is an instruction to place an object, an identifier of the placement destination determined by the determination unit 101, and an object to be placed in the placement destination.
- the estimation unit 104 transmits the placement destination candidate to the extraction unit 108 via the request processing unit 105, for example.
- the estimation unit 104 transmits the specified identifier of the placement destination where the handling object is placed to the extraction unit 108 via the request processing unit 105.
- the estimation unit 104 transmits, for example, the identified placement destination identifier to the request processing unit 105.
- the request processing unit 105 transmits the extraction request, the identifier of the object to be extracted, and the identified placement destination identifier to the extraction unit 108.
- the object is not sent via the determination unit 101 and the estimation unit 104 included in the placement apparatus 100A.
- the object is sent between the request processing unit 105 and the arrangement unit 106 or the extraction unit 108.
- the arrangement system 10A of the present modification performs the same operation as the arrangement system 10 of the first embodiment.
- FIG. 10 is a diagram illustrating an example of the configuration of the arrangement device 100B according to the present embodiment.
- the arrangement device 100 ⁇ / b> B includes a determination unit 101 and a change unit 102.
- the determining unit 101 determines the placement destination where the object is placed among one or more placement destinations in response to receiving the object information given to the object.
- a setting value is assigned to each placement destination.
- the object can be placed at the placement destination.
- the placement destination that the decision unit 101 decides as the placement destination where the object is placed is newly added with the assigned setting value larger than the characteristic value uniquely derived based on the object information.
- the changing unit 102 changes at least any of the placement destinations so that the placement destination determined in accordance with the placement destination is not changed to the placement destination other than the placement destination added last.
- the set value given to the crab is changed.
- the changing unit 102 changes the setting value assigned to at least one of the placement destinations based on a free space that represents the amount of the object that can be newly placed at each of the placement destinations.
- the arrangement determining unit 110B may be an apparatus that is communicably connected to the arrangement execution apparatus 200, such as the arrangement apparatus 100A illustrated in FIG.
- the present embodiment described above has the same effect as the first embodiment.
- the reason is the same as the reason for the effect of the first embodiment.
- the placement device 100, the placement device 100A, the placement device 100B, and the placement execution device 200 can each be realized by a computer, a program for controlling the computer, or dedicated hardware.
- the placement device 100, the placement device 100A, the placement device 100B, and the placement execution device 200 can also be realized by a combination of a computer, a program for controlling the computer, and dedicated hardware.
- FIG. 11 is a diagram illustrating an example of a hardware configuration of a computer 1000 that can realize the placement device 100, the placement device 100A, the placement device 100B, and the placement execution device 200.
- a computer 1000 includes a processor 1001, a memory 1002, a storage device 1003, and an I / O (Input / Output) interface 1004.
- the computer 1000 can access the recording medium 1005.
- the memory 1002 and the storage device 1003 are storage devices such as a RAM (Random Access Memory) and a hard disk, for example.
- the recording medium 1005 is, for example, a storage device such as a RAM or a hard disk, a ROM (Read Only Memory), or a portable recording medium.
- the storage device 1003 may be the recording medium 1005.
- the processor 1001 can read and write data and programs from and to the memory 1002 and the storage device 1003.
- the processor 1001 can access, for example, the instruction device 400 and each placement destination via the I / O interface 1004.
- the processor 1001 can access the recording medium 1005.
- the recording medium 1005 stores a program that causes the computer 1000 to operate as the arrangement apparatus 100, the arrangement apparatus 100A, the arrangement apparatus 100B, or the arrangement execution apparatus 200.
- the processor 1001 loads, into the memory 1002, a program stored in the recording medium 1005 that causes the computer 1000 to operate as the placement device 100, the placement device 100A, the placement device 100B, or the placement execution device 200. Then, when the processor 1001 executes the program loaded in the memory 1002, the computer 1000 operates as the arrangement device 100, the arrangement device 100A, the arrangement device 100B, or the arrangement execution device 200.
- the units included in the following groups are realized by, for example, a dedicated program that can read the function of each unit read from the recording medium 1005 that stores the program into the memory 1002 and a processor 1001 that executes the program. can do.
- the above group includes a determination unit 101, a change unit 102, an estimation unit 104, a request processing unit 105, an arrangement unit 106, a detection unit 107, and an extraction unit 108.
- the location information storage unit 103 can be realized by a memory 1002 included in the computer 1000 or a storage device 1003 such as a hard disk device.
- some or all of the units included in the group and the placement destination information storage unit 103 can be realized by a dedicated circuit that realizes the function of each unit.
- a set value is assigned to each of the objects, and the set value assigned among the one or more placement destinations where the object can be placed is included in the object information.
- the placement destination determined based on the free space that represents the amount of the object that can be newly placed in each placement destination is the placement destination that was added last.
- An arrangement device comprising:
- the changing unit For each of the placement destinations, the changing unit includes a free space that represents the amount of the object that can be newly placed in a target placement destination that is the placement destination, and the placement destination added after the target placement destination. Deriving the setting value according to the sum of the free capacity of each of the arrangement destinations excluding the, and changing the setting value given to the target arrangement destination to the derived setting value, The placement device according to attachment 1.
- the changing unit is configured such that the setting value given to the placement destination increases as the free space of the placement destination increases, and the setting value is added before the target placement destination.
- the placement device For each of the placement destinations, when the derived setting value is larger than the maximum setting value of the placement destination stored in the placement destination information storage unit, the changing unit sets the placement value to the placement destination. As the maximum value of the previous set value, stored in the placement destination information storage means, The placement device further includes: In response to receiving the object information, all the arrangement destinations whose characteristic values calculated based on the attribute are smaller than the maximum value of the set values are arranged by the object to which the object information is assigned.
- the placement device according to attachment 2 or 3 further comprising: an estimation unit that identifies the placement destination as a candidate.
- the estimation means further specifies the placement destination that is included in the estimated placement destination candidates and that has the latest added order among the placement destinations where the object is placed,
- the arrangement apparatus according to appendix 4, wherein the arrangement apparatus further includes a take-out means for taking out the object from the specified arrangement destination.
- the determination unit is configured to distribute the plurality of characteristic values derived from the plurality of different pieces of object information so as to be uniformly or almost uniformly distributed between predetermined maximum values and minimum values.
- the characteristic value is derived based on the object information given to
- the changing unit is configured such that a ratio of the difference between the setting value and the minimum value of the placement destination to the difference between the maximum value and the minimum value is a ratio of the free capacity of the placement destination.
- Appendix 7 The placement device according to any one of appendices 1 to 6, further comprising: a placement unit that places the object at the placement destination determined as the placement destination where the object is placed.
- a set value is assigned to each of the objects, and the set value assigned among the one or more placement destinations where the object can be placed is included in the object information. Determining the most recently added placement destination that is larger than the characteristic value uniquely derived based on the placement location where the object is placed; In accordance with the addition of the placement destination, the placement destination determined based on the free space that represents the amount of the object that can be newly placed in each placement destination is the placement destination that was added last. Changing the setting value assigned to at least one of the placement destinations so as not to change to the placement destination other than Placement method.
- a set value is assigned to each of the objects, and the set value assigned among the one or more placement destinations where the object can be placed is included in the object information.
- the placement destination determined based on the free space that represents the amount of the object that can be newly placed in each placement destination is the placement destination that was added last.
- Changing means for changing the set value given to at least one of the placement destinations so as not to change to the placement destination other than A placement program to be operated.
- (Appendix 21) Computer The plurality of characteristic values derived from a plurality of different object information are given to the object so that they are uniformly or almost uniformly distributed between predetermined maximum and minimum values.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Human Computer Interaction (AREA)
- Computational Linguistics (AREA)
- Computing Systems (AREA)
- Manufacturing & Machinery (AREA)
- Quality & Reliability (AREA)
- Automation & Control Theory (AREA)
- Mechanical Engineering (AREA)
- Information Transfer Between Computers (AREA)
Abstract
Description
まず、本発明の第1の実施形態の配置システム10について、図面を参照して詳細に説明する。
図9は、第1の実施形態の変形例の配置システム10Aの構成の例を表すブロック図である。配置システム10Aは、配置装置100Aと、配置実行装置200と、サーバアレイ300とを含む。配置実行装置200は、配置装置100A、サーバアレイ300に含まれる各配置先、及び、指示装置400が、それぞれ通信可能に接続されている。サーバアレイ300及び指示装置400は、それぞれ、第1の実施形態のサーバアレイ300及び指示装置400と同じである。配置装置100Aの各構成要素は、第1の実施形態の配置装置100の、配置決定部110に含まれる、同一の符号が付与された構成要素と同じである。配置実行装置200の各構成要素は、第1の実施形態の配置装置100の同一の符号が付与された構成要素と同じである。ただし、決定部101は、決定した配置先の識別子を、例えば要求処理部105を介して、配置部106に送信する。配置部106は、オブジェクトを配置する指示である配置指示と、決定部101によって決定された配置先の識別子と、配置先に配置するオブジェクトとを、要求処理部105から受け取ればよい。推定部104は、配置先の候補を、例えば要求処理部105を介して、取り出し部108に送信する。推定部104は、特定した、対処オブジェクトが配置されている配置先の識別子を、要求処理部105を介して、取り出し部108に送信する。すなわち、推定部104は、例えば、特定した配置先の識別子を、要求処理部105に送信する。要求処理部105は、取り出し要求と、取り出されるオブジェクトの識別子と、特定した配置先の識別子とを、取り出し部108に送信する。オブジェクトは、配置装置100Aに含まれる決定部101や推定部104を介して送られない。オブジェクトは、要求処理部105と、配置部106又は取り出し部108との間で送られる。本変形例の配置システム10Aは、第1の実施形態の配置システム10と同じ動作を行う。
次に、本発明の第2の実施形態について、図面を参照して詳細に説明する。
配置装置100、配置装置100A、配置装置100B、及び配置実行装置200は、それぞれ、コンピュータ及びコンピュータを制御するプログラム、又は、専用のハードウェアにより実現することができる。配置装置100、配置装置100A、配置装置100B、及び配置実行装置200は、コンピュータ及びコンピュータを制御するプログラムと専用のハードウェアの組合せにより実現することもできる。
オブジェクトに付与されたオブジェクト情報を受信するのに応じて、それぞれ設定値が付与され、前記オブジェクトが配置されうる1つ以上の配置先のうち、付与されている前記設定値が、前記オブジェクト情報に基づいて一意に導出された特性値より大きい、最も新しく追加された前記配置先を、前記オブジェクトが配置される前記配置先として決定する決定手段と、
前記配置先が追加されるのに応じて、前記配置先の各々に新たに配置できる前記オブジェクトの量を表す空き容量に基づいて、決定される前記配置先が、最後に追加された前記配置先以外の前記配置先に変化しないように、前記配置先の少なくともいずれかに付与されている前記設定値を変更する変更手段と、
を備える配置装置。
前記変更手段は、前記配置先の各々について、当該配置先である対象配置先に新たに配置することができる前記オブジェクトの量を表す空き容量と、前記対象配置先より後に追加された前記配置先を除く前記配置先の各々の前記空き容量の和と、に応じて前記設定値を導出し、前記対象配置先に付与されている前記設定値を、導出した前記設定値に変更する、
付記1に記載の配置装置。
前記変更手段は、前記配置先に付与される前記設定値が、前記配置先の前記空き容量が大きいほど大きくなり、かつ、前記設定値が、前記対象配置先より前に追加された前記配置先の前記空き容量の和が大きいほど小さくなるように、前記対象配置先に割り当てられる前記設定値を導出する
付記2に記載の配置装置。
前記変更手段は、前記配置先の各々について、配置先情報記憶手段に格納されている前記配置先の前記設定値の最大値より、導出した前記設定値が大きい場合、当該設定値を、前記配置先の前記設定値の最大値として、前記配置先情報記憶手段に格納し、
前記配置装置は、さらに、
前記オブジェクト情報を受信するのに応じて、当該属性に基づいて算出された前記特性値が前記設定値の最大値より小さい全ての前記配置先を、前記オブジェクト情報が付与されている前記オブジェクトが配置されている配置先の候補として特定する推定手段
を備える付記2又は3に記載の配置装置。
前記推定手段は、さらに、推定された前記配置先の候補に含まれ、前記オブジェクトが配置されている前記配置先の中で、追加された順番が最も後である前記配置先を特定し、
前記配置装置は、特定された前記配置先から、前記オブジェクトを取り出す取り出し手段をさらに備える
付記4に記載の配置装置。
前記決定手段は、異なる複数の前記オブジェクト情報から導出される複数の前記特性値が、あらかじめ定められた最大値及び最小値との間に、一様又はほぼ一様に分布するように、前記オブジェクトに付与されている前記オブジェクト情報に基づいて前記特性値を導出し、
前記変更手段は、前記配置先の各々について、当該配置先の前記設定値と前記最小値との差の、前記最大値と前記最小値の差に対する割合が、当該配置先の前記空き容量の、前記配置先が追加された際における前記配置先の各々の前記空き容量の和に対する割合になるように、前記配置先に付与する前記設定値を導出する
付記2乃至5のいずれかに記載の配置装置。
前記オブジェクトが配置される前記配置先として決定された前記配置先に、前記オブジェクトを配置する配置手段
をさらに備える付記1乃至6のいずれかに記載の配置装置。
前記配置先の各々と、付記1乃至7のいずれかに記載の配置装置とを含む配置システム。
オブジェクトに付与されたオブジェクト情報を受信するのに応じて、それぞれ設定値が付与され、前記オブジェクトが配置されうる1つ以上の配置先のうち、付与されている前記設定値が、前記オブジェクト情報に基づいて一意に導出された特性値より大きい、最も新しく追加された前記配置先を、前記オブジェクトが配置される前記配置先として決定し、
前記配置先が追加されるのに応じて、前記配置先の各々に新たに配置できる前記オブジェクトの量を表す空き容量に基づいて、決定される前記配置先が、最後に追加された前記配置先以外の前記配置先に変化しないように、前記配置先の少なくともいずれかに付与されている前記設定値を変更する、
配置方法。
前記配置先の各々について、当該配置先である対象配置先に新たに配置することができる前記オブジェクトの量を表す空き容量と、前記対象配置先より後に追加された前記配置先を除く前記配置先の各々の前記空き容量の和と、に応じて前記設定値を導出し、前記対象配置先に付与されている前記設定値を、導出した前記設定値に変更する、
付記9に記載の配置方法。
前記配置先に付与される前記設定値が、前記配置先の前記空き容量が大きいほど大きくなり、かつ、前記設定値が、前記対象配置先より前に追加された前記配置先の前記空き容量の和が大きいほど小さくなるように、前記対象配置先に割り当てられる前記設定値を導出する
付記10に記載の配置方法。
前記配置先の各々について、配置先情報記憶手段に格納されている前記配置先の前記設定値の最大値より、導出した前記設定値が大きい場合、当該設定値を、前記配置先の前記設定値の最大値として、前記配置先情報記憶手段に格納し、
前記オブジェクト情報を受信するのに応じて、当該属性に基づいて算出された前記特性値が前記設定値の最大値より小さい全ての前記配置先を、前記オブジェクト情報が付与されている前記オブジェクトが配置されている配置先の候補として特定する、
付記10又は11に記載の配置方法。
推定された前記配置先の候補に含まれ、前記オブジェクトが配置されている前記配置先の中で、追加された順番が最も後である前記配置先を特定し、
前記配置装置は、特定された前記配置先から、前記オブジェクトを取り出す、
付記12に記載の配置方法。
異なる複数の前記オブジェクト情報から導出される複数の前記特性値が、あらかじめ定められた最大値及び最小値との間に、一様又はほぼ一様に分布するように、前記オブジェクトに付与されている前記オブジェクト情報に基づいて前記特性値を導出し、
前記配置先の各々について、当該配置先の前記設定値と前記最小値との差の、前記最大値と前記最小値の差に対する割合が、当該配置先の前記空き容量の、前記配置先が追加された際における前記配置先の各々の前記空き容量の和に対する割合になるように、前記配置先に付与する前記設定値を導出する
付記10乃至13のいずれかに記載の配置方法。
前記オブジェクトが配置される前記配置先として決定された前記配置先に、前記オブジェクトを配置する、
付記9乃至14のいずれかに記載の配置方法。
コンピュータを、
オブジェクトに付与されたオブジェクト情報を受信するのに応じて、それぞれ設定値が付与され、前記オブジェクトが配置されうる1つ以上の配置先のうち、付与されている前記設定値が、前記オブジェクト情報に基づいて一意に導出された特性値より大きい、最も新しく追加された前記配置先を、前記オブジェクトが配置される前記配置先として決定する決定手段と、
前記配置先が追加されるのに応じて、前記配置先の各々に新たに配置できる前記オブジェクトの量を表す空き容量に基づいて、決定される前記配置先が、最後に追加された前記配置先以外の前記配置先に変化しないように、前記配置先の少なくともいずれかに付与されている前記設定値を変更する変更手段と、
して動作させる配置プログラム。
コンピュータを、
前記配置先の各々について、当該配置先である対象配置先に新たに配置することができる前記オブジェクトの量を表す空き容量と、前記対象配置先より後に追加された前記配置先を除く前記配置先の各々の前記空き容量の和と、に応じて前記設定値を導出し、前記対象配置先に付与されている前記設定値を、導出した前記設定値に変更する前記変更手段と、
して動作させる付記16に記載の配置プログラム。
コンピュータを、
前記配置先に付与される前記設定値が、前記配置先の前記空き容量が大きいほど大きくなり、かつ、前記設定値が、前記対象配置先より前に追加された前記配置先の前記空き容量の和が大きいほど小さくなるように、前記対象配置先に割り当てられる前記設定値を導出する前記変更手段と、
して動作させる付記17に記載の配置プログラム。
コンピュータを、
前記配置先の各々について、配置先情報記憶手段に格納されている前記配置先の前記設定値の最大値より、導出した前記設定値が大きい場合、当該設定値を、前記配置先の前記設定値の最大値として、前記配置先情報記憶手段に格納する前記変更手段と、
前記オブジェクト情報を受信するのに応じて、当該属性に基づいて算出された前記特性値が前記設定値の最大値より小さい全ての前記配置先を、前記オブジェクト情報が付与されている前記オブジェクトが配置されている配置先の候補として特定する推定手段と、
して動作させる付記17又は18に記載の配置プログラム。
コンピュータを、
さらに、推定された前記配置先の候補に含まれ、前記オブジェクトが配置されている前記配置先の中で、追加された順番が最も後である前記配置先を特定する前記推定手段と、
特定された前記配置先から、前記オブジェクトを取り出す取り出し手段と、
して動作させる付記19に記載の配置プログラム。
コンピュータを、
異なる複数の前記オブジェクト情報から導出される複数の前記特性値が、あらかじめ定められた最大値及び最小値との間に、一様又はほぼ一様に分布するように、前記オブジェクトに付与されている前記オブジェクト情報に基づいて前記特性値を導出する前記決定手段と、
前記配置先の各々について、当該配置先の前記設定値と前記最小値との差の、前記最大値と前記最小値の差に対する割合が、当該配置先の前記空き容量の、前記配置先が追加された際における前記配置先の各々の前記空き容量の和に対する割合になるように、前記配置先に付与する前記設定値を導出する前記変更手段と、
して動作させる付記17乃至20のいずれかに記載の配置プログラム。
コンピュータを、
前記オブジェクトが配置される前記配置先として決定された前記配置先に、前記オブジェクトを配置する配置手段と、
して動作させる付記16乃至21のいずれかに記載の配置プログラム。
10A 配置システム
100 配置装置
100A 配置装置
100B 配置装置
101 決定部
102 変更部
103 配置先情報記憶部
104 推定部
105 要求処理部
106 配置部
107 検出部
108 取り出し部
110 配置決定部
110B 配置決定部
200 配置実行装置
300 サーバアレイ
301 配置先(サーバ)
30N 配置先(サーバ)
400 指示装置
1000 コンピュータ
1001 プロセッサ
1002 メモリ
1003 記憶装置
1004 I/Oインタフェース
1005 記録媒体
Claims (18)
- オブジェクトに付与されたオブジェクト情報を受信するのに応じて、それぞれ設定値が付与され、前記オブジェクトが配置されうる1つ以上の配置先のうち、付与されている前記設定値が、前記オブジェクト情報に基づいて一意に導出された特性値より大きい、最も新しく追加された前記配置先を、前記オブジェクトが配置される前記配置先として決定する決定手段と、
前記配置先が追加されるのに応じて、前記配置先の各々に新たに配置できる前記オブジェクトの量を表す空き容量に基づいて、決定される前記配置先が、最後に追加された前記配置先以外の前記配置先に変化しないように、前記配置先の少なくともいずれかに付与されている前記設定値を変更する変更手段と、
を備える配置装置。 - 前記変更手段は、前記配置先の各々について、当該配置先である対象配置先に新たに配置することができる前記オブジェクトの量を表す空き容量と、前記対象配置先より後に追加された前記配置先を除く前記配置先の各々の前記空き容量の和と、に応じて前記設定値を導出し、前記対象配置先に付与されている前記設定値を、導出した前記設定値に変更する、
請求項1に記載の配置装置。 - 前記変更手段は、前記配置先に付与される前記設定値が、前記配置先の前記空き容量が大きいほど大きくなり、かつ、前記設定値が、前記対象配置先より前に追加された前記配置先の前記空き容量の和が大きいほど小さくなるように、前記対象配置先に割り当てられる前記設定値を導出する
請求項2に記載の配置装置。 - 前記変更手段は、前記配置先の各々について、配置先情報記憶手段に格納されている前記配置先の前記設定値の最大値より、導出した前記設定値が大きい場合、当該設定値を、前記配置先の前記設定値の最大値として、前記配置先情報記憶手段に格納し、
前記配置装置は、さらに、
前記オブジェクト情報を受信するのに応じて、当該属性に基づいて算出された前記特性値が前記設定値の最大値より小さい全ての前記配置先を、前記オブジェクト情報が付与されている前記オブジェクトが配置されている配置先の候補として特定する推定手段
を備える請求項2又は3に記載の配置装置。 - 前記推定手段は、さらに、推定された前記配置先の候補に含まれ、前記オブジェクトが配置されている前記配置先の中で、追加された順番が最も後である前記配置先を特定し、
前記配置装置は、特定された前記配置先から、前記オブジェクトを取り出す取り出し手段をさらに備える
請求項4に記載の配置装置。 - 前記決定手段は、異なる複数の前記オブジェクト情報から導出される複数の前記特性値が、あらかじめ定められた最大値及び最小値との間に、一様又はほぼ一様に分布するように、前記オブジェクトに付与されている前記オブジェクト情報に基づいて前記特性値を導出し、
前記変更手段は、前記配置先の各々について、当該配置先の前記設定値と前記最小値との差の、前記最大値と前記最小値の差に対する割合が、当該配置先の前記空き容量の、前記配置先が追加された際における前記配置先の各々の前記空き容量の和に対する割合になるように、前記配置先に付与する前記設定値を導出する
請求項2乃至5のいずれかに記載の配置装置。 - 前記オブジェクトが配置される前記配置先として決定された前記配置先に、前記オブジェクトを配置する配置手段
をさらに備える請求項1乃至6のいずれかに記載の配置装置。 - 前記配置先の各々と、請求項1乃至7のいずれかに記載の配置装置とを含む配置システム。
- オブジェクトに付与されたオブジェクト情報を受信するのに応じて、それぞれ設定値が付与され、前記オブジェクトが配置されうる1つ以上の配置先のうち、付与されている前記設定値が、前記オブジェクト情報に基づいて一意に導出された特性値より大きい、最も新しく追加された前記配置先を、前記オブジェクトが配置される前記配置先として決定し、
前記配置先が追加されるのに応じて、前記配置先の各々に新たに配置できる前記オブジェクトの量を表す空き容量に基づいて、決定される前記配置先が、最後に追加された前記配置先以外の前記配置先に変化しないように、前記配置先の少なくともいずれかに付与されている前記設定値を変更する、
配置方法。 - 前記配置先の各々について、当該配置先である対象配置先に新たに配置することができる前記オブジェクトの量を表す空き容量と、前記対象配置先より後に追加された前記配置先を除く前記配置先の各々の前記空き容量の和と、に応じて前記設定値を導出し、前記対象配置先に付与されている前記設定値を、導出した前記設定値に変更する、
請求項9に記載の配置方法。 - 前記配置先に付与される前記設定値が、前記配置先の前記空き容量が大きいほど大きくなり、かつ、前記設定値が、前記対象配置先より前に追加された前記配置先の前記空き容量の和が大きいほど小さくなるように、前記対象配置先に割り当てられる前記設定値を導出する
請求項10に記載の配置方法。 - 前記配置先の各々について、配置先情報記憶手段に格納されている前記配置先の前記設定値の最大値より、導出した前記設定値が大きい場合、当該設定値を、前記配置先の前記設定値の最大値として、前記配置先情報記憶手段に格納し、
前記オブジェクト情報を受信するのに応じて、当該属性に基づいて算出された前記特性値が前記設定値の最大値より小さい全ての前記配置先を、前記オブジェクト情報が付与されている前記オブジェクトが配置されている配置先の候補として特定する、
請求項10又は11に記載の配置方法。 - 推定された前記配置先の候補に含まれ、前記オブジェクトが配置されている前記配置先の中で、追加された順番が最も後である前記配置先を特定し、
前記配置装置は、特定された前記配置先から、前記オブジェクトを取り出す、
請求項12に記載の配置方法。 - コンピュータを、
オブジェクトに付与されたオブジェクト情報を受信するのに応じて、それぞれ設定値が付与され、前記オブジェクトが配置されうる1つ以上の配置先のうち、付与されている前記設定値が、前記オブジェクト情報に基づいて一意に導出された特性値より大きい、最も新しく追加された前記配置先を、前記オブジェクトが配置される前記配置先として決定する決定手段と、
前記配置先が追加されるのに応じて、前記配置先の各々に新たに配置できる前記オブジェクトの量を表す空き容量に基づいて、決定される前記配置先が、最後に追加された前記配置先以外の前記配置先に変化しないように、前記配置先の少なくともいずれかに付与されている前記設定値を変更する変更手段と、
して動作させる配置プログラムを記憶する記録媒体。 - コンピュータを、
前記配置先の各々について、当該配置先である対象配置先に新たに配置することができる前記オブジェクトの量を表す空き容量と、前記対象配置先より後に追加された前記配置先を除く前記配置先の各々の前記空き容量の和と、に応じて前記設定値を導出し、前記対象配置先に付与されている前記設定値を、導出した前記設定値に変更する前記変更手段と、
して動作させる配置プログラムを記憶する請求項14に記載の記録媒体。 - コンピュータを、
前記配置先に付与される前記設定値が、前記配置先の前記空き容量が大きいほど大きくなり、かつ、前記設定値が、前記対象配置先より前に追加された前記配置先の前記空き容量の和が大きいほど小さくなるように、前記対象配置先に割り当てられる前記設定値を導出する前記変更手段と、
して動作させる配置プログラムを記憶する請求項15に記載の記録媒体。 - コンピュータを、
前記配置先の各々について、配置先情報記憶手段に格納されている前記配置先の前記設定値の最大値より、導出した前記設定値が大きい場合、当該設定値を、前記配置先の前記設定値の最大値として、前記配置先情報記憶手段に格納する前記変更手段と、
前記オブジェクト情報を受信するのに応じて、当該属性に基づいて算出された前記特性値が前記設定値の最大値より小さい全ての前記配置先を、前記オブジェクト情報が付与されている前記オブジェクトが配置されている配置先の候補として特定する推定手段と、
して動作させる配置プログラムを記憶する請求項15又は16に記載の記録媒体。 - コンピュータを、
さらに、推定された前記配置先の候補に含まれ、前記オブジェクトが配置されている前記配置先の中で、追加された順番が最も後である前記配置先を特定する前記推定手段と、
特定された前記配置先から、前記オブジェクトを取り出す取り出し手段と、
して動作させる配置プログラムを記憶する請求項17に記載の記録媒体。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/324,779 US9779110B2 (en) | 2014-07-11 | 2015-07-06 | Placement device, placement method and recording medium, that stores placement program information processing device |
JP2016532431A JP6508208B2 (ja) | 2014-07-11 | 2015-07-06 | 配置装置、配置方法及び配置プログラム |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014143324 | 2014-07-11 | ||
JP2014-143324 | 2014-07-11 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2016006223A1 true WO2016006223A1 (ja) | 2016-01-14 |
Family
ID=55063875
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2015/003383 WO2016006223A1 (ja) | 2014-07-11 | 2015-07-06 | 配置装置、配置方法及び配置プログラムを記憶する記録媒体 |
Country Status (3)
Country | Link |
---|---|
US (1) | US9779110B2 (ja) |
JP (1) | JP6508208B2 (ja) |
WO (1) | WO2016006223A1 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10942909B2 (en) * | 2018-09-25 | 2021-03-09 | Salesforce.Com, Inc. | Efficient production and consumption for data changes in a database under high concurrency |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013025497A (ja) * | 2011-07-19 | 2013-02-04 | Nippon Telegr & Teleph Corp <Ntt> | 分散処理システム、分散処理方法、負荷分散装置、負荷分散方法、及び、負荷分散プログラム |
JP2013061739A (ja) * | 2011-09-12 | 2013-04-04 | Fujitsu Ltd | データ管理装置、データ管理システム、データ管理方法、及びプログラム |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7716180B2 (en) * | 2005-12-29 | 2010-05-11 | Amazon Technologies, Inc. | Distributed storage system with web services client interface |
WO2008136075A1 (ja) * | 2007-04-20 | 2008-11-13 | Fujitsu Limited | ストレージ管理プログラム、ストレージ管理装置およびストレージ管理方法 |
JP2010257020A (ja) * | 2009-04-22 | 2010-11-11 | Hitachi Ltd | データマイグレーション管理装置及び管理方法 |
JP5066209B2 (ja) * | 2010-03-18 | 2012-11-07 | 株式会社東芝 | コントローラ、データ記憶装置、及びプログラム |
US9158808B2 (en) * | 2010-08-19 | 2015-10-13 | Nec Corporation | Object arrangement apparatus for determining object destination, object arranging method, and computer program thereof |
WO2012124178A1 (ja) * | 2011-03-16 | 2012-09-20 | 日本電気株式会社 | 分散記憶システムおよび分散記憶方法 |
WO2013132779A1 (ja) * | 2012-03-09 | 2013-09-12 | 日本電気株式会社 | オブジェクト配置装置及び方法、コンピュータ・プログラム |
JP6209926B2 (ja) * | 2013-10-09 | 2017-10-11 | 富士通株式会社 | ストレージ制御装置、およびストレージ装置の制御プログラム |
JP6025149B2 (ja) * | 2013-11-06 | 2016-11-16 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | データを管理するシステムおよび方法 |
WO2015145532A1 (ja) * | 2014-03-24 | 2015-10-01 | 株式会社日立製作所 | ストレージシステム及びデータ処理方法 |
US10684876B2 (en) * | 2015-05-14 | 2020-06-16 | Netapp, Inc. | Migration of virtual machine data using native data paths |
-
2015
- 2015-07-06 WO PCT/JP2015/003383 patent/WO2016006223A1/ja active Application Filing
- 2015-07-06 US US15/324,779 patent/US9779110B2/en active Active
- 2015-07-06 JP JP2016532431A patent/JP6508208B2/ja active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013025497A (ja) * | 2011-07-19 | 2013-02-04 | Nippon Telegr & Teleph Corp <Ntt> | 分散処理システム、分散処理方法、負荷分散装置、負荷分散方法、及び、負荷分散プログラム |
JP2013061739A (ja) * | 2011-09-12 | 2013-04-04 | Fujitsu Ltd | データ管理装置、データ管理システム、データ管理方法、及びプログラム |
Also Published As
Publication number | Publication date |
---|---|
JPWO2016006223A1 (ja) | 2017-04-27 |
JP6508208B2 (ja) | 2019-05-08 |
US20170205810A1 (en) | 2017-07-20 |
US9779110B2 (en) | 2017-10-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10776396B2 (en) | Computer implemented method for dynamic sharding | |
JP7046172B2 (ja) | シャード・データベースのシャード・テーブルにレコードを記憶するためのコンピュータ実装方法、コンピュータ・プログラム製品、およびシステム、シャード・データベースのシャード・テーブルからレコードを検索するためのコンピュータ実装方法、コンピュータ・プログラム製品、およびシステム、ならびにシャード・データベースを記憶するためのシステム | |
US8671313B2 (en) | Management apparatus and management method | |
CN110737668B (zh) | 数据存储方法、数据读取方法、相关设备及介质 | |
JP5733124B2 (ja) | データ管理装置、データ管理システム、データ管理方法、及びプログラム | |
US9210219B2 (en) | Systems and methods for consistent hashing using multiple hash rings | |
JP2014517420A (ja) | クラウド記憶のためのファイル処理方法、システム、およびサーバクラスタ化システム | |
US20200042422A1 (en) | Log analysis method, system, and storage medium | |
US20220187807A1 (en) | Material processing path selection method and device | |
WO2016044176A1 (en) | Data processing method and apparatus in service-oriented architecture system, and the service-oriented architecture system | |
WO2015116040A1 (en) | Data migration | |
CN112579591A (zh) | 数据校验方法、装置、电子设备及计算机可读存储介质 | |
US9684668B1 (en) | Systems and methods for performing lookups on distributed deduplicated data systems | |
WO2016006223A1 (ja) | 配置装置、配置方法及び配置プログラムを記憶する記録媒体 | |
CN110825309A (zh) | 数据读取方法、装置及系统、分布式系统 | |
CN111147226B (zh) | 数据存储方法、装置及存储介质 | |
CN114268501B (zh) | 数据处理方法、防火墙生成方法、计算设备及存储介质 | |
US11082484B2 (en) | Load balancing system | |
WO2016006222A1 (ja) | 配置装置、配置方法及び配置プログラムを記憶する記録媒体 | |
JP6110354B2 (ja) | 異種記憶サーバおよびそのファイル記憶方法 | |
CN111190858B (zh) | 软件信息存储方法、装置、设备和存储介质 | |
CN110968267B (zh) | 数据管理方法、装置、服务器及系统 | |
CN110968649B (zh) | 用于管理数据集的方法、设备和计算机程序产品 | |
JPWO2012053152A1 (ja) | ストレージシステム、データ管理装置、方法及びプログラム | |
CN112035498A (zh) | 数据块调度方法、装置、调度层节点及存储层节点 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 15818683 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2016532431 Country of ref document: JP Kind code of ref document: A |
|
WWE | Wipo information: entry into national phase |
Ref document number: 15324779 Country of ref document: US |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 15818683 Country of ref document: EP Kind code of ref document: A1 |