WO2022038933A1 - 情報処理装置、情報処理方法及び情報処理プログラム - Google Patents

情報処理装置、情報処理方法及び情報処理プログラム Download PDF

Info

Publication number
WO2022038933A1
WO2022038933A1 PCT/JP2021/026633 JP2021026633W WO2022038933A1 WO 2022038933 A1 WO2022038933 A1 WO 2022038933A1 JP 2021026633 W JP2021026633 W JP 2021026633W WO 2022038933 A1 WO2022038933 A1 WO 2022038933A1
Authority
WO
WIPO (PCT)
Prior art keywords
stored
information processing
distribution rule
distribution
storage
Prior art date
Application number
PCT/JP2021/026633
Other languages
English (en)
French (fr)
Inventor
豊 大石
浩司 松村
理貴 近藤
優子 宇野
Original Assignee
富士フイルム株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 富士フイルム株式会社 filed Critical 富士フイルム株式会社
Priority to JP2022543323A priority Critical patent/JPWO2022038933A1/ja
Priority to CN202180056214.9A priority patent/CN116034341A/zh
Priority to EP21858082.7A priority patent/EP4202674A4/en
Publication of WO2022038933A1 publication Critical patent/WO2022038933A1/ja
Priority to US18/160,311 priority patent/US20230161732A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/11File system administration, e.g. details of archiving or snapshots
    • G06F16/122File system administration, e.g. details of archiving or snapshots using management policies
    • G06F16/125File system administration, e.g. details of archiving or snapshots using management policies characterised by the use of retention policies
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load

