Performance impact evaluation device and performance impact evaluation method
11526416 · 2022-12-13
Assignee
Inventors
Cpc classification
International classification
Abstract
To provide a performance impact evaluation apparatus and a performance impact evaluation method in which it is possible to more accurately evaluate a performance impact caused by software data/process separation. A performance impact evaluation apparatus 1 evaluates a performance impact caused by separating data 2 used in software into an external DB 4. The performance impact evaluation apparatus 1 includes a log acquisition unit 21 configured to acquire a log for recording an access to the external DB 4 and an evaluation unit 22 configured to evaluate the performance impact by using an evaluation expression considering a software structure in addition to characteristics of the data 2, based on the log acquired by the log acquisition unit 21.
Claims
1. A performance impact evaluation apparatus that evaluates a performance impact caused by separating data used in software into an external database (DB), the apparatus comprising: a log acquisition unit configured to acquire a log for recording an access to the external DB; and an evaluation unit configured to evaluate the performance impact by using an evaluation expression considering a software structure in addition to characteristics of data, based on the log acquired by the log acquisition unit, wherein the evaluation unit evaluates the performance impact by using an evaluation expression that is different for each of (i) a portion of the software structure that is a sequentially-processed structure and (ii) a portion of the software structure that is a parallel-processed structure.
2. The performance impact evaluation apparatus according to claim 1, wherein: the evaluation unit evaluates the performance impact on the portion of the software structure that is the sequentially-processed structure by using an evaluation expression in which a delay impact is multiplied by a number of accesses.
3. The performance impact evaluation apparatus according to claim 2, wherein: the evaluation unit evaluates the performance impact on the portion of the software structure that is the sequentially-processed structure by using the following evaluation expression:
Performance Impact∝Frequency[Times/Call]×Traffic[Call/Sec]×Size[Byte]×Timer value[Sec].
4. The performance impact evaluation apparatus according to claim 1, wherein: the evaluation unit evaluates the performance impact on the portion of the software structure that is the parallel-processed structure by using an evaluation expression in which a delay impact is not accumulated.
5. The performance impact evaluation apparatus according to claim 4, wherein: the evaluation unit evaluates the performance impact on the portion of the software structure that is the parallel-processed structure by using the following evaluation expression:
Performance Impact∝Frequency[Times/Call]×Size[Byte].
6. A performance impact evaluation apparatus that evaluates a performance impact caused by separating data used in software into an external database (DB), the apparatus comprising: a log acquisition unit configured to acquire a log for recording an access to the external DB; and an evaluation unit configured to evaluate the performance impact by using an evaluation expression considering a software structure in addition to characteristics of data, based on the log acquired by the log acquisition unit, wherein the evaluation unit evaluates the performance impact by using an evaluation expression in which a size of accessed data has an impact by a number of accesses to the external DB.
7. A performance impact evaluation method for evaluating a performance impact caused by separating data used in software into an external database (DB), the method comprising: at a performance impact evaluation apparatus, acquiring a log for recording an access to the external DB; and evaluating the performance impact by using an evaluation expression that is different for a portion of the software structure that is a sequentially-processed structure and a portion of the software structure that is a parallel-processed structure, based on the log acquired in the acquiring.
Description
BRIEF DESCRIPTION OF DRAWINGS
(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
DESCRIPTION OF EMBODIMENTS
(11) Hereinafter, an embodiment of the present disclosure will be described with reference to the drawings. The same or similar components are denoted by the same or similar reference signs in description of the drawings.
Background
(12) As described above, it is not possible to achieve advantages only by migrating the known communication system itself to a new execution environment. For example, as illustrated in
(13) However, when migrating to a data separation type system as illustrated in
(14) Performance Impact Evaluation Apparatus
(15)
(16) A storage device 10 is a hard disk or the like that stores various types of data, and includes a log storage unit 11 and an evaluation expression storage unit 12. The log storage unit 11 stores a log acquired by a log acquisition unit 21. The evaluation expression storage unit 12 stores an evaluation expression used for evaluating a performance impact. A single-portion evaluation expression 12A is an evaluation expression used when a single portion is evaluated. A single portion means a portion which is sequentially processed in a software structure. A multi-portion evaluation expression 12B is an evaluation expression used when a multi-portion is evaluated. The multi-portion means a portion which is processed in parallel, in the software structure. In a case where evaluation is performed in consideration of characteristics of data 2, such an evaluation expression is also stored.
(17) A processing device 20 is, for example, a CPU that executes various types of processing. The processing device includes the log acquisition unit 21 and an evaluation unit 22. The log acquisition unit 21 acquires a log for recording an access to the external DB 4. The evaluation unit 22 evaluates the performance impact by using an evaluation expression considering a software structure in addition to characteristics of data 2, based on the log acquired by the log acquisition unit 21. A single-portion evaluation unit 22A evaluates the single portion by using a single-portion evaluation expression 12A. A multi-portion evaluation unit 22B evaluates the multi-portion by using a multi-portion evaluation expression 12B. In a case where evaluation is performed in consideration of characteristics of data 2, such an evaluation unit is also stored.
(18) “Software data/process separation” means separation of data 2 used by the processing server (application) 3 from a process P on the processing server 3 (see
(19) “The software data/process separation” may also be referred to as “separation of data 2 used in software into the external DB 4”. The external DB 4 is a database on an external apparatus connected to the processing server 3 via a communication network, and is typically a cloud computer.
(20) Operation
(21)
(22) Firstly, the log acquisition unit 21 acquires a log for recording an access to the external DB 4 (Step S1). For example, an access frequency per call and the size of each piece of data 2 are recorded in the log. In the following description, the size of data 2 may be simply referred to as “size”.
(23) The evaluation unit 22 determines whether a portion is a portion of the software structure that is a sequentially-processed structure or a portion of the software structure that is a parallel-processed structure (Step S2). Here, in a case where the portion is the portion of the software structure, which is a sequentially-processed structure, the single-portion evaluation unit 22A evaluates the single portion by using the single-portion evaluation expression 12A (Step S3). In a case where the portion is the portion of the software structure, which is processed in parallel, the multi-portion evaluation unit 22B evaluates the multi-portion by using the multi-portion evaluation expression 12B (Step S4).
(24) The above processes are repeated for all portions of the software (Steps S2.fwdarw.S3.fwdarw.S2.fwdarw. . . . , S2.fwdarw.S4.fwdarw.S2.fwdarw. . . . ). Finally, an evaluation value is output (Step S5), and then the process is ended.
(25) As a method of evaluating the performance impact considering the characteristics of data 2, a known method may be used. For example, as disclosed in Patent Literature 1, evaluation may be performed based on criteria as follows: (1) data accessed from a plurality of devices may be separated, and data accessed only from a particular device may not be separated; (2) In a case where an access is frequent or data capacity is large, the data may not be separated; (3) Data used in real-time response may not be separated; and (4) Data which is important and is designed with redundancy may be separated.
(26) Thus, a user can obtain an index for dividing data into data to be separated and data not to be separated, based on the evaluation value output from the performance impact evaluation apparatus 1. In addition, it is possible to understand a separation effect when the application 3 is designed, by separating the data. As a result, it is possible to obtain an index indicating whether a data separation type system is employed, for example, the data separation type system is employed in a case where the separation effect is high, and the data separation type system is not employed in a case where the separation effect is low.
COMPARATIVE EXAMPLE
(27) Next, a comparative example will be described. The comparative example corresponds to the technology disclosed in Patent Literature 1, but includes contents not disclosed in Patent Literature 1.
(28) In the comparative example, the degree of each characteristic is recognized based on the characteristics (size, access frequency, lifetime, or the like) of each piece of data 2, and the impact of data separation is evaluated from each degree. For example, as illustrated in
(29) Problem 1 of Comparative Example
(30) Next, Problem 1 of the comparative example will be described. When the comparative example is verified by verification, the characteristics affecting performance are the size and the access frequency. In the evaluation calculation, it is confirmed that the performance impact of the size is independent regardless of the access frequency, but the size affects the performance impact by the number of accesses. From this, it is understood that the size and the access frequency on the evaluation expression are dependent, not independent.
(31) In the comparative example, evaluation can be performed only when the application 3 accesses the external DB 4 once, as illustrated in
Example 1
(32) Next, Example 1 will be described. Example 1 is an example of the embodiment of the present disclosure, and is for solving Problem 1 of the comparative example. As described above, because the size and the access frequency are dependent, an evaluation expression [Math 1] is used in Example 1.
Comparative Example Performance Impact∝Access frequency+Size
Example 1 Performance Impact∝Access frequency×Size [Math 1]
(33) The data access frequency increases or decreases in proportion to traffic. With the evaluation expression in which the dependency between the access frequency and the size is reflected, it is possible to perform evaluation in accordance with the traffic in a communication system as an evaluation target.
(34) Problem 2 of Comparative Example
(35) Although the evaluation expression is expressed by [Math 1] from a viewpoint closed to the characteristics of the data 2, the software structure (parallel processing) also affects the performance. That is, the performance impact is different for a sequentially-processed structure and a parallel-processed structure. For example, as illustrated in
Example 2
(36) Next, Example 2 is described. Example 2 is an example of the embodiment of the present disclosure, and is for solving Problem 2 of the comparative example. In Example 2, in order to realize performance impact evaluation considering the software structure, the performance impact in the single portion and the multi-portion are as follows.
(37) Firstly, in a single portion, the performance impact is set to be multiplied by the number of accesses of all calls. Specifically, as illustrated in
(38) In a multi-portion, the performance impact is set to be multiplied by the number of accesses of each call. Specifically, as illustrated in
(39) The evaluation expression for each software structure will be specifically described below. Here, in order to clarify the characteristics of the evaluation expression in Example 2, description will be made in comparison with the evaluation expression in the comparative example.
(40) Firstly, it is assumed that the evaluation expression in the comparative example is an evaluation expression of [Math 2]. The access frequency [times/second] indicates the access frequency from the application 3 to the external DB 4, and the size [Byte] indicates the size of data 2A or 2B to be accessed (see
Performance Impact∝Access frequency[Times/Sec]×Size[Byte]∝Frequency[Times/Call]×Traffic[Call/Sec]×Size[Byte] [Math 2]
(41) On the contrary, in Example 2, as represented in [Math 3], in the single portion, the performance impact is multiplied by the number of accesses of all calls (see
Performance Impact∝Frequency[Times/Call]×Traffic[Call/Sec]×Size[Byte]×Timer value[Sec] [Math 3]
(42) In Example 2, as represented in [Math 4], in the multi-portion, the performance impact is multiplied by the number of accesses of one call (see
Performance Impact∝Frequency[Times/Call]×Size[Byte] [Math 4]
(43) As described above, according to Example 2, it is possible to evaluate the performance impact considering the software structure. In some cases, the evaluation considering only the characteristics of the data 2 does not match with the actual situation. However, it is possible to perform the evaluation more accurately by performing the evaluation considering the software structure. Specifically, as illustrated in
CONCLUSION
(44) As described above, the performance impact evaluation apparatus 1 according to the embodiment of the present disclosure is an apparatus that evaluates a performance impact caused by separating data 2 used in software into an external DB 4. The performance impact evaluation apparatus 1 includes a log acquisition unit 21 configured to acquire a log for recording an access to the external DB 4 and an evaluation unit 22 configured to evaluate the performance impact by using an evaluation expression considering a software structure in addition to characteristics of the data 2, based on the log acquired by the log acquisition unit 21. Thus, it is possible to provide the performance impact evaluation apparatus 1 in which it is possible to more accurately evaluate a performance impact caused by software data/process separation.
(45) Specifically, the evaluation unit 22 may evaluate the performance impact by using an evaluation expression, and the evaluation expression for a portion of the software structure that is a sequentially-processed structure is different from the evaluation expression for a portion of the software structure that is a parallel-processed structure. This is because the performance impact is different for a sequentially-processed structure and a parallel-processed structure.
(46) The evaluation unit 22 may evaluate the performance impact on the portion of the software structure, which is the sequentially-processed structure, by using an evaluation expression in which a delay impact is multiplied by the number of accesses. Thus, in a case of accessing the external DB 4 sequentially, it is possible to perform the evaluation suitable for the actual situation.
(47) The evaluation unit 22 may evaluate the performance impact on the portion of the software structure, which is the sequentially-processed structure, by using the following evaluation expression. Thus, the performance impact can be set to be multiplied by the number of accesses of all calls.
Performance Impact∝Frequency[Times/Call]×Traffic[Call/Sec]×Size[Byte]×Timer value[Sec] [Math 3]
(48) The evaluation unit 22 may evaluate the performance impact on the portion of the software structure, which is the parallel-processed structure, by using an evaluation expression in which a delay impact is not accumulated. As a result, evaluation in accordance with the actual conditions can be performed when accessing the external DB 4 in parallel.
(49) In addition, the evaluation unit 22 may evaluate the performance impact by using the following evaluation expression for the portion of the structure in which the software structure is processed in parallel. Thus, the performance impact can be set to be multiplied by the number of accesses of one call.
Performance Impact∝Frequency[Times/Call]×Size[Byte] [Math 4]
(50) The evaluation unit 22 may evaluate the performance impact by using an evaluation expression in which the size has an impact by the number of accesses to the external DB 4. Thus, it is possible to reflect the dependency between the access frequency and the size in the evaluation expression.
(51) In the embodiment of the present disclosure, a performance impact evaluation method is a method for evaluating a performance impact caused by separating data 2 used in software into an external DB. In the performance impact evaluation method, the performance impact evaluation apparatus 1 acquires a log for recording an access to the external DB 4, and evaluates the performance impact by using an evaluation expression considering a software structure in addition to characteristics of data 2, based on the acquired log. Thus, it is possible to provide the performance impact evaluation method in which it is possible to more accurately evaluate a performance impact caused by software data/process separation.
OTHER EMBODIMENTS
(52) As described above, the embodiment of the present disclosure has been described. However, it should not be understood that the description and drawings forming a portion of the present disclosure limit the present disclosure. Various alternative embodiments, examples, and operational techniques will be apparent to those skilled in the art from this disclosure.
(53) For example, the performance impact evaluation apparatus 1 in the embodiment of the present disclosure may be configured on one piece of hardware as illustrated in
(54) In addition, the technology disclosed in Patent Literature 1 may be employed in the performance impact evaluation apparatus 1 in the embodiment of the present disclosure. For example, a score can be generated, and a performance impact can be evaluated, by a similar technology to that disclosed in Patent Literature 1.
(55) The present disclosure includes various embodiments and the like not described herein. Thus, the technical scope of the present disclosure is defined only by the present disclosure specifying matters according to the claims that are appropriate from the above description.
REFERENCE SIGNS LIST
(56) 1 Performance impact evaluation apparatus 2 Data 3 Processing server (application) 4 External DB 10 Storage device 11 Log storage unit 12 Evaluation expression storage unit 20 Processing device 21 Log acquisition unit 22 Evaluation unit