The present invention relates to a scalability evaluation device, a scalability evaluation method, and a scalability evaluation program.
In regard to this field, in patent document 1, it is described that a design support system of an IT system creates a system plan satisfying a design reference value of a processing performance based on data required to design the IT system in a processing performance evaluation unit.
In patent document 2, it is described that a context-aware server performance evaluation system controls an evaluation module and evaluates the scalability, the processing speed, and the stability of a context-aware server.
In patent document 3, a performance evaluation device performance evaluation device including a performance evaluation unit for evaluating a performance of a development target system with respect to each of a processing time required to perform an action and a waiting time is described.
However, the above-mentioned technology has a problem in which the scalability of the system cannot be evaluated based on variation of a request to the system.
For this reason, an object of the present invention is to provide a scalability evaluation device which can solve the above-mentioned problem and evaluate the scalability of the system based on the variation of the request to the system, a scalability evaluation method, and a scalability evaluation program.
In order to achieve the objective, one aspect of the present invention is a scalability evaluation device which comprises:
A scalability evaluation device comprising:
planning means for receiving a request model, which is change prediction information of a request to a system and changing a scaling point, which is a configuration of said system which satisfies a condition for each of periods of said request model based on a predetermined rule,
scaling cost calculation means for calculating a scaling cost, which is a cost required for changing said scaling point and outputting said scaling cost, and
performance calculation means for calculating a performance value, which is a value representing a performance of the system when said scaling point is changed by said planning means and outputting said performance value.
Further, according to the present invention, provided is a scalability evaluation method comprising: receiving a request model, which is change prediction information of a request to a system and changing a scaling point, which is a configuration of said system which satisfies a condition for each period of said request model based on a predetermined rule,
calculating a scaling cost, which is a cost required for changing said scaling point and outputting said scaling cost, and
calculating a performance value, which is a value representing a performance of the system when said scaling point is changed and outputting said performance value.
Still further, according to the present invention, provided is a scalability evaluation program for causing a computer to execute:
a planning step in which a request model, which is change prediction information of a request to a system is received and a scaling point, which is a configuration of said system which satisfies a condition for each of periods of said request model is changed based on a predetermined rule,
a scaling cost calculation step in which a scaling cost, which is a cost required for changing said scaling point is calculated and outputted, and
a performance calculation step in which a performance value, which is a value representing a performance of the system when said scaling point is changed is calculated and outputted.
The present invention provides a scalability evaluation device which can evaluate the scalability of the system based on the variation of the request to the system, a scalability evaluation method, and a scalability evaluation program.
Hereinafter, an exemplary embodiment of the present invention will be described by using drawings. The same reference numbers are used for the elements having the same function in all the drawings and the description is omitted appropriately.
Each block of which a scalability evaluation device 100 according to each exemplary embodiment is composed of a control unit, a memory, a program loaded in the memory, a storage unit such as a hard disk or the like for storing the program, an interface for network connection, and the like and realized by an arbitrary combination of hardware and software. In the absence of description, an arbitrary method for realizing it and an arbitrary device can be used.
The control unit is composed of a CPU (Central Processing Unit) and the like, controls the entire scalability evaluation device 100 by operating an operating system, reads out the program and the data from a recording medium mounted in for example, a drive device and stores it to the memory, and executes various processes according to this.
The recording medium is for example, an optical disk, a flexible disk, a magnetic optical disk, an external hard disk, a semiconductor memory, or the like and records a computer program so as to be computer-readable. The computer program may be downloaded from an external computer (not shown) connected to a communication network. Further, the communication network may be Internet, a LAN (Local Area Network), a public line network, a wireless communication network, a network composed of a combination of these networks, or the like.
The block diagram used for explanation of each exemplary embodiment is a functional block diagram and each block does not represent a hardware unit. These functional blocks are realized by an arbitrary combination of hardware and software. Further, in these figures, a configuration block according to each exemplary embodiment may be shown so as to be realized by one device in which a plurality of devices are physically connected. However, means for realizing this is not limited to the described means. Namely, two or more physically separated devices are connected by a wire line or a wireless line and by using these plurality of devices, each configuration block, the device, or the system of each exemplary embodiment may be realized. There is a case in which each configuration block is described as two or more physically separated devices. However, means for realizing this is not limited to the described means. Namely, each configuration block, the device, or the system according to each exemplary embodiment may be realized by arbitrarily combining hardware and software so as to be realized by one device in which two or more devices are physically combined.
Next, a first exemplary embodiment for carrying out the invention will be described in detail with reference to
Referring to
These blocks will be described.
The model storage block 1 stores model information in which a configuration of a system and its operation are modeled. Here, the model information is information required for simulation such as information on a configuration of a server as described in
The request model input block 2 receives a request model in which a change of utilization situation of the system is described. Here, the utilization situation of the system is a situation of request to the system, traffic of the system, or the like. As shown in for example,
The planning block 3 determines a place at which the model is scaled up so as to satisfy the received request. Specifically, the planning block 3 determines a variable configuration place (scaling point) included in the model so that the model stored in the model storage block 1 can respond to the time change required by each request model received in the request model input block 2 and outputs a scaling content to the performance calculation block 4. For example, the planning block 3 acquires information on the change of the utilization situation of the system over time from the request model and determines the place (the number of CPUs, the number of DBs (Databases), and the number of VMs (Virtual Machines)) at which the configuration of the system has to be changed in order to respond to the time change based on a load which changes by the request, a processing ability of each configuration, and the like through a calculation. For example, the planning block 3 may determine a system configuration place which meets a change condition of the request model by using a predetermined function (that is, a predetermined function f represented by a function of f((expected arrival rate, data amount, data writing/reading rate))=(the number of CPUs, the number of DBs, the number of VMs) which outputs a vector (the number of CPUs, the number of DBs, the number of VMs) whose components are the number of the CPUs, the number of the DBs, the number of the VMs, and the like that are the numbers of the components of which the system is composed by using a load to the system that changes by the request or a vector (expected arrival rate, data amount, data writing/reading rate) whose components are the conditions such as the expected arrival rate, the data amount, the data writing/reading rate, and the like of the request model as an input. This function can be appropriately set according to an empirical rule by a user. Further, the planning block 3 may refer to a storage unit by which the utilization situation of the system, a change in the request, and the configuration of the system which can respond to the change are associated with each other and stored and determine the system configuration place that meets a change condition of the request model. An example of a table stored in such storage unit is shown in
The performance calculation block 4 evaluates a performance when the device is scaled up. Specifically, the performance calculation block 4 applies the content of scale-up of the configuration that is outputted by the planning block 3 to the model and calculates the performance (a value obtained by quantifying a processing ability such as a possible calculation amount, a calculation speed, or the like, a performance value for example, the number of requests that can be processed per second, or the like) of the system that is obtained from the number of the CPUs, the number of the DBs, and the number of the VMs of the system whose configuration is changed. For example, the performance calculation block 4 may obtain the performance of the system by using a predetermined function (that is, a predetermined function g represented by a function of g((number of CPUs, number of DBs, number of VMs))=system performance value) which outputs the performance value of the system by using a vector (number of CPUs, number of DBs, number of VMs) whose components are the numbers of the components of which the system is composed. This function can be appropriately set according to an empirical rule by the user. Further, the performance calculation block 4 may refer to the storage unit (not shown) by which the configuration of the system and the performance of the system are associated with each other and stored and obtain the performance of the system.
The configuration change cost storage block 5 stores the cost required when the device is configured and scaled up. Specifically, a component to be changed when the device is scaled up, an initial cost (a cost required for establishing a configuration that satisfies the condition of each Case (period) of the request model from the beginning), and the cost required for changing the component at the time of scaling up are associated with each other and stored by the configuration change cost storage block 5. An example of the data stored in the configuration change cost storage block 5 is shown in
The scaling cost calculation block 6 calculates the cost (scaling cost) required for scaling up the scaling point based on the cost stored in the configuration change cost storage block 5. Specifically, the scaling cost calculation block 6 extracts the cost required for changing the configuration for each configuration of the scaling point from the configuration change cost storage block 5 and calculates the cost required for scaling up the scaling point.
The cost/performance data storage block 7 stores the calculated cost and performance. Specifically, the cost/performance data storage block 7 stores the scaling point calculated by the planning block 3, the performance calculated by the performance calculation block 4, and the scaling cost calculated by the scaling cost calculation block 6. An example of the data stored in the cost/performance data storage block 7 is shown in
The scalability evaluation value calculation block 8 calculates the scalability evaluation value for each request data from the data stored in the cost/performance data storage block 7. Specifically, the scalability evaluation value calculation block 8 calculates the scalability evaluation value for each request included in the request model by using the performance of the system and the scaling cost that are stored in the cost/performance data storage block 7. For example, the scalability evaluation value calculation block 8 may calculate the scalability evaluation value by using a formula: scalability evaluation value=(improved performance/cost). Further, the scalability evaluation value may be an evaluation value whose value is large when the improved system performance value is large and the required cost is small or an evaluation value whose value is small when the improved system performance value is small and the required cost is large. Especially, the scalability evaluation value is not limited.
The scalability evaluation value storage block 9 stores the scalability evaluation value for each change pattern of each configuration that is calculated by the scalability evaluation value calculation block 8. An example of the scalability evaluation value stored by the scalability evaluation value storage block 9 is shown in
Next, an example of an entire operation of the exemplary embodiment will be described in detail with reference to the flowchart shown in
First, the request model input block 2 receives the request model (step S1 in
Next, the effect of the exemplary embodiment will be described.
The scalability evaluation device 100 according to the exemplary embodiment obtains the scaling point of the system according to the received request model and evaluates the scalability. Accordingly, the scalability evaluation device 100 according to the exemplary embodiment can evaluate the scalability of the system that fits with the variation of the request to the system without designating the scaling point in advance.
Next, a second exemplary embodiment of the present invention will be described in detail with reference to
Referring to
These blocks will be described.
The operation service level storage block 10 stores the operation service level in which the operation time (quick response level) required for the scaling-up is described for each scaling point included in the model. The operation service level is a service level guaranteed by the system operation. Specifically, as shown in
The situation-specific countermeasure level storage block 11 stores a situation-specific countermeasure level in which a time required for implementing the countermeasure to the system against a change in the request in a short time such as a change in the request to the system in a time of emergency is described. Specifically, as shown in
The correspondence knowledge storage block 12 stores the correspondence knowledge showing whether or not the countermeasure to each scaling point can be immediately implemented for each scaling point of which the model can be scaled up. Specifically, as shown in
The situation-specific request model storage block 13 stores a situation-specific request in which the change in request in a short time that is caused by a reason other than a scaling-up of business is described. As the change in request (a kind of traffic) in a short time, for example, as shown in
The expected traffic synthesis block 14 creates a synthesis model in which the request model and the situation-specific request model are synthesized and receives it to the planning block 3. Specifically, the expected traffic synthesis block 14 obtains information on a period (in an example shown in
The scaling possibility place determination block 15 determines the scaling point included in the model based on operation service level information (
The situation-specific request model selection block 16 selects one or more situation-specific request models used for the planning performed by the planning block 3 among the situation-specific request models stored in the situation-specific request model storage block 13. The situation-specific request model selection block 16 may automatically select the situation-specific request model by expecting the request to the system or the user may directly select the situation-specific request model.
The request model storage block 17 stores the request model indicating the change in the request over time that is expected according to the change in the business content or a growth in service. Because the request model has been described in the exemplary embodiment 1, the detail description will be omitted.
The other configuration of this exemplary embodiment is almost the same as that of the first exemplary embodiment. Therefore, the detail description is omitted but the outline will be described below. In the scalability evaluation device 100 according to the second exemplary embodiment, the planning block 3 determines the scaling point of the model so that the system can deal with the expected traffic. The performance calculation block 4 calculates the performance of the model of which the scaling point is reflected. The scaling cost calculation block 6 calculates the scaling cost by using the scaling point and the configuration change cost. The scalability evaluation value calculation block 8 calculates the scalability evaluation value from the performance and the scaling cost. The scalability evaluation value storage block 9 stores the calculated scalability.
Next, an example of the entire operation of the exemplary embodiment will be described in detail by using the flowchart shown in
First, the request model input block 2 (not shown) receives the request model (step S1 in
Next, the operation of the exemplary embodiment will be specifically described.
As shown in
Next, the effect of the exemplary embodiment will be described.
The scalability evaluation device 100 according to the exemplary embodiment restricts the element of the model which can respond to the situation-specific request from the situation-specific countermeasure level, the operation service level, and the countermeasure knowledge and calculates the scalability evaluation value by performing the planning of the model based on the traffic obtained by synthesizing the situation-specific request model and the request model. Therefore, the scalability evaluation device 100 according to the exemplary embodiment can perform the evaluation of the scalability of the system that fits with the request variation even when not only the system is usually scaled up but also the system is scaled up by a sudden request variation.
Next, a third exemplary embodiment of the present invention will be described in detail with reference to
Referring to
The above-mentioned blocks will be described.
The request model variation knowledge storage block 23 stores a request model variation knowledge that is a knowledge for determining the situation of the request based on the change in the request such as an increasing rate of the request, an increasing duration, and the like. An example of the request model variation knowledge stored in the request model variation knowledge storage block 23 is shown in
As shown in
The request model variation determination block 26 determines a request model change situation (time change situation) based on the request model variation knowledge stored in the request model variation knowledge storage block 23 with respect to the received request model.
Next, an example of the entire operation of the exemplary embodiment will be described in detail with reference to the flowchart shown in
First, the request model input block 2 (not shown) receives the request model (step S1 in
Next, the effect of the exemplary embodiment will be described.
The scalability evaluation device 100 according to the exemplary embodiment determines the change in the situation-specific request model based on the request variation knowledge, restricts the element on the model which can respond to the situation-specific request, determines the scaling-up of the system so as to satisfy the request model, and evaluates the scalability. Therefore, the scalability evaluation device 100 according to the exemplary embodiment can perform the evaluation of the scalability of the system that fits with the variation of the request to the system.
Next, a fourth exemplary embodiment of the present invention will be described.
By this configuration, the scalability evaluation device including planning means for determining the scaling point of the configuration of the system so as to satisfy the condition of the received request model, scaling cost calculation means for calculating the scaling cost required for changing the configuration of the system with respect to the scaling point and outputting it, and performance calculation means for calculating the performance value of the system when the scaling point determined by the planning means is changed and outputting it is provided.
The scalability evaluation device 100 according to the exemplary embodiment can evaluate the scalability based on the variation of the request to the system. The present invention provides a scalability evaluation device, a scalability evaluation method, and a program for evaluating scalability.
Although the invention of the present application has been described with reference to the exemplary embodiment above, the invention of the present application is not limited to the above-mentioned exemplary embodiment. Various changes in the configuration or details of the invention of the present application that can be understood by those skilled in the art can be made without departing from the scope of the invention.
This application claims priority based on Japanese Patent Application No. 2010-183320 filed on Aug. 18, 2010, the disclosure of which is hereby incorporated by reference in its entirety.
Number | Date | Country | Kind |
---|---|---|---|
2010-183320 | Aug 2010 | JP | national |
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/JP2011/068817 | 8/16/2011 | WO | 00 | 2/14/2013 |