Definitions

  • the disclosed technology relates to information processing devices, information processing methods, and information processing programs.
  • the following techniques are known as techniques for distributing objects to a plurality of storage nodes in an object storage system including a plurality of storage nodes for storing objects including data and metadata.
  • Japanese Patent Application Laid-Open No. 2010-272011 describes that a registration destination node in which a newly created or updated object should be registered is performed based on an object ID for identifying the object. Further, it is described that the value of the tree part in the object ID of the object before the update is set as the tree part of the object ID after the update.
  • Japanese Patent Application Laid-Open No. 2017-184195 describes a first method of determining an object transfer destination based on an identifier uniquely assigned to an object in a plurality of communication devices in a path for transmitting an object to any of a plurality of real storage nodes. It is described that when setting the rule of, the identifier is assigned to one of a plurality of real storage nodes based on the first allocation relationship and the connection relationship of a plurality of communication devices and a plurality of real storage nodes. There is.
  • JP-A-2004-229130 in response to a request to change the distribution rule for distributing traffic to the distribution destination device group, whether the traffic session is an existing session established before the rule change request or not was established after the rule change request. If it is determined whether the session is a new session and the session is determined to be an existing session, the traffic is distributed to the distribution destination device group according to the distribution rule before the rule change request, while the session is determined to be a new session. If so, it is described that the traffic is distributed to the distribution destination device group according to the distribution rule after the rule change request.
  • the object update process in the object storage system is not overwriting and saving the existing object, but the updated object is stored in the storage node as an object different from the existing object.
  • a plurality of storage nodes are prepared, and the objects transmitted from the users are distributed to the objects transmitted from the users of the plurality of storage nodes based on the preset distribution rules. It is distributed to either one.
  • the update object which is an update of the existing object distributed according to the old rule
  • the new rule may be distributed according to the new rule, and as a result, the update object is stored in the storage node different from the storage node in which the existing object is stored. In some cases. In this way, if the existing object and the updated object are stored in different storage nodes, it may be difficult to identify the latest object.
  • the disclosed technology was made in view of the above circumstances, and even if there are multiple distribution rules for distributing objects to any of multiple storage nodes, it is easy to identify the latest objects.
  • the purpose The purpose.
  • the information processing device is provided with at least one processor, and performs a process of storing an object to be stored in any of a plurality of storage nodes according to a preset distribution rule.
  • the processor distributes the new object according to the distribution rule set at the time when the storage request for the new object is made. If the object to be stored is an update object that is an update of an existing object stored in one of multiple storage nodes, the processor will use the corresponding existing object according to the distribution rules applied to the corresponding existing object. Allocate the update object to the same storage node as the stored storage node.
  • the processor may distribute the objects accommodated in the first accommodation area associated with the first distribution rule among the plurality of accommodation areas that accept the objects to be stored according to the first distribution rule. Further, the processor may distribute the objects accommodated in the second accommodation area associated with the second distribution rule among the plurality of accommodation areas according to the second distribution rule.
  • the processor may distribute the new object according to the second distribution rule.
  • the processor stores the corresponding existing object according to the distribution rule applied to the corresponding existing object among the first distribution rule and the second distribution rule.
  • the update object may be distributed to the same storage node as the existing storage node.
  • the processor may determine the storage node to which the object is distributed based on the identification information. In this case, the processor may determine the storage node to which the object is distributed based on the remainder value when the hash value of the identification information is divided by the divisor according to the distribution rule to be applied.
  • the processor accepts the instruction to create the storage area that accepts the object to be stored and the specification of the installation location of the storage node group that is the storage destination of the object accepted in the storage area, and the object that is accepted in the storage area to which the creation instruction is given.
  • a distribution rule when distributing to a storage node group installed in a designated installation location, a distribution rule associated with the designated storage location may be applied.
  • the information processing method is an information processing method in which the object to be stored is stored in any of a plurality of storage nodes according to a preset distribution rule, and the object to be stored is newly stored. If it is a new object created, the new object is distributed according to the distribution rule set at the time when the storage request for the new object is made, and the object to be stored is an existing object stored in one of multiple storage nodes.
  • the information processing device has a process of distributing the update object to the same storage node as the storage node in which the corresponding existing object is stored according to the distribution rule applied to the corresponding existing object. It is an information processing method executed by at least one processor.
  • the information processing program causes at least one processor of the information processing apparatus to execute a process of storing an object to be stored in any of a plurality of storage nodes according to a preset distribution rule.
  • the object to be stored is a newly created new object
  • the new object is distributed according to the distribution rule set at the time when the storage request for the new object is made, and the object to be stored is If the update object is an update of an existing object stored in one of multiple storage nodes, the same storage as the storage node in which the corresponding existing object is stored, according to the distribution rules applied to the corresponding existing object.
  • This is an information processing program that causes the processor to execute the process of distributing update objects to nodes.
  • FIG. 1 is a diagram showing an example of a configuration of a storage system 100 according to an embodiment of the disclosed technique.
  • the storage system 100 includes an information processing device 10 and a server [1] 20A to a server [3] 20C.
  • the storage system 100 is connected to the terminal device 50 via the network 40.
  • the terminal device 50 is a computer used by a user who uses the storage system 100.
  • the storage system 100 stores the object 30 requested to be stored by the terminal device 50, and when the terminal device 50 requests to read the object, the storage system 100 reads the requested object and transmits the requested object to the terminal device 50.
  • the object 30 includes a data body and metadata about the data body.
  • Each of the server [1] 20A to the server [3] 20C constitutes a storage node, and the object requested to be stored by the terminal device 50 is any one of the server [1] 20A to the server [3] 20C.
  • FIG. 1 illustrates three servers constituting the storage node, the number of servers provided in the storage system can be increased or decreased as appropriate.
  • the information processing device 10 functions as a load balancer that distributes the load of the server [1] 20A to the server [3] 20C.
  • the information processing apparatus 10 is connected to each of the server [1] 20A to the server [3] 20C.
  • the object 30 requested to be stored by the terminal device 50 is supplied to the information processing device 10.
  • the information processing device 10 distributes the object 30 to be stored supplied from the terminal device 50 to any of the server [1] 20A to the server [3] 20C according to a predetermined distribution rule.
  • the distribution rule may specify, for example, the distribution ratio (distribution rate) of objects to each of the server [1] 20A to the server [3] 20C.
  • FIG. 2 is a diagram showing an example of the hardware configuration of the information processing apparatus 10.
  • the information processing device 10 includes a CPU (Central Processing Unit) 11, a memory 12 as a temporary storage area, and a non-volatile storage unit 13. Further, the information processing apparatus 10 includes a network interface 14 connected to the network 40, and an external interface 15 to which the server [1] 20A to the server [3] 20C are connected.
  • the CPU 11, the memory 12, the storage unit 13, the network interface 14, and the external interface 15 are connected to the bus 16.
  • the storage unit 13 is realized by a storage medium such as an HDD (Hard Disk Drive), an SSD (Solid State Drive), or a flash memory.
  • the information processing program 60 and the rule information 61 which will be described later, are stored in the storage unit 13.
  • the CPU 11 reads the information processing program 60 from the storage unit 13, expands it into the memory 12, and executes it.
  • the CPU 11 is an example of a processor in the disclosed technology.
  • Access to the storage system 100 is performed, for example, via a management console displayed on a web browser operating on the terminal device 50.
  • the user When storing an object in the storage system 100, the user creates a bucket on the management console and arranges the object to be stored in the bucket.
  • a bucket is a virtual storage area that accepts objects to be stored. The user can create multiple buckets.
  • the object is sent to the storage system 100, and the server [1] ] 20A to server [3] 20C.
  • the distribution rule when the information processing device 10 distributes the object to be stored to the server [1] 20A to the server [3] 20C is associated with the bucket.
  • a distribution rule is set in the information processing apparatus 10 for each bucket.
  • the correspondence between the bucket and the distribution rule and the contents of the distribution rule are stored as rule information 61 in the storage unit 13 of the information processing apparatus 10.
  • FIG. 3 is a diagram showing an example of rule information 61 stored in the storage unit 13 of the information processing device 10.
  • FIG. 3 illustrates a first distribution rule associated with the first bucket and a second distribution rule associated with the second bucket.
  • the distribution ratio of the objects to the server [1] 20A is 50%
  • the distribution ratio of the objects to the server [2] 20B is 25%
  • the server [3] It is stipulated that the distribution ratio of objects to 20C is 25% (distribution ratio 2: 1: 1).
  • the second distribution rule it is stipulated that the distribution ratio of the objects to the server [1] 20A to the server [3] 20C is 33.3%, respectively (distribution ratio 1: 1: 1). ..
  • the information processing apparatus 10 when the user newly creates a bucket, the information processing apparatus 10 generates rule information 61 including a distribution rule as illustrated in FIG. 3, and stores this in the storage unit 13. At this time, the information processing apparatus 10 may calculate the distribution ratio of the objects to each server according to the number of servers included in the storage system 100, the processing capacity thereof, and the like.
  • the distribution rule can be arbitrarily set and changed by the administrator of the information processing apparatus 10.
  • FIG. 4 is a functional block diagram showing an example of a functional configuration of the information processing apparatus 10 when objects are distributed to the server [1] 20A to the server [3] 20C.
  • the information processing apparatus 10 includes a reception unit 70, a selection unit 71, a determination unit 72, and a transmission unit 73.
  • the CPU 11 executes the information processing program 60, the information processing apparatus 10 functions as a reception unit 70, a selection unit 71, a determination unit 72, and a transmission unit 73.
  • the object to be stored is sent to the storage system 100.
  • the object to be stored is accompanied by the identification information of the bucket in which the object is placed.
  • the reception unit 70 receives the object to be stored transmitted from the terminal device 50.
  • the selection unit 71 selects a distribution rule for distributing the object to be stored to the server [1] 20A to the server [3] 20C. Specifically, the selection unit 71 identifies the bucket in which the object is housed, based on the identification information of the bucket attached to the object to be stored. The selection unit 71 refers to the rule information 61 and selects the distribution rule corresponding to the specified bucket as the distribution rule to be applied to the object to be stored. For example, when the object to be stored is housed in the first bucket, the selection unit 71 selects the first distribution rule associated with the first bucket. On the other hand, when the object to be stored is housed in the second bucket, the selection unit 71 selects the second distribution rule associated with the second bucket.
  • the determination unit 72 determines the distribution destination according to the distribution rule selected by the selection unit 71 from the server [1] 20A to the server [3] 20C by the following procedure.
  • the determination unit 72 calculates the hash value a of the identification information (object key) of the object to be stored.
  • the determination unit 72 calculates the remainder c when the hash value a is divided by the divisor b determined according to the selected distribution rule.
  • the determination unit 72 determines the server associated with the value of the remainder c as the distribution destination of the object to be stored.
  • the determination unit 72 assigns the object to be stored to the server [1] 20A. If the remainder c is 2, the distribution destination of the object to be stored is determined to the server [2] 20B, and if the remainder c is 3, the distribution destination of the object to be stored is the server [3] 20C. To decide. As a result, as shown in FIG. 5A, the objects to be stored are distributed from the server [1] 20A to the server [3] 20C at a distribution ratio (2: 1: 1) according to the first distribution rule. Is possible.
  • the determination unit 72 assigns the object to be stored to the server [1] 20A. If the remainder c is 1, the distribution destination of the object to be stored is determined to the server [2] 20B, and if the remainder c is 2, the distribution destination of the object to be stored is set to the server [3] 20C. decide.
  • the objects to be stored are distributed from the server [1] 20A to the server [3] 20C at a distribution ratio (1: 1: 1) according to the second distribution rule. Is possible.
  • the distribution destination is determined according to the remainder c.
  • the object to be stored can be distributed from the server [1] 20A to the server [3] 20C at a distribution ratio according to the selected distribution rule.
  • the correspondence relationship between the remainder c and the distribution destination server for each distribution rule may be included in the rule information 61, or may be stored in the storage unit 13 separately from the rule information 61.
  • the transmission unit 73 transmits the object to be stored to the server to be the distribution destination determined by the determination unit 72 among the server [1] 20A to the server [3] 20C.
  • the object to be stored is stored in a storage medium such as a hard disk provided in the distribution destination server.
  • the update object which is an update of the existing object
  • the storage system 100 as an object different from the existing object. That is, the update of the object in the storage system 100 is performed not by the so-called "overwriting of data” but by "addition of the update object".
  • the update object is stored in a server different from the server in which the corresponding existing object is stored, it becomes difficult to identify the latest object.
  • the information processing apparatus 10 can distribute the updated object according to the same distribution rule as the distribution rule applied to the existing object.
  • the information processing apparatus 10 determines the distribution destination according to the remainder c when the hash value a of the object identification information is divided by the divisor b determined according to the selected distribution rule. Since the identification information of the update object is the same as the identification information of the existing object, the remainder c calculated for the update object is the same as the remainder c calculated for the existing object. Therefore, the information processing apparatus 10 can distribute the update object to the same server as the server in which the existing object is stored.
  • FIG. 6 is a flowchart showing an example of a processing flow executed by the CPU 11 executing the information processing program 60.
  • the information processing program 60 is executed, for example, when there is a request for storing an object from the terminal device 50. It is assumed that the storage unit 13 stores in advance the rule information 61 in which the distribution rules for each bucket are defined, as illustrated in FIG.
  • step S1 the reception unit 70 receives the object to be stored transmitted from the terminal device 50.
  • step S2 the selection unit 71 selects a distribution rule to be applied to the object received in step S1. Specifically, the selection unit 71 identifies the bucket in which the object is housed, based on the identification information of the bucket attached to the received object. The selection unit 71 refers to the rule information 61 and selects the distribution rule corresponding to the specified bucket as the distribution rule to be applied to the object.
  • step S3 the determination unit 72 performs a determination process of determining the distribution destination according to the distribution rule selected in step S2 from the server [1] 20A to the server [3] 20C.
  • FIG. 7 is a flowchart showing the details of the determination process. Hereinafter, the determination process will be described with reference to the flowchart of FIG. 7.
  • step S11 the determination unit 72 calculates the hash value a of the object identification information (object key) received in step S1.
  • step S12 the determination unit 72 calculates the remainder c when the hash value a is divided by the divisor b determined according to the distribution rule selected in step S2.
  • step S13 the determination unit 72 determines the distribution destination of the object received in step S1 based on the value of the remainder c calculated in step S12.
  • step S4 the transmission unit 73 transmits the object received in step S1 to the server to be the distribution destination determined in step S3.
  • the object is stored in a storage medium such as a hard disk provided in the distribution destination server.
  • the information processing apparatus 10 distributes objects to any of the servers [1] 20A to [3] 20C, which each function as a storage node, according to a preset distribution rule.
  • the information processing apparatus 10 distributes the new object according to the distribution rule set at the time when the storage request for the new object is received.
  • the information processing apparatus 10 relates to the corresponding existing object. Distribute the updated object to the same server where the corresponding existing object is stored according to the applied distribution rule.
  • the update object is stored in the same server as the server in which the corresponding existing object is stored, so that the latest object is available. It is possible to facilitate the identification of.
  • the information processing apparatus 10 sets a distribution rule for each bucket created by the user. That is, the information processing apparatus 10 distributes the objects housed in the first bucket associated with the first distribution rule according to the first distribution rule. For the objects housed in the second bucket associated with the second distribution rule, the objects are distributed according to the second distribution rule. In this way, by making it possible to set a distribution rule for each bucket, efficient operation of the server becomes possible.
  • FIG. 8 illustrates a case where the server [4] 20D and the server [5] 20E are newly added.
  • the distribution rule (hereinafter referred to as the old rule) corresponding to the bucket created before the addition of the server [4] 20D and the server [5] 20E assumes the existence of the server [4] 20D and the server [5] 20E. Therefore, the distribution destination of the object according to the old rule usually does not include the added server [4] 20D and server [5] 20E.
  • the distribution ratio of the object 30 to the server [1] 20A is set to 50%
  • the distribution ratio of the object 30 to the server [2] 20B is set to 25%
  • the distribution ratio of the object 30 to the server [3] 20C is set to 25%. It is stipulated that the distribution ratio of the object 30 to the object 30 is 25% (distribution ratio 2: 1: 1).
  • the distribution ratio of the objects can be determined, for example, according to the processing capacity of the server. That is, the distribution ratio of the object to the server having higher processing power may be set higher. As a result, the load including the processing capacity of the server can be made uniform.
  • the distribution rule set for a certain bucket can be changed. That is, when a server functioning as a storage node is newly added, a new distribution rule (hereinafter referred to as a new rule) in which the added server is included in the distribution destination is set in the information processing apparatus 10.
  • the distribution ratio of the object 30 to the server [1] 20A is set to 20%
  • the distribution ratio of the object 30 to the server [2] 20B is set to 10%
  • the distribution ratio of the object 30 to the server [3] 20C is set to 20%
  • the distribution ratio of the object 30 to the server [4] 20D is 10%
  • the distribution ratio of the object 30 to the server [4] 20D is 30%
  • the distribution ratio of the object 30 to the server [5] 20E is 30% (distribution ratio). 2: 1: 1: 3: 3) is specified.
  • FIG. 9 is a diagram showing an example of rule information 61 stored in the storage unit 13 of the information processing apparatus 10 according to the present embodiment.
  • the old rule first distribution rule
  • the new rule second distribution rule
  • the information processing apparatus 10 generates an old rule when the bucket is created and stores it in the storage unit 13, creates a new rule when the server is added, and stores it in the storage unit 13.
  • the information processing device 10 generates distribution rules so that the load including the processing capacity of the server installed at that time is equalized.
  • the rule information 61 includes history information indicating which distribution rule is the latest.
  • the information processing apparatus 10 functions as a reception unit 70, a selection unit 71, a determination unit 72, and a transmission unit 73 by executing the information processing program 60 by the CPU 11 (see FIG. 4).
  • the reception unit 70 receives the object to be stored transmitted from the terminal device 50.
  • the selection unit 71 selects a distribution rule when distributing an object to be stored to a server that functions as a storage node.
  • the selection unit 71 selects the latest distribution rule at that time. That is, when the new rule is stored in the storage unit 13 of the information processing apparatus 10, the new rule is selected as the distribution rule to be applied to the object to be stored.
  • the selection unit 71 selects a distribution rule applied to the corresponding existing object. That is, when the object to be stored is an update object and the distribution rule applied to the corresponding existing object is the old rule, the selection unit 71 selects the old rule as the distribution rule to be applied to the object to be stored. ..
  • the selection unit 71 selects the new rule as the distribution rule to be applied to the object to be stored. ..
  • the selection unit 71 creates a distribution log associated with the distribution rule selected for the object to be stored and the identification information of the object, and stores the distribution log in the storage unit 13.
  • the selection unit 71 may refer to the distribution log when selecting the distribution rule, and may determine whether the object to be stored is a new object or an update object. For example, if an object having the same identification information as the identification information of the object to be stored is recorded in the distribution log, it can be determined that the object is an update object. Further, when the object to be stored is an update object, it is possible to determine whether the distribution rule applied to the corresponding existing object is the old rule or the new rule by referring to the distribution log.
  • the determination unit 72 determines a server to be distributed according to the distribution rule selected by the selection unit 71. Specifically, as in the information processing apparatus 10 according to the first embodiment described above, the determination unit 72 calculates the hash value a of the identification information of the object to be stored, and the distribution rule selected by the selection unit 71. The remainder c when the hash value a is divided by the divisor b determined according to the above is calculated, and the distribution destination of the object is determined based on the value of the remainder c.
  • the determination unit 72 assigns the object to be stored to the server [1] 20A. If the remainder c is 2, the distribution destination of the object to be stored is determined to the server [2] 20B, and if the remainder c is 3, the distribution destination of the object to be stored is the server [3] 20C.
  • the distribution destination of the object to be stored is determined to the server [4] 20D, and if the remainder c is 7, 8 or 9, the object to be stored The distribution destination is determined to be the server [5] 20E.
  • the object 30 to be stored can be distributed from the server [1] 20A to the server [5] 20E at a distribution ratio (2: 1: 1: 3: 3) according to the new rule.
  • the same server as the server in which the existing object is stored is determined as the distribution destination of the update object.
  • the transmission unit 73 transmits the object to be stored to the server to be the distribution destination determined by the determination unit 72.
  • the object to be stored is stored in a storage medium such as a hard disk provided in the distribution destination server.
  • step S1 the reception unit 70 receives the object 30 to be stored transmitted from the terminal device 50.
  • step S2 the selection unit 71 selects a distribution rule to be applied to the object received in step S1. Specifically, the selection unit 71 determines whether the object received in step S1 is a new object or an update object by referring to the above-mentioned distribution log. If the object received in step S1 is a new object, the selection unit 71 selects the latest distribution rule at that time. On the other hand, when the object received in step S1 is an update object, the selection unit 71 selects a distribution rule applied to the corresponding existing object. The selection unit 71 identifies the distribution rule applied to the existing object by referring to the distribution log.
  • step S3 the determination unit 72 determines the distribution destination according to the distribution rule selected in step S2. Specifically, the determination unit 72 calculates the hash value a of the identification information of the object received in step S1, and divides the hash value a by the divisor b determined according to the distribution rule selected in step S2. The remainder c is calculated, and the distribution destination of the object to be stored is determined based on the value of the remainder c.
  • step S4 the transmission unit 73 transmits the object received in step S1 to the server to be the distribution destination determined in step S3.
  • the object is stored in a storage medium such as a hard disk provided in the distribution destination server.
  • the information processing apparatus 10 distributes objects to any of a plurality of servers each functioning as a storage node according to a preset distribution rule.
  • the distribution rule is the old rule (first distribution rule) set before the addition of the server and the new rule (second distribution rule) including the storage node added after the addition of the server as the distribution destination. (Distribution rule), and the case including is assumed.
  • the information processing apparatus 10 sorts the new object according to the latest sorting rule, that is, a new rule (second sorting rule).
  • the information processing apparatus 10 When the object to be sorted is an updated object, the information processing apparatus 10 has a sorting rule applied to the corresponding existing object among the old rule (first sorting rule) and the new rule (second sorting rule). According to, the update object is distributed to the same server where the corresponding existing object is stored.
  • the update object is stored in the same server as the server in which the corresponding existing object is stored, so that the latest object can be specified. It can be facilitated.
  • the rule information 61 includes two distribution rules, the old rule and the new rule, but the present embodiment is not limited to this mode. For example, when the distribution rule is updated twice or more, the rule information 61 includes three or more distribution rules.
  • the information processing apparatus 10 sets a distribution rule for the created bucket.
  • the information processing apparatus 10 may set the distribution rule for the bucket as follows.
  • the user can specify the installation location (hereinafter referred to as a region) of the server group that stores the objects contained in the bucket. Is.
  • a region the installation location of the server group that stores the objects contained in the bucket.
  • the distribution rule is associated with the region in advance.
  • the distribution rule A is associated with the region A in which the server [1] 20A to the server [3] 20C are installed, and the distribution rule A is distributed to the region B in which the server [4] 20D and the server [5] 20E are installed.
  • An example is an example in which the rule B is associated and the distribution rule C is associated with the region C in which the server [1] 20A to the server [5] 20E are installed.
  • FIG. 11 is a diagram showing an example of rule information 61 stored in the storage unit 13 of the information processing apparatus 10 according to the present embodiment.
  • FIG. 11 illustrates a distribution rule A associated with the region A, a distribution rule B associated with the region B, and a distribution rule C associated with the region C.
  • the distribution rule A defines the distribution ratio of objects to each of the server [1] 20A to the server [3] 20C installed in the region A.
  • the distribution rule B defines the distribution ratio of objects to each of the server [4] 20D to the server [5] 20E installed in the region B.
  • the distribution rule C defines the distribution ratio of objects to each of the server [1] 20A to the server [5] 20E installed in the region C.
  • the information processing device 10 accepts the bucket creation instruction accompanied by the region designation from the terminal device 50.
  • the information processing apparatus 10 distributes the objects housed in the bucket to which the creation instruction is given to the server group installed in the designated region.
  • the information processing apparatus 10 sets a distribution rule associated with a region designated for the bucket as a distribution rule applied to the bucket.
  • the information processing apparatus 10 refers to the rule information 61 exemplified in FIG. 11 and sets the distribution rule corresponding to the designated region as the distribution rule applied to the bucket.
  • the information processing apparatus 10 When the information processing apparatus 10 receives, for example, an instruction to create a bucket that specifies a region A, the information processing apparatus 10 sets a distribution rule A associated with the region A as a distribution rule applied to the objects accepted in the bucket. The information processing apparatus 10 distributes the objects housed in the bucket to the server group installed in the region A according to the distribution rule A.
  • the various processors include a CPU, which is a general-purpose processor that executes software (program) and functions as various processing units, and a processor whose circuit configuration can be changed after manufacturing an FPGA or the like. It includes a dedicated electric circuit, which is a processor having a circuit configuration specially designed for executing a specific process such as a programmable logic device (PLD), an ASIC (Application Specific Integrated Circuit), and the like.
  • a CPU which is a general-purpose processor that executes software (program) and functions as various processing units
  • a processor whose circuit configuration can be changed after manufacturing an FPGA or the like It includes a dedicated electric circuit, which is a processor having a circuit configuration specially designed for executing a specific process such as a programmable logic device (PLD), an ASIC (Application Specific Integrated Circuit), and the like.
  • PLD programmable logic device
  • ASIC Application Specific Integrated Circuit
  • One processing unit may be composed of one of these various processors, or a combination of two or more processors of the same type or different types (for example, a combination of a plurality of FPGAs or a combination of a CPU and an FPGA). It may be composed of a combination). Further, a plurality of processing units may be configured by one processor.
  • one processor is configured by a combination of one or more CPUs and software, as represented by a computer such as a client and a server.
  • the processor functions as a plurality of processing units.
  • SoC System on Chip
  • the various processing units are configured by using one or more of the above-mentioned various processors as a hardware-like structure.
  • an electric circuit in which circuit elements such as semiconductor elements are combined can be used.
  • the information processing program 60 is provided in a form recorded on a recording medium such as a CD-ROM (Compact Disc Read Only Memory), a DVD-ROM (Digital Versatile Disc Read Only Memory), and a USB (Universal Serial Bus) memory. May be good. Further, the information processing program 60 may be downloaded from an external device via a network.
  • a recording medium such as a CD-ROM (Compact Disc Read Only Memory), a DVD-ROM (Digital Versatile Disc Read Only Memory), and a USB (Universal Serial Bus) memory. May be good.
  • the information processing program 60 may be downloaded from an external device via a network.

