The present invention relates to a computer which retrieves computer resources such as servers and storages and network resources, required by a computer system, from other computer systems.
Computer resources such as servers and storages and network resources, required for executing programs in computer systems, are called resources. A computer system manages the usage of the resources in the own system, and when the load increases or a failure occurs in any of the resources, the computer system secures a resource to be used from among the unused resources in the own system. However, in recent years, in order to cope with resource shortage, accommodation of resources between computer systems has been proposed and put into practical use.
Patent Document 1 discloses an example of this type of art. The art disclosed in Patent Document 1 is intended for clusters as computer systems, and retrieves a resource satisfying the conditions required by a first cluster, of a group of clusters communicable with one another over networks, from among resources of other clusters.
Patent Document 1: JP 2006-23948 A
Patent Document 1 is based on an assumption that a computer system, which is a borrower of a resource, is communicable with all other computer systems which are lenders of resources. As such, under a circumstance where there is a computer system not connected with a computer system which is a borrower of a resource in the other computer systems, even if retrieval of a resource succeeds, actual accommodation of the resource fails, because in order to use a resource of other computer systems as a resource of a borrower computer system, it is necessary that the borrower computer system and the other computer system are communicable with each other.
An object of the present invention is to provide a computer which solves the above-described problem, that is, a problem that a resource which cannot be accommodated in practice may be retrieved.
A computer, according to an aspect of the present invention, is a computer connected with a plurality of computer systems each having one or more resources, the resources being a computer resource and a network resource. The computer is configured to include
a network information storage means for storing information relating to a network connecting a first computer system and second computer systems, the first computer system being a particular computer system of the plurality of the computer systems, the second computer systems being computer systems other than the particular computer system; and
a retrieval means for computing a set of the second computer systems connected with the first computer system over the network based on the information relating to the network stored in the network information storage means, and retrieving a resource to be provided for use in the first computer system, from among resources held by the second computer systems included in the computed set.
Further, a resource retrieval method, according to another aspect of the present invention, is a method to be executed by a computer connected with a plurality of computer systems each having one or more resources, the resources being a computer resource and a network resource, the computer including network information storage means for storing information relating to a network connecting a first computer system and second computer systems, the first computer system being a particular computer system of the plurality of the computer systems, the second computer systems being computer systems other than the particular computer system. The method is configured to include
computing a set of the second computer systems connected with the first computer system over the network based on the information relating to the network stored in the network information storage means; and
retrieving a resource to be provided for use in the first computer system, from among resources held by the second computer systems included in the computed set.
With the above-described configuration, the present invention is able to prevent a case where a resource which cannot be accommodated in practice is retrieved.
Next, exemplary embodiments of the present invention will be described in detail with reference to the drawings.
Referring to
The communication channels 2 are communication channels for exchanging messages relating to resource retrieval between the computer 3 and the computer systems 1. The communication channels 2 are configured of dedicated lines, public network lines, or Internet connections, for example.
Each of the computer systems 1 includes one or more resources 4 and a computer 5. The size of each of the computer systems 1 is arbitrary. For example, one computer system 1 may be a data center system, or one of a plurality of computer systems constituting a data center system. The resources 4 are computer resources and network resources necessary for executing programs, and in the present embodiment, they are server computers and storage devices. The computer 5 is one particular computer in each of the computer systems 1, and is communicable with the computer 3 via the communication channel 2.
The networks 8 are networks providing communication channels for transferring business data among the computer systems 1. The network 8 may be wide-area Ethernet (Ethernet is a registered trademark), for example. Each of the computer systems 1 is not necessarily connected with all other computer systems 1 over the networks 8. Some of the computer systems 1 are only connected with part of the other computer systems 1 over the networks 8.
The computer 5 transmits a borrowing request message to the computer 3 when the own computer system 1 becomes a borrower of a resource. The borrowing request message includes the type of a resource to be borrowed and the conditions of the resource. Meanwhile, if the own computer system 1 becomes a lender of a resource, the computer 5 transmits, in advance or upon request from the computer 3, a lending request message including the type of a resource to be lent and the conditions of the resource.
The computer 3 is connected with computers 5 of the computer systems 1 via the communication channels 2, and has a function of retrieving a resource satisfying the resource conditions provided in the borrowing request message received from any of the computers 5, from the other computer systems 1. The computer 3 includes a network information storage section 6 and a retrieval section 7.
The network information storage section 6 has a function of storing information relating to the networks 8 connecting the computer systems 1. In the present embodiment, the information relating to the networks 8 must be at least information with which whether the computer systems 1 are connected over the networks 8 is distinguishable, and information of whether or not the line status is free is not always necessary.
The retrieval section 7 has a function of computing a set of other computer systems from which a resource satisfying the resource conditions provided in the borrowing request message is retrieved, based on the information stored in the network information storage section 6. A set to be computed includes all other computer systems which are connected with the borrower computer system over the networks 8, and the other computer systems not connected with the borrower computer system over the networks 8 are not included. The retrieval section 7 also has a function of retrieving a resource satisfying the resource conditions provided in the borrowing request message, from among the resources of the other computer systems included in the computed set.
Hereinafter, operation of the present embodiment will be described by way of example in which the computer system 1-1 is a borrower of a resource.
When the computer 5-1 of the computer system 1-1 wishes to borrow a resource from other computer systems 1, the computer 5-1 transmits a borrowing request message including the type of the resource that it wishes to borrow and the resource conditions, to the computer 3 through the communication channel 2-1.
When the retrieval section 7 of the computer 3 receives the borrowing request message from the computer system 1-1, the retrieval section 7 refers to the network information storage section 6 and computes a set of other computer systems from which a resource satisfying the resource conditions in the borrowing request message is retrieved. Specifically, the retrieval section 7 checks, for each of the other computer systems 1-2 to 1-N, whether or not it is connected with the borrower computer system 1-1 over the network 8 with reference to the network information storage section 6, and computes a set only including the other computer systems connected with the computer system 1-1. For example, in the case of a connection form shown in
Next, the retrieval section 7 retrieves a resource satisfying the resource conditions in the borrowing request, from the other computer systems 1-2 to 1-N included in the set. Specifically, from the computer systems, of the computer systems 1-2 to 1-N included in the set, which transmit a lending request message including the type of the resource that the system wishes to lend and the resource conditions thereof, to the computer 3 beforehand or when a request is made from the computer 3, the retrieval section 7 retrieves at least one lending resource which is of the same type as the resource type in the borrowing request message and has resource conditions satisfying the resource conditions in the borrowing request message.
When the retrieval section 7 succeeds in the retrieval, the retrieval section 7 determines one of the resources in the retrieval result to be a resource to be accommodated. Then, regarding the determined resource, the retrieval section 7 transmits a resource securement request message to the computer 5-1 of the borrower computer system 1-1, and transmits a resource release request message to the lender computer system 1. The resource securement request message includes the lender computer system 1 and identification information of the lending resource. The resource release request message includes the borrower computer system 1-1 and identification information of the lending resource.
Meanwhile, if the retrieval section 7 fails in the retrieval, the retrieval section 7 transmits a message describing failure of the retrieval, with a copy of the lending request, to the computer 5-1 of the borrower computer system 1-1.
In this way, according to the present embodiment, it is possible to prevent a resource which cannot be accommodated in practice from being retrieved. This is because the computer 3 computes a set of computer systems from which a resource satisfying the resource conditions in a borrowing request message is retrieved and which include other computer systems connected with the borrower computer system over the networks, and retrieves a resource satisfying the resource conditions of the borrower from the resources of the other computer systems included in the computed set.
Referring to
The computer 10 includes, as main function sections, a communication interface section (hereinafter referred to as a communication I/F section) 11, an operation input section 12, a screen display section 13, a storage section 14, and a processor 15.
The communication I/F section 11 is configured of a dedicated data communication circuit, and has a function of performing data communications with various devices such as the computer systems 1 connected through the communication channels 2.
The operation input section 12 is configured of operation input devices such as a keyboard and a mouse, and has a function of detecting operations performed by an operator and outputting them to the processor 15.
The screen display section 13 is configured of a screen display device such as an LCD or a PDP, and has a function of displaying, on the screen, various types of information such as retrieval results in accordance with instructions from the processor 15.
The storage section 14 is configured of storage devices such as a hard disk and a memory, and has a function of storing processing information necessary for various types of processing performed by the processor 15, and programs 14P. The programs 14P are programs which are read and executed by the processor 15 to thereby realize various types of processing sections. The programs 14P are read in advance from external devices (not shown) and storage media (not shown) thorough data input/output functions such as the communication I/F section 11, and are stored in the storage section 14.
Main processing information stored in the storage section 14 includes lending resource information 14A, borrowing resource information 14B, and network information 14C.
The lending resource information 14A is information relating to a resource to be lent, received from a computer system which is a lender of the resource.
In the present embodiment, the resource conditions 14A4 are configured of performance 14A41, period 14A42, and price 14A43. The performance 14A41 is conditions relating to the specification, performance, and capacity of the lending resource. For example, in the case of a server, the performance 14A41 includes CPU type, clock frequency, HDD capacity, and OS type, In the case of a storage, the performance 14A41 includes storage capacity and RAID level. The period 14A42 represents the lending period of the lending resource. The price 14A43 represents the lending price per unit period of the lending resource.
The borrowing resource information 14B is information relating to the borrowing resource received from the computer system which is a resource lender.
The resource conditions 14B4 includes performance 14B41, period 14B42, and price 14B43. The performance 14B41 is a condition relating to the specification, performance, and capacity of the borrowing resource. The period 14B42 represents the borrowing period of the borrowing resource. The price 14B43 represents the borrowing price per unit period of the borrowing resource.
The network information 14C is information regarding the network 8 which connects the computer systems 1 with each other.
The processor 15 includes a microprocessor such as a CPU and the peripheral circuitry thereof, and has a function of reading and executing a program 14P from the storage section 14 so as to realize various types of processing sections by allowing the hardware and the program 14P to operate in cooperation with each other. The main processing sections realized by the processor 15 include an input section 15A, a retrieval section 15B, and an output section 15C.
The input section 15A has a function of storing the lending resource information 14A, the borrowing resource information 14B, and the network information 14C, input from the communication I/F section 11 or the operation input section 12, in the storage section 14.
The retrieval section 15B has a function of, for each piece of the borrowing resource information 14B, retrieving a resource satisfying the resource conditions required by the borrower, from the lending resource information 14A of other computer systems connected over the network with the computer system which is the borrower of the resource.
The output section 15C has a function of notifying the borrower computer system and the lender computer system of the retrieval result of the retrieval section 15B, and displaying it on the screen display section 13.
Next, operation of the present embodiment will be described.
When the input section 15A receives a message including lending resource information from the lender computer system 1 via the communication I/F section 11, the input section 15A stores it in the storage section 14 as one piece of the lending resource information 14A. As the input section 15A performs processing preferentially in order of arrival, the lending resource information 14A may be stored in a queue of a first-in first-out method.
Further, when the input section 15A receives the message including the borrowing resource information from the borrower computer system 1 via the communication I/F section 11, the input section 15A stores it as one piece of the borrowing resource information 14B in the storage section 14. As the input section 15A performs processing preferentially in order of arrival, the borrowing resource information 14B may be stored in a queue of a first-in first-out method.
When the input section 15A receives network information via the communication I/F section 11 or the operation input section 12, the input section 15A stores it in the storage section 14 as the network information 14C.
Next, operation of the retrieval section 15B and the output section 15C will be described.
First, the retrieval section 15B reads one piece of the borrowing resource information 14B from the storage section 14, and focuses on such borrowing resource information 14B (step S1). Then, after confirming that there is focused borrowing resource information 14B (step S2), the retrieval section 15B computes a set of retrieval target computer systems (step S3). Specifically, the retrieval section 15B reads a computer system identifier 14B1 of the borrower from the focused borrowing resource information 14B. Then, the retrieval section 15B reads the matrix (
Then, the retrieval section 15B determines whether or not the set is empty (step S4). If the set is empty, the retrieval section 15B performs retrieval failure processing (step S12). In the retrieval failure processing, the retrieval section 15B compares the start time of the period 14B42 in the focused borrowing resource information 14B with the current time, and determines whether or not the current time is before the “start time−α (α is a predetermined spare time)”. If the current time is before the “start time−α”, the retrieval section 15B writes back the focused borrowing resource information 14B at the end of the queue of the borrowing resource information in the storage section 14. On the other hand, if the current time is the “start time−α” or after, the retrieval section 15B notifies the computer system identified by the computer system identifier 14B1 in the focused borrowing resource information 14B of the retrieval failure with the focused borrowing resource information 14B via the output section 15C and the communication I/F section 11. Then, the retrieval section 15B reads the next one piece of the borrowing resource information 14B from the storage section 14, and then focuses on such borrowing resource information 14B (step S13). Then, the retrieval section 15B returns to step S2.
On the other hand, if the set is not empty, the retrieval section 15B reads one piece of the lending resource information 14A from the storage section 14, and focuses on such lending resource information 14A (step S5). Then, after confirming that there is focused lending resource information 14A (step S6), the retrieval section 15B determines whether or not a computer system identifier 14A1 in the focused lending resource information 14A is included in the set (step S7). If it is not included, after writing back the focused lending resource information 14A at the end of the queue of the lending resource information in the storage section 14, the retrieval section 15B reads the next one piece of the lending resource information 14A from the storage section 14, and moves focus to such lending resource information 14A (step S8). Then, the retrieval section 15B returns to step S6.
If the computer system identifier 14A1 in the focused lending resource information 14A is included in the set, the retrieval section 15B compares the resource conditions 14B4 in the focused borrowing resource information 14B with the resource conditions 14A4 in the focused lending resource information 14A, and determines whether or not they match (steps S9, S10). Comparison between the resource conditions is performed between performances, between periods, and between prices. If they match in all of the three aspects of performances, periods, and prices, the retrieval section 15B determines that the lending resource and the resource conditions of the borrowing resource match.
In the comparison between the performances, regarding those other than numeral values such as CPU types and OS types, if the performance of the lending resource are the same as or compatible with the performance of the borrowing resource, they are determined to match. Further, in the case of numeral values such as clock frequencies and HDD capacities, only if the numeral value of the borrowing resource is not larger than the numeral value of the lending resource and the difference between them is not larger than a predetermined quantity, for example, they are determined to match. In the comparison between the periods, only if the borrowing period of the borrowing resource is within the lending period of the lending resource and the difference between the start date/time and the difference between the ending date/time of the both periods are not more than a predetermined quantity, for example, they are determined to match. In the comparison between the prices, only if the borrowing price of the borrowing resource is not higher than the lending price of the lending resource and the difference between them is not more than a predetermined value, for example, they are determined to match. Of course, the method of comparing performances, periods, and prices is not limited to that described above, and any methods can be adopted.
When the retrieval section 15B founds the lending resource information 14A matching the focused borrowing resource information 14B, the retrieval section 15B performs retrieval success processing (step S11). In the retrieval success processing, the retrieval section 15B notifies the computer system, identified by the computer system identifier 14B1 in the focused borrowing resource information, of a resource securement request message along with the focused borrowing resource information 14B and the matched lending resource information 14A, via the output section 15C and the communication I/F section 11. Further, the retrieval section 15B notifies the computer system, identified by the computer system identifier 14A1 in the focused lending resource information 14A, of a resource release request message along with the focused lending resource information 14A and the matched borrowing resource information 14B, via the output section 15C and the communication I/F section 11. Then, the retrieval section 15B reads the next one piece of the borrowing resource information 14B from the storage section 14, and moves focus to such borrowing resource information 14B (step S13). Then, the retrieval section 15B returns to step S2.
At step S2, when the retrieval section 15B detects that there is no borrowing resource information 14B to be focused any more, the retrieval section 15B ends the processing of
In the processing of
In contrast to the processing of
As described above, according to the present embodiment, it is possible to prevent a resource which cannot be accommodated in practice from being retrieved. This is because the computer 10 computes a set of computer systems 1 from which a resource satisfying the resource conditions of the borrower is retrieved and which do not include other computer systems 1 not connected with the borrower computer system 1 over the network 8, and retrieves a resource satisfying the resource conditions required by the borrower from among the resources of the other computer systems 1 included in the computed set.
In particular, the present embodiment is preferable for the case where the computer systems 1 are connected with one another over the network 8 having a sufficient bandwidth.
Referring to
The computer 20 includes, as main function sections, a communication I/F section 21, an operation input section 22, a screen display section 23, a storage section 24, and a processor 25.
The communication I/F section 21, the operation input section 22, and the screen display section 23 are the same as the communication I/F section 11, the operation input section 12, and the screen display section 13 of the second exemplary embodiment.
The storage section 24 is configured of storage devices such as a hard disk and a memory, and has a function of storing processing information necessary for various types of processing performed by the processor 25, and programs 24P. The programs 24P are programs which are read and executed by the processor 25 to thereby realize various types of processing sections. The programs 24P are read in advance from external devices (not shown) and storage media (not shown) thorough data input/output functions such as the communication I/F section 21, and are stored in the storage section 24.
Main processing information stored in the storage section 24 includes lending resource information 24A, borrowing resource information 24B, network information 24C, and free line information 24D.
The lending resource information 24A, the borrowing resource information 24B, and the network information 24C are the same as the lending resource information 14A, the borrowing resource information 14B, and the network information 14C of the second exemplary embodiment.
The free line information 24D is information of a free line of the network 8 connecting the computer systems 1 with one another.
The processor 25 includes a microprocessor such as a CPU and the peripheral circuitry thereof, and has a function of reading and executing a program 24P from the storage section 24 so as to realize various types of processing sections by allowing the hardware and the program 24P to operate in cooperation with each other. The main processing sections realized by the processor 25 include an input section 25A, a retrieval section 25B, and an output section 25C.
The input section 25A has a function of storing the lending resource information 24A, the borrowing resource information 24B, and the free line information 24D input from the communication I/F section 21 or the operation input section 22 in the storage section 24. The input section 25A also has a function of generating the network information 24C in the initial state and storing it in the storage section 24, when storing the free line information 24D.
The retrieval section 25B has a function of, for each piece of the borrowing resource information 24B, retrieving a resource satisfying the resource conditions required by the borrower, from the lending resource information 24A of other computer systems 1 connected over the network 8 with the computer system 1 which is the borrower of the resource.
The output section 25C has a function of notifying the borrower computer system 1 and the lender computer system 1 of the retrieval result of the retrieval section 25B, and displaying it on the screen display section 23.
Next, operation of the present embodiment will be described.
When the input section 25A receives a message including lending resource information from the lender computer system 1 via the communication I/F section 21, the input section 25A stores it in the storage section 24 as one piece of the lending resource information 24A. As the input section 25A performs processing preferentially in order of arrival, the lending resource information 24A may be stored in a queue of a first-in first-out method.
When the input section 25A receives the message including the borrowing resource information from the borrower computer system 1 via the communication I/F section 21, the input section 25A stores it as one piece of the borrowing resource information 24B in the storage section 24. As the input section 25A performs processing preferentially in order of arrival, the borrowing resource information 24B may be stored in a queue of a first-in first-out method.
Further, when the input section 25A receives free line information via the communication I/F section 21 or the operation input section 22, the input section 25A stores it in the storage section 24 as free line information 24D. Then, based on the free line information 24D, the input section 25A generates network information 24C in the initial state, and stores it in the storage section 24. Specifically, the input section 25A generates matrix data in which predetermined identifiers of all of the computer systems 1 take the vertical and horizontal axes, and at each of the intersections of the axes, a logical value “0” (non-connected) is stored. Then, the input section 25A performs the following processing for each piece of the free line information 24D; that is, in the case where the free line information 24D is free line information of the network between two computer systems identified by the computer system identifiers “1” and “2”, for example, if a logical value “0” (free) is set in any time zone ahead of the time of “current time−α (α is predetermined spare time)” for either one line identifier, the input section 25A rewrites the value at the intersection between the identifiers of the two computer systems in the network information 24C, from the logical value “0” (non-connected) to a logical value “1” (connected). The input section 25A repeats this processing for all pieces of the free line information 24D.
Next, operation of the retrieval section 25B will be described. The overall flow of the operation follows the flowchart of
In the comparison of resource conditions at step S9, the retrieval section 25B also checks presence or absence of a free line of the network 8, and if resource conditions are satisfied and there is a free line in the network 8 connecting the borrower computer system 1 and the lender computer system 1 in the period (14B42) of the borrowing resource conditions, the retrieval section 25B determines that they “match”. Whether or not there is a free line in the period (14B42) of the borrowing resource is determined with reference to the free line information 24D according to the network 8 connecting the borrower computer system 1 and the lender computer system 1.
In the retrieval success processing at step S11, the retrieval section 25B updates the free line information 24D, and also updates the network information 24C as needed. Specifically, the retrieval section 25B rewrites the logical value “0” (free) of any one of the lines in which the logical values are “0” (free) during the period of the borrowing resource in the free line information 24D according to the network 8 connecting the borrower computer system 1 and the lender computer system 1, to a logical value “1” (busy). Further, due to the rewriting, if there is no line in which a logical value “0” (free) is set in any time zone ahead of the time of “current time−α”, the retrieval section 25B rewrites the value at the intersection corresponding to the borrower computer system 1 and the lender computer system 1 in the network information 24C, from a logical value “1” (connected) to a logical value “0” (non-connected).
As described above, according to the present embodiment, it is possible to prevent a resource which cannot be accommodated in practice from being retrieved. This is because the computer 20 computes a set of computer systems 1 from which a resource satisfying the resource conditions of the borrower is retrieved, the set including other computer systems 1 connected with the borrower computer system 1 over the network 8 having a free line, and retrieves a resource satisfying the resource conditions of the borrower from among the resources of the other computer systems 1 included in the computed set.
In particular, the present embodiment is preferable for the case where the network 8 connecting the computer systems 1 does not have a sufficient bandwidth.
Referring to
The computer 30 includes, as main function sections, a communication I/F section 31, an operation input section 32, a screen display section 33, a storage section 34, and a processor 35.
The communication I/F section 31, the operation input section 32, and the screen display section 33 are the same as the communication I/F section 21, the operation input section 22, and the screen display section 23 of the third exemplary embodiment.
The storage section 34 is configured of storage devices such as a hard disk and a memory, and has a function of storing processing information necessary for various types of processing performed by the processor 35 and programs 34P. The programs 34P are programs which are read and executed by the processor 35 to thereby realize various types of processing sections. The programs 34P are read in advance from external devices (not shown) and storage media (not shown) thorough data input/output functions such as the communication I/F section 31, and are stored in the storage section 34.
Main processing information stored in the storage section 34 includes lending resource information 34A, borrowing resource information 34B, network information 34C, free line information 34D, and quality information 34E.
The lending resource information 34A, the network information 34C, and the free line information 34D are the same as the lending resource information 24A, the network information 24C, and the free line information 24D of the third exemplary embodiment.
The borrowing resource information 34B is information relating to a borrowing resource received from a computer system which is a borrower of the resource.
The quality information 34E is quality information of communication lines of the network 8 connecting the computer systems 1 with one another.
The processor 35 includes a microprocessor such as a CPU and peripheral circuitries thereof, and has a function of reading and executing the program 34P from the storage section 34 so as to realize various types of processing sections by allowing the hardware and the program 34P to operate in cooperation with each other. The main processing sections realized by the processor 35 include an input section 35A, a retrieval section 35B, and an output section 35C.
The input section 35A has a function of storing the lending resource information 34A, the borrowing resource information 34B, the free line information 34D, and the quality information 34E, input from the communication I/F section 31 or the operation input section 32, in the storage section 34. The input section 35A also has a function of generating the network information 34C in the initial state and storing it in the storage section 34, when storing the free line information 34D, which is the same as the input section 25A in the third exemplary embodiment.
The retrieval section 35B has a function of, for each piece of the borrowing resource information 34B, retrieving a resource satisfying the resource conditions required by the borrower, from the lending resource information 34A of other computer systems connected over the network 8 with the computer system 1 which is the borrower of the resource.
The output section 35C has a function of notifying the borrower computer system 1 and the lender computer system 1 of the retrieval result of the retrieval section 35B, and displaying it on the screen display section 33.
Next, operation of the present embodiment will be described.
When the input section 35A receives a message including lending resource information from a lender computer system 1 via the communication I/F section 31, the input section 35A stores it in the storage section 34 as one piece of the lending resource information 34A. As the input section 35A performs processing preferentially in order of arrival, the lending resource information 34A may be stored in a queue of a first-in first-out method.
Further, when the input section 35A receives a message including borrowing resource information from a borrower computer system 1 via the communication I/F section 31, the input section 35A stores it as one piece of the borrowing resource information 24B in the storage section 34. As the input section 35A performs processing preferentially in order of arrival, the borrowing resource information 34B may be stored in a queue of a first-in first-out method.
Further, when the input section 35A receives free line information and quality information via the communication I/F section 31 or the operation input section 32, the input section 35A stores them in the storage section 34 as the free line information 34D and the quality information 34E. Then, based on the free line information 34D, the input section 35A generates the network information 34C in the initial state, and stores it in the storage section 34.
Next, operation of the retrieval section 35B will be described. The overall flow of the operation follows the flowchart of
In the comparison of resource conditions at step S9, the retrieval section 25B checks not only presence or absence of a free line in the network 8 but also quality of the network 8, and if the resource conditions match and there is a free line in the network 8 which connects the borrower computer system 1 and the lender computer system 1 in the period (14B42) of the borrowing resource conditions, and further, if the quality of the free line satisfies the desired quality, the retrieval section 25B determines that they “match”. The quality of the line is acquired with reference to the quality information 34E according to the network 8 connecting the borrower computer system 1 and the lender computer system 1. The retrieval section 25B determines whether or not the acquired quality satisfies the desired quality. As the desired quality, the quality condition 34B5 in the borrowing resource information 34B shown in
As described above, according to the present embodiment, it is possible to retrieve a resource in consideration of the state of a free line and the quality condition of the network between the computer systems 1.
While the present invention has been described with reference to the exemplary embodiments described above, the present invention is not limited to the above-described embodiments, and various additions and modifications can be made therein. For example, in the third and fourth exemplary embodiments, the free line information 24D and the free line information 34D are kept for all of the networks 8 connecting the computer systems 1. However, it is possible to divide all of the networks 8 connecting the computer systems 1 into networks having a sufficient bandwidth and the other networks, and keep the free line information 24D and the free line information 34D only for the latter networks (networks not having a sufficient bandwidth).
The present invention is based upon and claims the benefit of priority from Japanese patent application No. 2011-170768, filed on Aug. 4, 2011, the disclosure of which is incorporated herein in its entirety by reference.
The present invention is applicable to overall resource retrieval for resource accommodation between computer systems such as cloud computing systems, grid computing systems, and data center systems.
The whole or part of the exemplary embodiments disclosed above can be described as, but not limited to, the following supplementary notes.
A computer connected with a plurality of computer systems each having one or more resources, the resources being a computer resource and a network resource, the computer comprising:
network information storage means for storing information relating to a network connecting a first computer system and second computer systems, the first computer system being a particular computer system of the plurality of the computer systems, the second computer systems being computer systems other than the particular computer system; and
retrieval means for computing a set of the second computer systems connected with the first computer system over the network based on the information relating to the network stored in the network information storage means, and retrieving a resource to be provided for use in the first computer system, from among resources held by the second computer systems included in the computed set.
The computer according to supplementary note 1, wherein
the retrieval means retrieves a resource satisfying a resource condition required by the first computer system as the resource to be provided for use in the first computer system, from among the resources held by the second computer systems included in the set.
The computer according to supplementary note 1, wherein
the information relating to the network connecting the first computer system and the second computer systems includes matrix data in which identifiers of the first computer system and the second computer systems take a vertical axis and a horizontal axis, and presence or absence of a network connection is associated at each of intersections of the axes, and
the retrieval means computes the set based on the matrix data, and retrieves a resource satisfying a resource condition required by the first computer system as the resource to be provided for use in the first computer system, from among the resources held by the second computer systems included in the computed set.
The computer according to supplementary note 1, wherein
the information relating to the network connecting the first computer system and the second computer systems includes:
the retrieval means computes the set based on the matrix data, and retrieves a resource satisfying a resource condition required by the first computer system as the resource to be provided for use in the first computer system, from among the resources held by the second computer systems which are included in the computed set and in which a free line is present in the network with the first computer system.
The computer according to supplementary note 1, wherein
the information relating to the network connecting the first computer system and the second computer systems includes:
the retrieval means computes the set based on the matrix data, and retrieves a resource satisfying a resource condition required by the first computer system as the resource to be provided for use in the first computer system, from among the resources held by the second computer systems which are included in the computed set and in which a free line satisfying quality required by the first computer system is present in the network with the first computer system.
The computer according to supplementary note 4 or 5, wherein
when the retrieval means has determined a resource to be provided for use in the first computer system, the retrieval means updates the free line information of the network connecting the second computer system having the determined resource and the first computer system, by a quantity to be used by the determined resource.
The computer according to supplementary note 6, wherein
if there is no free line any more in the network connecting the first computer system and the second computer systems due to updating of the free line information of the network, the retrieval means updates a value of a corresponding intersection in the matrix data to a state in which there is no network connection.
The computer according to supplementary note 6 or 7, wherein
the resource condition includes a condition relating to a period, and
the retrieval means updates the free line information of the network according to the period included in the resource condition.
A resource retrieval method to be executed by a computer connected with a plurality of computer systems each having one or more resources, the resources being a computer resource and a network resource, the computer including network information storage means for storing information relating to a network connecting a first computer system and second computer systems, the first computer system being a particular computer system of the plurality of the computer systems, the second computer systems being computer systems other than the particular computer system, the method comprising:
computing a set of the second computer systems connected with the first computer system over the network, based on the information relating to the network stored in the network information storage means; and
retrieving a resource to be provided for use in the first computer system, from among resources held by the second computer systems included in the computed set.
The resource retrieval method according to supplementary note 9, wherein
the retrieving includes retrieving a resource satisfying a resource condition required by the first computer system as the resource to be provided for use in the first computer system, from among the resources held by the second computer systems included in the set.
The resource retrieval method according to supplementary note 9, wherein
the information relating to the network connecting the first computer system and the second computer systems includes matrix data in which identifiers of the first computer system and the second computer systems take a vertical axis and a horizontal axis, and presence or absence of a network connection is associated at each of intersections of the axes,
the computing includes computing the set based on the matrix data, and
the retrieving includes retrieving a resource satisfying a resource condition required by the first computer system as the resource to be provided for use in the first computer system, from among the resources held by the second computer systems included in the computed set.
The resource retrieval method according to supplementary note 9, wherein
the information relating to the network connecting the first computer system and the second computer systems includes:
the computing includes computing the set based on the matrix data, and
the retrieving includes retrieving a resource satisfying a resource condition required by the first computer system as the resource to be provided for use in the first computer system, from among the resources held by the second computer systems which are included in the computed set and in which a free line is present in the network with the first computer system.
The resource retrieval method according to supplementary note 9, wherein
the information relating to the network connecting the first computer system and the second computer systems includes:
the computing includes computing the set based on the matrix data, and
the retrieving includes retrieving a resource satisfying a resource condition required by the first computer system as the resource to be provided for use in the first computer system, from among the resources held by the second computer systems which are included in the computed set and in which a free line satisfying quality required by the first computer system is present in the network with the first computer system.
The resource retrieval method according to supplementary note 12 or 13, wherein
the retrieving includes, when a resource to be provided for use in the first computer system has been determined, updating the free line information of the network connecting the second computer system having the determined resource and the first computer system, by a quantity to be used by the determined resource.
The resource retrieval method according to supplementary note 14, wherein
the retrieving includes, if there is no free line any more in the network connecting the first computer system and the second computer systems due to updating of the free line information of the network, updating a value of a corresponding intersection in the matrix data to a state in which there is no network connection.
The resource retrieval method according to supplementary note 14 or 15, wherein
the resource condition includes a condition relating to a period, and
the retrieving includes updating the free line information of the network according to the period included in the resource condition.
A program and a computer-readable medium storing a program for causing a computer to execute the steps of, the computer being connected with a plurality of computer systems each having one or more resources, the resources being a computer resource and a network resource, the computer including network information storage means for storing information relating to a network connecting a first computer system and second computer systems, the first computer system being a particular computer system of the plurality of the computer systems, the second computer systems being computer systems other than the particular computer system:
computing a set of the second computer systems connected with the first computer system over the network, based on the information relating to the network stored in the network information storage means; and
retrieving a resource to be provided for use in the first computer system, from among resources held by the second computer systems included in the computed set.
The program and the computer-readable medium storing the program, according to supplementary note 17, wherein
the retrieving includes retrieving a resource satisfying a resource condition required by the first computer system as the resource to be provided for use in the first computer system, from among the resources held by the second computer systems included in the set.
The program and the computer-readable medium storing the program, according to supplementary note 17, wherein
the information relating to the network connecting the first computer system and the second computer systems includes matrix data in which identifiers of the first computer system and the second computer systems take a vertical axis and a horizontal axis, and presence or absence of a network connection is associated at each of intersections of the axes,
the computing includes computing the set based on the matrix data, and
the retrieving includes retrieving a resource satisfying a resource condition required by the first computer system as the resource to be provided for use in the first computer system, from among the resources held by the second computer systems included in the computed set.
The program and the computer-readable medium storing the program, according to supplementary note 17, wherein
the information relating to the network connecting the first computer system and the second computer systems includes:
the computing includes computing the set based on the matrix data, and
the retrieving includes retrieving a resource satisfying a resource condition required by the first computer system as the resource to be provided for use in the first computer system, from among the resources held by the second computer systems which are included in the computed set and in which a free line is present in the network with the first computer system.
The program and the computer-readable medium storing the program, according to supplementary note 17, wherein
the information relating to the network connecting the first computer system and the second computer systems includes:
the computing includes computing the set based on the matrix data, and
the retrieving includes retrieving a resource satisfying a resource condition required by the first computer system as the resource to be provided for use in the first computer system, from among the resources held by the second computer systems which are included in the computed set and in which a free line satisfying quality required by the first computer system is present in the network with the first computer system.
The program and the computer-readable medium storing the program, according to supplementary note 20 or 21, wherein
the retrieving includes, when a resource to be provided for use in the first computer system has been determined, updating the free line information of the network connecting the second computer system having the determined resource and the first computer system, by a quantity to be used by the determined resource.
The program and the computer-readable medium storing the program, according to supplementary note 22, wherein
the retrieving includes, if there is no free line any more in the network connecting the first computer system and the second computer systems due to updating of the free line information of the network, updating a value of a corresponding intersection in the matrix data to a state in which there is no network connection.
The program and the computer-readable medium storing the program, according to supplementary note 22 or 23, wherein
the resource condition includes a condition relating to a period, and
the retrieving includes updating the free line information of the network according to the period included in the resource condition.
Number | Date | Country | Kind |
---|---|---|---|
2011-170768 | Aug 2011 | JP | national |
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/JP2012/004495 | 7/12/2012 | WO | 00 | 1/17/2014 |