Abstract

情報処理装置は、少なくとも1つのプロセッサを備え、予め設定された振り分けルールに従って、格納対象のオブジェクトを複数のストレージノードの何れかに格納する。プロセッサは、格納対象のオブジェクトが新規に作成された新規オブジェクトである場合、新規オブジェクトの格納要求があった時点において設定されている振り分けルールに従って前記新規オブジェクトを振り分ける。プロセッサは、格納対象のオブジェクトが、前記複数のストレージノードのいずれかに格納されている既存オブジェクトの更新である更新オブジェクトである場合、対応する既存オブジェクトについて適用された振り分けルールに従って、対応する既存オブジェクトが格納されているストレージノードと同じストレージノードに前記更新オブジェクトを振り分ける。

Description

情報処理装置、情報処理方法及び情報処理プログラム
 開示の技術は、情報処理装置、情報処理方法及び情報処理プログラムに関する。
 データ及びメタデータを含んで構成されるオブジェクトを記憶する複数のストレージノードを備えたオブジェクトストレージシステムにおいて、複数のストレージノードへのオブジェクトの振り分けに関する技術として、以下の技術が知られている。
 例えば特開2010-272011号公報には、新規作成又は更新後のオブジェクトが登録されるべき登録先ノードを、当該オブジェクトを識別するためのオブジェクトIDに基づいて行うことが記載されている。また、更新後のオブジェクトIDのツリー部として、更新前のオブジェクトのオブジェクトIDにおけるツリー部の値を設定することが記載されている。
 特開2017-184195号公報には、複数の実ストレージノードのいずれかにオブジェクトを送信する経路における複数の通信機器において、オブジェクトに一意に付与される識別子に基づくオブジェクトの転送先を決定する第1のルールを設定する場合に、識別子を複数の実ストレージノードのいずれかに割り当てる第1の割り当て関係と、複数の通信機器及び複数の実ストレージノードの接続関係とに基づいて行うことが記載されている。
 特開2004-229130号公報には、トラヒックを振り分け先装置群へ振り分ける振り分けルールの変更要求を受け、トラヒックのセッションが、ルール変更要求前に確立した既存セッションであるのか、ルール変更要求後に確立した新規セッションであるのかを判断し、セッションが既存セッションであると判断された場合、ルール変更要求前の振り分けルールに従って、トラヒックを振り分け先装置群へ振り分け、一方、セッションが新規セッションであると判断された場合、ルール変更要求後の振り分けルールに従って、トラヒックを振り分け先装置群へ振り分けることが記載されている。
 オブジェクトストレージシステムにおけるオブジェクトの更新処理は、既存オブジェクトの上書き保存ではなく、更新後のオブジェクトが既存オブジェクトとは別のオブジェクトとしてストレージノードに格納される。
 また、オブジェクトストレージシステムにおいて、システムの信頼性向上及び負荷分散等のために、複数のストレージノードを用意し、ユーザから送信されたオブジェクトを、予め設定した振り分けルールに基づいて、複数のストレージノードの何れかに振り分けることが行われている。
 このようなシステムにおいて、ストレージノードを新たに追加した場合、ストレージノードの追加前に策定された振り分けルール(以下、旧ルールと称する)に従ってオブジェクトの振り分けを行うと、新たに追加されたストレージノードにオブジェクトを振り分けることができない。そこで、新たに追加したストレージノードを振り分け先に含めるように新たな振り分けルール(以下、新ルールと称する)を策定することが考えられる。この場合、旧ルールに従って振り分けられた既存オブジェクトの更新である更新オブジェクトが新ルールに従って振り分けられる場合があり、その結果、既存オブジェクトが格納されたストレージノードとは異なるストレージノードに更新オブジェクトが格納される場合がある。このように、既存オブジェクトと更新オブジェクトとが互いに異なるストレージノードに格納されると、最新のオブジェクトの特定が困難となるおそれがある。
 なお、以上の説明では、振り分けルールの変更が、ストレージノードの追加に伴って行われる場合を例示したが、ストレージノードの追加とは無関係に振り分けルールが変更されることも想定される。また、複数の振り分けルールが併存し、状況に応じて振り分けルールを使い分けることも想定される。いずれの場合においても、複数の振り分けルールが存在することで、既存オブジェクトと更新オブジェクトとが互いに異なるストレージノードに格納されるおそれがあり、最新のオブジェクトの特定が困難となるおそれがある。
 開示の技術は、以上の事情に鑑みてなされたものであり、複数のストレージノードのいずれかにオブジェクトを振り分けるための振り分けルールが複数存在する場合でも、最新のオブジェクトの特定を容易にすることを目的とする。
 開示の技術に係る情報処理装置は、少なくとも1つのプロセッサを備え、予め設定された振り分けルールに従って、格納対象のオブジェクトを複数のストレージノードの何れかに格納する処理を行う。プロセッサは、格納対象のオブジェクトが新規に作成された新規オブジェクトである場合、新規オブジェクトの格納要求があった時点において設定されている振り分けルールに従って新規オブジェクトを振り分ける。プロセッサは、格納対象のオブジェクトが、複数のストレージノードのいずれかに格納されている既存オブジェクトの更新である更新オブジェクトである場合、対応する既存オブジェクトについて適用された振り分けルールに従って、対応する既存オブジェクトが格納されているストレージノードと同じストレージノードに更新オブジェクトを振り分ける。
 プロセッサは、格納対象のオブジェクトを受け入れる複数の収容領域のうちの第1の振り分けルールに対応付けられた第1の収容領域に収容されたオブジェクトについては、第1の振り分けルールに従って振り分けてもよい。また、プロセッサは、複数の収容領域のうちの第2の振り分けルールに対応付けられた第2の収容領域に収容されたオブジェクトについては、第2の振り分けルールに従って振り分けてもよい。
 振り分けルールとして、ストレージノードの追加前に設定された第1の振り分けルールと、ストレージノードの追加後に設定され、追加されたストレージノードを振り分け先に含む第2の振り分けルールと、を含む場合において、プロセッサは、格納対象のオブジェクトが、新規オブジェクトである場合、第2の振り分けルールに従って新規オブジェクトを振り分けてもよい。また、プロセッサは、振り分け対象のオブジェクトが、更新オブジェクトである場合、第1の振り分けルール及び第2の振り分けルールのうち、対応する既存オブジェクトについて適用された振り分けルールに従って、対応する既存オブジェクトが格納されているストレージノードと同じストレージノードに更新オブジェクトを振り分けてもよい。
 更新オブジェクトが対応する既存オブジェクトと同じ識別情報を有する場合、プロセッサは、識別情報に基づいて、オブジェクトの振り分け先となるストレージノードを決定してもよい。この場合、プロセッサは、識別情報のハッシュ値を、適用する振り分けルールに応じた除数で除算したときの余りの値に基づいて、オブジェクトの振り分け先となるストレージノードを決定してもよい。
 プロセッサは、格納対象のオブジェクトを受け入れる収容領域の作成指示及び、収容領域に受け入れられるオブジェクトの格納先となるストレージノード群の設置場所の指定を受付け、作成指示がなされた収容領域に受け入れられるオブジェクトを、指定がなされた設置場所に設置されたストレージノード群に振り分ける際の振り分けルールとして、指定がなされた保管場所に対応付けられた振り分けルールを適用してもよい。
 開示の技術に係る情報処理方法は、予め設定された振り分けルールに従って、格納対象のオブジェクトを複数のストレージノードの何れかに格納する処理を行う情報処理方法であって、格納対象のオブジェクトが新規に作成された新規オブジェクトである場合、新規オブジェクトの格納要求があった時点において設定されている振り分けルールに従って新規オブジェクトを振り分け、格納対象のオブジェクトが、複数のストレージノードのいずれかに格納されている既存オブジェクトの更新である更新オブジェクトである場合、対応する既存オブジェクトについて適用された振り分けルールに従って、対応する既存オブジェクトが格納されているストレージノードと同じストレージノードに更新オブジェクトを振り分ける処理を情報処理装置が備える少なくとも1つのプロセッサが実行する情報処理方法である。
 開示の技術に係る情報処理プログラムは、予め設定された振り分けルールに従って、格納対象のオブジェクトを複数のストレージノードの何れかに格納する処理を情報処理装置が備える少なくとも1つのプロセッサに実行させるための情報処理プログラムであって、格納対象のオブジェクトが新規に作成された新規オブジェクトである場合、新規オブジェクトの格納要求があった時点において設定されている振り分けルールに従って新規オブジェクトを振り分け、格納対象のオブジェクトが、複数のストレージノードのいずれかに格納されている既存オブジェクトの更新である更新オブジェクトである場合、対応する既存オブジェクトについて適用された振り分けルールに従って、対応する既存オブジェクトが格納されているストレージノードと同じストレージノードに更新オブジェクトを振り分ける処理をプロセッサに実行させるための情報処理プログラムである。
 開示の技術によれば、複数のストレージノードのいずれかにオブジェクトを振り分けるための振り分けルールが複数存在する場合でも、最新のオブジェクトの特定を容易にすることができる。
開示の技術の実施形態に係るストレージシステムの構成の一例を示す図である。 開示の技術の実施形態に係る情報処理装置のハードウェア構成の一例を示す図である。 開示の技術の実施形態に係るルール情報の一例を示す図である。 開示の技術の実施形態に係る情報処理装置の機能的な構成の一例を示す機能ブロック図である。 開示の技術の実施形態に係る第1の振り分けルールに従うオブジェクトの振り分けの態様の一例を示す図である。 開示の技術の実施形態に係る第2の振り分けルールに従うオブジェクトの振り分けの態様の一例を示す図である。 開示の技術の実施形態に係るCPUが、情報処理プログラムを実行することによって実施される処理の流れの一例を示すフローチャートである。 開示の技術の実施形態に係る決定処理の流れの一例を示すフローチャートである。 開示の技術の実施形態に係るストレージシステムの構成の一例を示す図である。 開示の技術の実施形態に係るルール情報の一例を示す図である。 サーバ群が設置されるリージョンと、振り分けルールとの対応関係の一例を示す図である。 開示の技術の実施形態に係るルール情報の一例を示す図である。
 以下、開示の技術の実施形態の一例を、図面を参照しつつ説明する。なお、各図面において同一又は等価な構成要素及び部分には同一の参照符号を付与し、重複する説明は適宜省略する。
[第1の実施形態]
 図1は、開示の技術の実施形態に係るストレージシステム100の構成の一例を示す図である。ストレージシステム100は、情報処理装置10及びサーバ[1]20A~サーバ[3]20Cを含んで構成されている。ストレージシステム100は、ネットワーク40を介して端末装置50に接続されている。端末装置50は、ストレージシステム100を利用するユーザによって使用されるコンピュータである。ストレージシステム100は、端末装置50から格納要求があったオブジェクト30を保管し、端末装置50からオブジェクトの読み出し要求があった場合、要求されたオブジェクトを読み出して端末装置50に送信する。オブジェクト30は、データ本体と、データ本体に関するメタデータとを含んで構成される。
 サーバ[1]20A~サーバ[3]20Cは、それぞれ、ストレージノードを構成するものであり、端末装置50から格納要求があったオブジェクトは、サーバ[1]20A~サーバ[3]20Cのいずれかに格納される。なお、図1には、ストレージノードを構成する3台のサーバが例示されているが、ストレージシステムが備えるサーバの数は適宜増減することが可能である。
 情報処理装置10は、サーバ[1]20A~サーバ[3]20Cの負荷を分散させるロードバランサとして機能する。情報処理装置10は、サーバ[1]20A~サーバ[3]20Cの各々に接続されている。端末装置50から格納要求があったオブジェクト30は、情報処理装置10に供給される。情報処理装置10は、端末装置50から供給された格納対象のオブジェクト30を、所定の振り分けルールに従ってサーバ[1]20A~サーバ[3]20Cのいずれかに振り分ける。振り分けルールは、例えば、サーバ[1]20A~サーバ[3]20Cの各々に対するオブジェクトの分配比率(振り分け率)を規定したものであってもよい。
 図2は、情報処理装置10のハードウェア構成の一例を示す図である。情報処理装置10は、CPU(Central Processing Unit)11、一時記憶領域としてのメモリ12、及び不揮発性の記憶部13を含む。また、情報処理装置10は、ネットワーク40に接続されるネットワークインターフェース14、及びサーバ[1]20A~サーバ[3]20Cが接続される外部インターフェース15を含む。CPU11、メモリ12、記憶部13、ネットワークインターフェース14、及び外部インターフェース15は、バス16に接続される。
 記憶部13は、HDD(Hard Disk Drive)、SSD(Solid State Drive)、又はフラッシュメモリ等の記憶媒体によって実現される。記憶部13には、後述する情報処理プログラム60及びルール情報61が記憶される。CPU11は、情報処理プログラム60を記憶部13から読み出し、メモリ12に展開し、実行する。なお、CPU11は、開示の技術におけるプロセッサの一例である。
 ストレージシステム100へのアクセスは、例えば、端末装置50上で動作するウェブブラウザ上に表示される管理コンソールを介して行う。ユーザは、ストレージシステム100にオブジェクトを格納する場合、管理コンソール上でバケットを作成し、バケット内に格納対象のオブジェクトを配置する。バケットとは、格納対象のオブジェクトを受け入れる仮想的な収容領域である。ユーザは、複数のバケットを作成することが可能である。ユーザが、管理コンソール上で、オブジェクトの識別情報であるオブジェクトキーが付与されたオブジェクトをバケット内に配置し、オブジェクトのアップロードを指示することで、そのオブジェクトがストレージシステム100に送信され、サーバ[1]20A~サーバ[3]20Cのいずれかに格納される。
 情報処理装置10が、格納対象のオブジェクトをサーバ[1]20A~サーバ[3]20Cに振り分ける際の振り分けルールはバケットに対応付けられる。複数のバケットが作成された場合、バケット毎に振り分けルールが情報処理装置10に設定される。バケットと振り分けルールとの対応関係及び振り分けルールの内容は、情報処理装置10の記憶部13にルール情報61として保存される。
 図3は、情報処理装置10の記憶部13に保存されるルール情報61の一例を示す図である。図3には、第1のバケットに対応付けられた第1の振り分けルールと、第2のバケットに対応付けられた第2の振り分けルールが例示されている。図3に示す例では、第1の振り分けルールとして、サーバ[1]20Aへのオブジェクトの分配比率を50%とし、サーバ[2]20Bへのオブジェクトの分配比率を25%とし、サーバ[3]20Cへのオブジェクトの分配比率を25%とすること(分配比率2:1:1)が規定されている。また、第2の振り分けルールとして、サーバ[1]20A~サーバ[3]20Cへのオブジェクトの分配比率を、それぞれ33.3%とすること(分配比率1:1:1)が規定されている。
 情報処理装置10は、例えば、ユーザがバケットを新規に作成した場合に、図3に例示するような振り分けルールを含むルール情報61を生成し、これを記憶部13に保存する。このとき、情報処理装置10は、ストレージシステム100が備えるサーバの台数及びその処理能力等に応じて各サーバに対するオブジェクトの分配比率を算出してもよい。振り分けルールは、情報処理装置10の管理者が任意に設定及び変更することも可能である。
 図4は、サーバ[1]20A~サーバ[3]20Cにオブジェクトを振り分ける場合における情報処理装置10の機能的な構成の一例を示す機能ブロック図である。図4に示すように、情報処理装置10は、受付部70、選択部71、決定部72及び送信部73を含む。CPU11が情報処理プログラム60を実行することにより、情報処理装置10は、受付部70、選択部71、決定部72及び送信部73として機能する。
 上記したように、ユーザがバケット内に格納対象のオブジェクトを配置してアップロードを指示すると、格納対象のオブジェクトがストレージシステム100に送信される。格納対象のオブジェクトには、そのオブジェクトが配置されたバケットの識別情報が付随している。受付部70は、端末装置50から送信された格納対象のオブジェクトを受け付ける。
 選択部71は、格納対象のオブジェクトをサーバ[1]20A~サーバ[3]20Cに振り分ける際の振り分けルールを選択する。具体的には、選択部71は、格納対象のオブジェクトに付随するバケットの識別情報に基づいて、当該オブジェクトが収容されたバケットを特定する。選択部71は、ルール情報61を参照し、特定したバケットに対応する振り分けルールを、格納対象のオブジェクトについて適用する振り分けルールとして選択する。例えば、選択部71は、格納対象のオブジェクトが第1のバケット内に収容されたものである場合、第1のバケットに対応付けられた第1の振り分けルールを選択する。一方、選択部71は、格納対象のオブジェクトが第2のバケット内に収容されたものである場合、第2のバケットに対応付けられた第2の振り分けルールを選択する。
 決定部72は、選択部71によって選択された振り分けルールに従う振り分け先を、サーバ[1]20A~サーバ[3]20Cの中から以下の手順で決定する。決定部72は、格納対象のオブジェクトの識別情報(オブジェクトキー)のハッシュ値aを算出する。決定部72は、選択された振り分けルールに応じて定まる除数bでハッシュ値aを除算したときの余りcを算出する。決定部72は余りcの値に対応付けられたサーバを、格納対象のオブジェクトの振り分け先として決定する。
 例えば、選択部71によって選択された振り分けルールが、図3に例示された第1の振り分けルール(分配比率2:1:1)である場合、決定部72は、振り分けルールに応じて定まる除数bとして4(=2+1+1)を導出する。決定部72は格納対象のオブジェクトの識別情報のハッシュ値aを除数b(=4)で除算したときの余りcが0又は1である場合、格納対象のオブジェクトの振り分け先をサーバ[1]20Aに決定し、余りcが2である場合、格納対象のオブジェクトの振り分け先をサーバ[2]20Bに決定し、余りcが3である場合、格納対象のオブジェクトの振り分け先をサーバ[3]20Cに決定する。これにより、図5Aに示すように、格納対象のオブジェクトの、サーバ[1]20A~サーバ[3]20Cへの振り分けを、第1の振り分けルールに従う分配比率(2:1:1)で行うことが可能となる。
 一方、選択部71によって選択された振り分けルールが、図3に例示された第2の振り分けルール(分配比率1:1:1)である場合、決定部72は、振り分けルールに応じて定まる除数bとして3(=1+1+1)を導出する。決定部72は、格納対象のオブジェクトの識別情報のハッシュ値aを除数b(=3)で除算したときの余りcが0である場合、格納対象のオブジェクトの振り分け先をサーバ[1]20Aに決定し、余りcが1である場合、格納対象のオブジェクトの振り分け先をサーバ[2]20Bに決定し、余りcが2である場合、格納対象のオブジェクトの振り分け先をサーバ[3]20Cに決定する。これにより、図5Bに示すように、格納対象のオブジェクトの、サーバ[1]20A~サーバ[3]20Cへの振り分けを、第2の振り分けルールに従う分配比率(1:1:1)で行うことが可能となる。
 上記のように、格納対象のオブジェクトの識別情報(オブジェクトキー)のハッシュ値aを、選択された振り分けルールに応じて定まる除数bで除算したときの余りcに応じて振り分け先を決定することで、格納対象のオブジェクトのサーバ[1]20A~サーバ[3]20Cへの振り分けを、選択された振り分けルールに従う分配比率で行うことが可能となる。余りcと、振り分け先となるサーバとの振り分けルール毎の対応関係は、ルール情報61に含まれていてもよいし、ルール情報61と別に記憶部13に保存されていてもよい。
 送信部73は、サーバ[1]20A~サーバ[3]20Cのうち、決定部72によって決定された振り分け先となるサーバに格納対象のオブジェクトを送信する。格納対象のオブジェクトは、振り分け先のサーバが備えるハードディスク等の記憶媒体に記憶される。
 ここで、サーバ[1]20A~サーバ[3]20Cのいずれかに既に格納されている既存オブジェクトを更新する場合について考える。この場合、既存オブジェクトの更新である更新オブジェクトが、既存オブジェクトとは別のオブジェクトとしてストレージシステム100に格納される。すなわち、ストレージシステム100におけるオブジェクトの更新は、いわゆる「データの上書き」ではなく、「更新オブジェクトの追加」によって行われる。このようなシステムにおいては、更新オブジェクトが対応する既存オブジェクトが格納されたサーバとは異なるサーバに格納されると、最新のオブジェクトの特定が困難となる。
 ユーザは、既存オブジェクトを更新する場合、既存オブジェクトと同一の識別情報(オブジェクトキー)が付与された更新オブジェクトを、既存オブジェクトが収容されたバケットと同じバケット内に配置する。従って、情報処理装置10は、既存オブジェクトについて適用した振り分けルールと同じ振り分けルールに従って更新オブジェクトを振り分けることが可能である。
 また、情報処理装置10は、上記したように、オブジェクトの識別情報のハッシュ値aを、選択された振り分けルールに応じて定まる除数bで除算したときの余りcに応じて振り分け先を決定する。更新オブジェクトの識別情報は、既存オブジェクトの識別情報と同じであるので、更新オブジェクトについて算出される余りcは、既存オブジェクトについて算出される余りcと同一である。従って、情報処理装置10は、既存オブジェクトが格納されているサーバと同じサーバに更新オブジェクトを振り分けることが可能である。
 以下に、情報処理装置10の作用について説明する。図6は、CPU11が、情報処理プログラム60を実行することによって実施される処理の流れの一例を示すフローチャートである。情報処理プログラム60は、例えば、端末装置50からオブジェクトの格納要求があった場合に実行される。なお、記憶部13には、図3に例示するような、バケット毎の振り分けルールが定められたルール情報61が予め保存されているものとする。
 ステップS1において、受付部70は、端末装置50から送信された格納対象のオブジェクトを受け付ける。
 ステップS2において、選択部71は、ステップS1で受付けたオブジェクトについて適用する振り分けルールを選択する。具体的には、選択部71は、受付けたオブジェクトに付随するバケットの識別情報に基づいて、当該オブジェクトが収容されたバケットを特定する。選択部71は、ルール情報61を参照し、特定したバケットに対応する振り分けルールを当該オブジェクトについて適用する振り分けルールとして選択する。
 ステップS3において、決定部72は、ステップS2で選択された振り分けルールに従う振り分け先を、サーバ[1]20A~サーバ[3]20Cの中から決定する決定処理を行う。ここで、図7は、決定処理の詳細を示すフローチャートである。以下、決定処理について、図7のフローチャートを参照しつつ説明する。
 ステップS11において、決定部72は、ステップS1で受け付けたオブジェクトの識別情報(オブジェクトキー)のハッシュ値aを算出する。
 ステップS12において、決定部72は、ステップS2で選択された振り分けルールに応じて定まる除数bでハッシュ値aを除算したときの余りcを算出する。
 ステップS13において、決定部72は、ステップS12で算出した余りcの値に基づいて、ステップS1で受け付けたオブジェクトの振り分け先を決定する。
 図6を参照し、ステップS4において、送信部73は、ステップS1で受け付けたオブジェクトを、ステップS3で決定した振り分け先となるサーバに送信する。当該オブジェクトは、振り分け先のサーバが備えるハードディスク等の記憶媒体に記憶される。
 以上のように、本実施形態に係る情報処理装置10は、それぞれストレージノードとして機能するサーバ[1]20A~サーバ[3]20Cのいずれかに、予め設定された振り分けルールに従ってオブジェクトを振り分ける。情報処理装置10は、振り分け対象のオブジェクトが、新規に作成された新規オブジェクトである場合、新規オブジェクトの格納要求があった時点において設定されている振り分けルールに従って新規オブジェクトを振り分ける。また、情報処理装置10は、振り分け対象のオブジェクトが、サーバ[1]20A~サーバ[3]20Cのいずれかに格納されている既存オブジェクトの更新である更新オブジェクトである場合、対応する既存オブジェクトについて適用された振り分けルールに従って、対応する既存オブジェクトが格納されているサーバと同じサーバに更新オブジェクトを振り分ける。
 開示の技術の実施形態に係る情報処理装置10によれば、振り分けルールが複数存在する場合でも、更新オブジェクトは、対応する既存オブジェクトが格納されたサーバと同じサーバに格納されるので、最新のオブジェクトの特定を容易にすることが可能である。
 また、情報処理装置10は、ユーザによって作成されたバケット毎に振り分けルールを設定する。すなわち、情報処理装置10は、第1の振り分けルールに対応付けられた第1のバケットに収容されたオブジェクトについては、第1の振り分けルールに従ってオブジェクトを振り分ける。第2の振り分けルールに対応付けられた第2のバケットに収容されたオブジェクトについては、第2の振り分けルールに従ってオブジェクトを振り分ける。このように、バケット毎に振り分けルールを設定可能とすることで、サーバの効率的な運用が可能となる。
[第2の実施形態]
 ストレージシステム100にストレージノードとして機能するサーバを増設する場合について考える。図8には、サーバ[4]20D及びサーバ[5]20Eが、新たに追加された場合が例示されている。サーバ[4]20D及びサーバ[5]20Eの追加前に作成されたバケットに対応する振り分けルール(以下、旧ルールという)は、サーバ[4]20D及びサーバ[5]20Eの存在を想定したものとなっておらず、従って、旧ルールに従うオブジェクトの振り分け先には、追加されたサーバ[4]20D及びサーバ[5]20Eが含まれないことが通常である。
 図8に示す例では、旧ルールとして、サーバ[1]20Aへのオブジェクト30の分配比率を50%とし、サーバ[2]20Bへのオブジェクト30の分配比率を25%とし、サーバ[3]20Cへのオブジェクト30の分配比率を25%とすること(分配比率2:1:1)が規定されている。オブジェクトの分配比率は、例えばサーバの処理能力に応じて定めることが可能である。すなわち、より高い処理能力を有するサーバに対するオブジェクトの分配比率を、より高く設定してもよい。これにより、サーバの処理能力を加味した負荷を均一にすることができる。
 サーバ[4]20D及びサーバ[5]20Eの追加後においても、旧ルールが適用される限り、サーバ[4]20D及びサーバ[5]20Eにオブジェクトを振り分けることができない。そこで、本実施形態に係る情報処理装置10においては、あるバケットに対して設定された振り分けルールが変更可能とされている。すなわち、ストレージノードとして機能するサーバが新たに追加された場合、追加されたサーバが振り分け先に含まれる新たな振り分けルール(以下、新ルールと称する)が、情報処理装置10に設定される。
 図8に示す例では、新ルールとして、サーバ[1]20Aへのオブジェクト30の分配比率を20%とし、サーバ[2]20Bへのオブジェクト30の分配比率を10%とし、サーバ[3]20Cへのオブジェクト30の分配比率を10%とし、サーバ[4]20Dへのオブジェクト30の分配比率を30%とし、サーバ[5]20Eへのオブジェクト30の分配比率を30%とすること(分配比率2:1:1:3:3)が規定されている。
 図9は、本実施形態に係る情報処理装置10の記憶部13に保存されるルール情報61の一例を示す図である。図9に示すように、情報処理装置10の記憶部13には、サーバの追加前に策定された旧ルール(第1の振り分けルール)と、サーバの追加後に策定された新ルール(第2の振り分けルール)が記憶される。情報処理装置10は、例えば、バケットの作成時に旧ルールを生成し、これを記憶部13に保存し、サーバの追加時に新ルールを生成し、これを記憶部13に保存する。情報処理装置10は、新旧の振り分けルールを生成する場合、例えば、その時点において設置されているサーバの処理能力を加味した負荷が均等になるように振り分けルールを生成する。また、情報処理装置10は、新旧の振り分けルールを生成する場合、どの振り分けルールが最新であるのかを示す履歴情報をルール情報61に含める。
 本実施形態に係る情報処理装置10は、CPU11が情報処理プログラム60を実行することにより、受付部70、選択部71、決定部72及び送信部73として機能する(図4参照)。
 受付部70は、端末装置50から送信された格納対象のオブジェクトを受け付ける。
 選択部71は、格納対象のオブジェクトをストレージノードとして機能するサーバに振り分ける際の振り分けルールを選択する。本実施形態において、選択部71は、格納対象のオブジェクトが新規オブジェクトである場合、その時点において最新の振り分けルールを選択する。すなわち、情報処理装置10の記憶部13に、新ルールが保存されている場合、格納対象のオブジェクトについて適用する振り分けルールとして、新ルールが選択される。一方、選択部71は、格納対象のオブジェクトが更新オブジェクトである場合、対応する既存オブジェクトについて適用された振り分けルールを選択する。すなわち、選択部71は、格納対象のオブジェクトが更新オブジェクトであり且つ対応する既存オブジェクトについて適用された振り分けルールが旧ルールである場合、格納対象のオブジェクトについて適用する振り分けルールとして、旧ルールを選択する。一方、選択部71は、格納対象のオブジェクトである更新オブジェクトに対応する既存オブジェクトについて適用された振り分けルールが新ルールである場合、その格納対象のオブジェクトについて適用する振り分けルールとして、新ルールを選択する。
 選択部71は、格納対象のオブジェクトについて選択した振り分けルールと、そのオブジェクトの識別情報と対応付けた振り分けログを作成し、この振り分けログを記憶部13に保存する。選択部71は、振り分けルールを選択する際に振り分けログを参照し、格納対象のオブジェクトが、新規オブジェクトであるか更新オブジェトであるかを判定してもよい。例えば、格納対象のオブジェクトの識別情報と同じ識別情報を有するオブジェクトが、振り分けログに記録されている場合、そのオブジェクトは更新オブジェクトであると判定することができる。また、格納対象のオブジェクトが更新オブジェクトである場合、振り分けログを参照することで、対応する既存オブジェクトについて適用された振り分けルールが旧ルールであるか新ルールであるかを判定することができる。
 決定部72は、選択部71によって選択された振り分けルールに従う振り分け先となるサーバを決定する。具体的には、上記した第1の実施形態に係る情報処理装置10と同様、決定部72は、格納対象のオブジェクトの識別情報のハッシュ値aを算出し、選択部71によって選択された振り分けルールに応じて定まる除数bでハッシュ値aを除算したときの余りcを算出し、余りcの値に基づいて、当該オブジェクトの振り分け先を決定する。
 例えば、選択部71によって選択された振り分けルールが、図9に例示された新ルール(分配比率2:1:1:3:3)である場合、決定部72は、振り分けルールに応じて定まる除数bとして10(=2+1+1+3+3)を導出する。決定部72は格納対象のオブジェクトの識別情報のハッシュ値aを除数b(=10)で除算したときの余りcが0又は1である場合、格納対象のオブジェクトの振り分け先をサーバ[1]20Aに決定し、余りcが2である場合、格納対象のオブジェクトの振り分け先をサーバ[2]20Bに決定し、余りcが3である場合、格納対象のオブジェクトの振り分け先をサーバ[3]20Cに決定し、余りcが4、5又は6である場合、格納対象のオブジェクトの振り分け先をサーバ[4]20Dに決定し、余りcが7、8又は9である場合、格納対象のオブジェクトの振り分け先をサーバ[5]20Eに決定する。これにより、格納対象のオブジェクト30の、サーバ[1]20A~サーバ[5]20Eへの振り分けを、新ルールに従う分配比率(2:1:1:3:3)で行うことが可能となる。
 更新オブジェクトの識別情報は、既存オブジェクトの識別情報と同じであるので、更新オブジェクトについて算出される余りcは、既存オブジェクトについて算出される余りcと同一である。従って、既存オブジェクトが格納されているサーバと同じサーバが、更新オブジェクトの振り分け先として決定される。
 送信部73は、決定部72によって決定された振り分け先となるサーバに格納対象のオブジェクトを送信する。格納対象のオブジェクトは、振り分け先のサーバが備えるハードディスク等の記憶媒体に記憶される。
 以下に、本実施形態に係る情報処理装置10の作用について、図6を参照しつつ説明する。
 ステップS1において、受付部70は、端末装置50から送信された格納対象のオブジェクト30を受け付ける。
 ステップS2において、選択部71は、ステップS1で受付けたオブジェクトについて適用する振り分けルールを選択する。具体的には、選択部71は、上述の振り分けログを参照することで、ステップS1で受け付けたオブジェクトが新規オブジェクトであるか更新オブジェトであるかを判定する。選択部71は、ステップS1で受付けたオブジェクトが、新規オブジェクトである場合、その時点において最新の振り分けルールを選択する。一方、選択部71は、ステップS1で受付けたオブジェクトが、更新オブジェクトである場合、対応する既存オブジェクトについて適用された振り分けルールを選択する。選択部71は、振り分けログを参照することで、既存オブジェクトについて適用された振り分けルールを特定する。
 ステップS3において、決定部72は、ステップS2で選択された振り分けルールに従う振り分け先を決定する。具体的には、決定部72は、ステップS1で受け付けたオブジェクトの識別情報のハッシュ値aを算出し、ステップS2で選択された振り分けルールに応じて定まる除数bでハッシュ値aを除算したときの余りcを算出し、余りcの値に基づいて、格納対象のオブジェクトの振り分け先を決定する。
 ステップS4において、送信部73は、ステップS1で受け付けたオブジェクトをステップS3で決定した振り分け先となるサーバに送信する。当該オブジェクトは、振り分け先のサーバが備えるハードディスク等の記憶媒体に記憶される。
 以上のように、本実施形態に係る情報処理装置10は、それぞれストレージノードとして機能する複数のサーバのいずれかに、予め設定された振り分けルールに従ってオブジェクトを振り分ける。本実施形態では、振り分けルールが、サーバの追加前に設定された旧ルール(第1の振り分けルール)と、サーバの追加後に設定され、追加されたストレージノードを振り分け先に含む新ルール(第2の振り分けルール)と、を含む場合を想定する。情報処理装置10は、振り分け対象のオブジェクトが、新規オブジェクトである場合、最新の振り分けルール、すなわち新ルール(第2の振り分けルール)に従って新規オブジェクトを振り分ける。情報処理装置10は、振り分け対象のオブジェクトが、更新オブジェクトである場合、旧ルール(第1の振り分けルール)及び新ルール(第2の振り分けルール)のうち、対応する既存オブジェクトについて適用された振り分けルールに従って、対応する既存オブジェクトが格納されているサーバと同じサーバに更新オブジェクトを振り分ける。
 本実施形態に係る情報処理装置10によれば、振り分けルールが複数存在する場合でも、更新オブジェクトは、対応する既存オブジェクトが格納されたサーバと同じサーバに格納されるので、最新のオブジェクトの特定を容易にすることが可能である。なお、本実施形態では、旧ルール及び新ルールの2つの振り分けルールがルール情報61に含まれている場合を示しているが、この態様に限定されない。例えば、振り分けルールの更新が2回以上行われた場合には、ルール情報61には、3つ以上の振り分けルールが含まれる。
[第3の実施形態]
 上記のように、情報処理装置10は、作成されたバケットに対して振り分けルールを設定する。情報処理装置10は、バケットに対する振り分けルールの設定を以下のよう行ってもよい。
 ユーザは、端末装置50を用いて、管理コンソール上でバケットを作成する際に、そのバケットに収容されるオブジェクトの格納先となるサーバ群の設置場所(以下、リージョンという)を指定することが可能である。ユーザがリージョンを指定してバケットを作成し、そのバケットにオブジェクトを配置してアップロードすると、そのオブジェクトは、指定されたリージョンに設置されたサーバ群に格納される。
 本実施形態において、振り分けルールは、予めリージョンに対応付けられている。図10には、サーバ[1]20A~サーバ[3]20Cが設置されたリージョンAに振り分けルールAが対応付けられ、サーバ[4]20D及びサーバ[5]20Eが設置されたリージョンBに振り分けルールBが対応付けられ、サーバ[1]20A~サーバ[5]20Eが設置されたリージョンCに振り分けルールCが対応付けられている場合が例示されている。
 図11は、本実施形態に係る情報処理装置10の記憶部13に保存されるルール情報61の一例を示す図である。図11には、リージョンAに対応付けられた振り分けルールA、リージョンBに対応付けられた振り分けルールB、及びリージョンCに対応付けられた振り分けルールCが例示されている。振り分けルールAは、リージョンAに設置されたサーバ[1]20A~サーバ[3]20Cの各々に対するオブジェクトの分配比率を規定したものである。振り分けルールBは、リージョンBに設置されたサーバ[4]20D~サーバ[5]20Eの各々に対するオブジェクトの分配比率を規定したものである。振り分けルールCは、リージョンCに設置されたサーバ[1]20A~サーバ[5]20Eの各々に対するオブジェクトの分配比率を規定したものである。
 端末装置50からのリージョンの指定を伴ったバケットの作成指示は、情報処理装置10によって受け付けられる。情報処理装置10は、作成指示がなされたバケットに収容されるオブジェクトを、指定されたリージョンに設置されたサーバ群に振り分ける。情報処理装置10は、当該バケットについて適用する振り分けルールとして、当該バケットについて指定されたリージョンに対応付けられた振り分けルールを設定する。情報処理装置10は、図11に例示したルール情報61を参照し、指定されたリージョンに対応する振り分けルールを、当該バケットについて適用する振り分けルールとして設定する。
 情報処理装置10は、例えば、リージョンAを指定するバケットの作成指示を受け付けると、そのバケットに受け入れられるオブジェクトについて適用する振り分けルールとして、リージョンAに対応付けられた振り分けルールAを設定する。情報処理装置10は、そのバケット内に収容されるオブジェクトを、振り分けルールAに従って、リージョンAに設置されたサーバ群に振り分ける。
 上記の各実施形態において、例えば、受付部70、選択部71、決定部72及び送信部73といった各種の処理を実行する処理部(processing unit)のハードウェア的な構造としては、次に示す各種のプロセッサ(processor)を用いることができる。上記各種のプロセッサには、前述したように、ソフトウェア(プログラム)を実行して各種の処理部として機能する汎用的なプロセッサであるCPUに加えて、FPGA等の製造後に回路構成を変更可能なプロセッサであるプログラマブルロジックデバイス(Programmable Logic Device:PLD)、ASIC(Application Specific Integrated Circuit)等の特定の処理を実行させるために専用に設計された回路構成を有するプロセッサである専用電気回路等が含まれる。
 1つの処理部は、これらの各種のプロセッサのうちの1つで構成されてもよいし、同種又は異種の2つ以上のプロセッサの組み合わせ(例えば、複数のFPGAの組み合わせや、CPUとFPGAとの組み合わせ)で構成されてもよい。また、複数の処理部を1つのプロセッサで構成してもよい。
 複数の処理部を1つのプロセッサで構成する例としては、第1に、クライアント及びサーバ等のコンピュータに代表されるように、1つ以上のCPUとソフトウェアの組み合わせで1つのプロセッサを構成し、このプロセッサが複数の処理部として機能する形態がある。第2に、システムオンチップ(System on Chip:SoC)等に代表されるように、複数の処理部を含むシステム全体の機能を1つのIC(Integrated Circuit)チップで実現するプロセッサを使用する形態がある。このように、各種の処理部は、ハードウェア的な構造として、上記各種のプロセッサの1つ以上を用いて構成される。
 更に、これらの各種のプロセッサのハードウェア的な構造としては、より具体的には、半導体素子などの回路素子を組み合わせた電気回路(circuitry)を用いることができる。
 また、上記実施形態では、情報処理プログラム60が記憶部13に予め記憶(インストール)されている態様を説明したが、これに限定されない。情報処理プログラム60は、CD-ROM(Compact Disc Read Only Memory)、DVD-ROM(Digital Versatile Disc Read Only Memory)、及びUSB(Universal Serial Bus)メモリ等の記録媒体に記録された形態で提供されてもよい。また、情報処理プログラム60は、ネットワークを介して外部装置からダウンロードされる形態としてもよい。
 なお、2020年8月18日に出願された日本国特許出願2020-138221の開示は、その全体が参照により本明細書に取り込まれる。また、本明細書に記載された全ての文献、特許出願および技術規格は、個々の文献、特許出願、および技術規格が参照により取り込まれることが具体的かつ個々に記された場合と同程度に、本明細書中に参照により取り込まれる。

Claims (8)

  1.  少なくとも1つのプロセッサを備え、予め設定された振り分けルールに従って、格納対象のオブジェクトを複数のストレージノードの何れかに格納する情報処理装置であって、
     前記プロセッサは、
     格納対象のオブジェクトが新規に作成された新規オブジェクトである場合、前記新規オブジェクトの格納要求があった時点において設定されている振り分けルールに従って前記新規オブジェクトを振り分け、
     格納対象のオブジェクトが、前記複数のストレージノードのいずれかに格納されている既存オブジェクトの更新である更新オブジェクトである場合、対応する既存オブジェクトについて適用された振り分けルールに従って、対応する既存オブジェクトが格納されているストレージノードと同じストレージノードに前記更新オブジェクトを振り分ける
     情報処理装置。
  2.  前記プロセッサは、
     格納対象のオブジェクトを受け入れる複数の収容領域のうちの第1の振り分けルールに対応付けられた第1の収容領域に収容されたオブジェクトについては、前記第1の振り分けルールに従って振り分け、
     前記複数の収容領域のうちの第2の振り分けルールに対応付けられた第2の収容領域に収容されたオブジェクトについては、前記第2の振り分けルールに従って振り分ける
     請求項1に記載の情報処理装置。
  3.  前記振り分けルールとして、ストレージノードの追加前に設定された第1の振り分けルールと、ストレージノードの追加後に設定され、追加されたストレージノードを振り分け先に含む第2の振り分けルールと、を含み、
     前記プロセッサは、
     格納対象のオブジェクトが、前記新規オブジェクトである場合、前記第2の振り分けルールに従って前記新規オブジェクトを振り分け、
     振り分け対象のオブジェクトが、前記更新オブジェクトである場合、前記第1の振り分けルール及び前記第2の振り分けルールのうち、対応する既存オブジェクトについて適用された振り分けルールに従って、対応する既存オブジェクトが格納されているストレージノードと同じストレージノードに前記更新オブジェクトを振り分ける
     請求項1に記載の情報処理装置。
  4.  前記更新オブジェクトが対応する既存オブジェクトと同じ識別情報を有し、
     前記プロセッサは、前記識別情報に基づいて、格納対象のオブジェクトの振り分け先となるストレージノードを決定する
     請求項1から請求項3の何れか1項に記載の情報処理装置。
  5.  前記プロセッサは、前記識別情報のハッシュ値を、適用する振り分けルールに応じた除数で除算したときの余りの値に基づいて、格納対象のオブジェクトの振り分け先となるストレージノードを決定する
     請求項4に記載の情報処理装置。
  6.  前記プロセッサは、
     格納対象のオブジェクトを受け入れる収容領域の作成指示及び、前記収容領域に受け入れられるオブジェクトの格納先となるストレージノード群の設置場所の指定を受付け、
     前記作成指示がなされた収容領域に受け入れられるオブジェクトを、前記指定がなされた設置場所に設置されたストレージノード群に振り分ける際の振り分けルールとして、前記指定がなされた設置場所に対応付けられた振り分けルールを適用する
     請求項1から請求項5のいずれか1項に記載の情報処理装置。
  7.  予め設定された振り分けルールに従って、格納対象のオブジェクトを複数のストレージノードの何れかに格納する処理を行う情報処理方法であって、
     格納対象のオブジェクトが新規に作成された新規オブジェクトである場合、前記新規オブジェクトの格納要求があった時点において設定されている振り分けルールに従って前記新規オブジェクトを振り分け、
     格納対象のオブジェクトが、前記複数のストレージノードのいずれかに格納されている既存オブジェクトの更新である更新オブジェクトである場合、対応する既存オブジェクトについて適用された振り分けルールに従って、対応する既存オブジェクトが格納されているストレージノードと同じストレージノードに前記更新オブジェクトを振り分ける
     処理を情報処理装置が備える少なくとも1つのプロセッサが実行する情報処理方法。
  8.  予め設定された振り分けルールに従って、格納対象のオブジェクトを複数のストレージノードの何れかに格納する処理を情報処理装置が備える少なくとも1つのプロセッサに実行させるための情報処理プログラムであって、
     格納対象のオブジェクトが新規に作成された新規オブジェクトである場合、前記新規オブジェクトの格納要求があった時点において設定されている振り分けルールに従って前記新規オブジェクトを振り分け、
     格納対象のオブジェクトが、前記複数のストレージノードのいずれかに格納されている既存オブジェクトの更新である更新オブジェクトである場合、対応する既存オブジェクトについて適用された振り分けルールに従って、対応する既存オブジェクトが格納されているストレージノードと同じストレージノードに前記更新オブジェクトを振り分ける
     処理を前記プロセッサに実行させるための情報処理プログラム。
PCT/JP2021/026633 2020-08-18 2021-07-15 情報処理装置、情報処理方法及び情報処理プログラム WO2022038933A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2022543323A JPWO2022038933A1 (ja) 2020-08-18 2021-07-15
CN202180056214.9A CN116034341A (zh) 2020-08-18 2021-07-15 信息处理装置、信息处理方法及信息处理程序
EP21858082.7A EP4202674A4 (en) 2020-08-18 2021-07-15 INFORMATION PROCESSING APPARATUS, INFORMATION PROCESSING METHOD AND INFORMATION PROCESSING PROGRAM
US18/160,311 US20230161732A1 (en) 2020-08-18 2023-01-27 Information processing apparatus, information processing method, and information processing program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2020-138221 2020-08-18
JP2020138221 2020-08-18

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US18/160,311 Continuation US20230161732A1 (en) 2020-08-18 2023-01-27 Information processing apparatus, information processing method, and information processing program

Publications (1)

Publication Number Publication Date
WO2022038933A1 true WO2022038933A1 (ja) 2022-02-24

Family

ID=80323621

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/026633 WO2022038933A1 (ja) 2020-08-18 2021-07-15 情報処理装置、情報処理方法及び情報処理プログラム

Country Status (6)

Country Link
US (1) US20230161732A1 (ja)
EP (1) EP4202674A4 (ja)
JP (1) JPWO2022038933A1 (ja)
CN (1) CN116034341A (ja)
TW (1) TW202215221A (ja)
WO (1) WO2022038933A1 (ja)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004229130A (ja) 2003-01-24 2004-08-12 Fujitsu Ltd 振り分け制御装置
JP2010272011A (ja) 2009-05-22 2010-12-02 Toshiba Corp オーバーレイネットワークシステム及び同システムにおけるオブジェクト登録方法
JP2013093050A (ja) * 2013-02-04 2013-05-16 Intec Inc ストレージサービス提供装置、システム、サービス提供方法、及びサービス提供プログラム
JP2017184195A (ja) 2016-03-31 2017-10-05 日本電気株式会社 通信管理装置、通信管理方法及びプログラム
JP2018520402A (ja) * 2015-06-26 2018-07-26 インテル・コーポレーション 複数の選択可能なデータ処理ポリシーを有するオブジェクトベースのストレージクラスタ
JP2020138221A (ja) 2019-02-28 2020-09-03 三菱電機株式会社 金型、管加工機および把持装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8589574B1 (en) * 2005-12-29 2013-11-19 Amazon Technologies, Inc. Dynamic application instance discovery and state management within a distributed system
US9600558B2 (en) * 2013-06-25 2017-03-21 Google Inc. Grouping of objects in a distributed storage system based on journals and placement policies

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004229130A (ja) 2003-01-24 2004-08-12 Fujitsu Ltd 振り分け制御装置
JP2010272011A (ja) 2009-05-22 2010-12-02 Toshiba Corp オーバーレイネットワークシステム及び同システムにおけるオブジェクト登録方法
JP2013093050A (ja) * 2013-02-04 2013-05-16 Intec Inc ストレージサービス提供装置、システム、サービス提供方法、及びサービス提供プログラム
JP2018520402A (ja) * 2015-06-26 2018-07-26 インテル・コーポレーション 複数の選択可能なデータ処理ポリシーを有するオブジェクトベースのストレージクラスタ
JP2017184195A (ja) 2016-03-31 2017-10-05 日本電気株式会社 通信管理装置、通信管理方法及びプログラム
JP2020138221A (ja) 2019-02-28 2020-09-03 三菱電機株式会社 金型、管加工機および把持装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
SBARSKI, PETER.: "Serverless Architectures on AWS; First ed.", 14 March 2018, SHOEISHA CO., LTD., JP, ISBN: 978-4-7981-5516-6, article PETER SBARSKI: "Passages; Serverless Architectures on AWS", pages: 234-236, 332 - 333, XP009534745 *

Also Published As

Publication number Publication date
JPWO2022038933A1 (ja) 2022-02-24
CN116034341A (zh) 2023-04-28
TW202215221A (zh) 2022-04-16
US20230161732A1 (en) 2023-05-25
EP4202674A1 (en) 2023-06-28
EP4202674A4 (en) 2023-09-20

Similar Documents

Publication Publication Date Title
JP3859994B2 (ja) ストレージ・デバイス上でのスペースの割振りを管理する方法、システム、およびプログラム記憶媒体
CN105531972B (zh) 控制数据存储输入/输出请求
US7266649B2 (en) Storage apparatus and area allocation method
EP1244221A1 (en) Method and system for eliminating data redundancies
CN110995596B (zh) 基于SRv6网络的SID分配方法和装置
US20100138540A1 (en) Method of managing organization of a computer system, computer system, and program for managing organization
JP2004054721A (ja) ネットワークストレージ仮想化方法
JP6881575B2 (ja) 資源割当システム、管理装置、方法およびプログラム
JP2008041093A (ja) 多数の論理パーティションにわたって仮想入力/出力操作を分散させるためのシステム及び方法
CN108028833A (zh) 一种nas数据访问的方法、系统及相关设备
JP2004280485A (ja) 計算機システム
CN107465729B (zh) 基于访问次数排名的虚拟节点副本调整系统及方法
CN108200211B (zh) 集群中镜像文件下载的方法、节点和查询服务器
KR100985690B1 (ko) 복수의 ess 셀에 다운로드 가능한 콘텐츠를 저장하는 방법, 시스템 및 컴퓨터 판독가능 기록 매체
WO2022038933A1 (ja) 情報処理装置、情報処理方法及び情報処理プログラム
WO2022038934A1 (ja) 情報処理装置、情報処理方法及び情報処理プログラム
JP7062813B2 (ja) 管理サーバ、ネットワークシステム、ルータの管理方法、及びプログラム
WO2022038935A1 (ja) 情報処理装置、情報処理方法、及び情報処理プログラム
JP6129698B2 (ja) ソフトウェア配布システム、およびソフトウェア配布方法
WO2022196104A1 (ja) 情報処理装置、ストレージシステム、情報処理方法、及び情報処理プログラム
CN116401227A (zh) 一种集群配置方法、装置、设备及介质
JP2003157197A (ja) ダウンロード方法、ダウンロード補助方法及びコンピュータ
JP7021742B2 (ja) 情報処理装置、情報処理方法、プログラム
CN115964367A (zh) 对象存储方法、装置、电子设备及存储介质
CN112860654A (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: 21858082

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2022543323

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2021858082

Country of ref document: EP

Effective date: 20230320