Information processing system and data allocation method therefor

The information processing system optimizes microservice and data placement across multiple locations to minimize network communications, improving application execution speed in multi-cloud environments.

JP7766126B2Active Publication Date: 2025-11-07HITACHI VANTARA LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
JP2024029804
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2024-02-29
Publication Date
2025-11-07
Estimated Expiration
2040-12-24

AI Technical Summary

Technical Problem

In multi-cloud environments, frequent communication over wide-area networks between distributed locations slows down data analysis processing due to the division of applications into microservices, leading to prolonged trial-and-error cycles.

Method used

An information processing system with a management device that optimizes the execution of microservices and data placement across multiple locations based on performance information, reducing unnecessary communications by strategically moving microservices and data between devices.

Benefits of technology

This approach reduces the number of communications between distributed locations, thereby enhancing the execution speed of applications.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007766126000001
    Figure 0007766126000001
  • Figure 0007766126000002
    Figure 0007766126000002
  • Figure 0007766126000003
    Figure 0007766126000003
Patent Text Reader

Abstract

To improve an execution speed of an application by reducing communication frequency among information processing devices established at distributed bases.SOLUTION: In an information processing system having an Application Platform 50 communicable with Edges 1 20 connected communicably with one another, the Application Platform 50 has a second processor, information of microservices and data belonging to the Edge 1 20, and performance information describing performance of the Edges 1 20, the second processor executes the application by combining a plurality of prescribed microservices to make the Edges 1 20 execute it in a predetermined order by using predetermined data, and moves the microservices and the data among the Edges 1 20 on the basis of information of the microservices and the data, and the performance information belonging to the Edges 1 20 in executing the application.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to an information processing system and a data allocation method in an information processing system. [Background technology]

[0002] In a multi-cloud environment, on-premise clouds, public clouds, and even edge clouds as needed work together to analyze data stored in clouds installed at these distributed locations. Analysis processing is performed by breaking down the application into small processes into microservices and creating workflows that combine these, making development easier. In this case, each microservice (process) is executed in the cloud at each distributed location via a Web API, and communication occurs over the WAN for each microservice. This results in the problem of long execution times.

[0003] Data analysis processing involves frequent trial-and-error cycles to improve accuracy, so the more communication there is between microservices, the slower the trial-and-error cycles will be.

[0004] Patent document 1 describes a system in which multiple edge devices such as personal computers, cell phones, smartphones, and mobile information terminals are each connected to the cloud via a network so that they can communicate with the cloud, and an application that performs real-time processing between the cloud and the edge devices provides services such as notifications and recommendations based on real-time feeds collected from the edge devices and the cloud. [Prior art documents] [Patent documents]

[0005] [Patent Document 1] Special Publication No. 2015-505404 Summary of the Invention [Problem to be solved by the invention]

[0006] In the technology disclosed in Patent Document 1, when data is scattered at different locations, communication over the WAN between the locations occurs frequently, slowing down the execution speed of the cycle.

[0007] The present invention has been developed in consideration of the above circumstances, and its purpose is to provide an information processing system and a data placement method in an information processing system that can reduce the number of communications between information processing devices installed at distributed locations and improve the execution speed of applications. [Means for solving the problem]

[0008] In order to solve the above problem, an information processing system according to one aspect of the present invention is an information processing system having a management device that is provided at each of a plurality of locations and is capable of communicating with a plurality of information processing devices that are connected to each other via a communication network, wherein the information processing device has a first processor that executes microservices formed by dividing the functions of an application and a storage device in which data used by the microservices is stored, and the management device has a second processor, information on the microservices and data possessed by each information processing device, and performance information describing the performance of each information processing device, and the second processor executes the application by having the information processing device execute a plurality of specified microservices in a specified order using specified data, and when executing the application, moves the microservices and data between the information processing devices based on the information on the microservices and data possessed by each information processing device and the performance information. [Effects of the Invention]

[0009] According to the present invention, it is possible to reduce the number of communications between information processing devices installed at distributed locations and improve the execution speed of applications. [Brief explanation of the drawings]

[0010] [Figure 1] 1 is a diagram illustrating a schematic configuration of an information processing system according to an embodiment. [Figure 2] FIG. 2 is a diagram showing an example of the configuration of a wide-area distributed metadata management table stored in Edge 1 of the information processing system according to the embodiment. [Figure 3] FIG. 2 is a diagram showing an example of the configuration of a wide-area distributed metadata management table stored in On-Prem 1 of the information processing system according to the embodiment. [Figure 4] FIG. 2 is a diagram showing an example of the configuration of a wide-area distributed metadata management table stored in PubCloud1 of the information processing system according to the embodiment. [Figure 5] FIG. 2 is a diagram illustrating an example of the configuration of a wide-area distributed metadata management table created by an Application Platform of the information processing system according to the embodiment. [Figure 6] FIG. 2 is a diagram illustrating an example of a configuration of a user-defined processing flow of the information processing system according to the embodiment. [Figure 7] FIG. 2 is a diagram illustrating an example of the configuration of an application ID-application name conversion table in the information processing system according to the embodiment. [Figure 8] FIG. 2 is a diagram showing an example of the configuration of a data ID-data name conversion table of the information processing system according to the embodiment. [Figure 9] FIG. 2 is a diagram showing an example of the configuration of an application / data management table of the information processing system according to the embodiment. [Figure 10] FIG. 2 is a diagram illustrating an example of the configuration of an application operation performance history table of the information processing system according to the embodiment. [Figure 11] FIG. 2 is a diagram illustrating an example of the configuration of a resource / performance management table of the information processing system according to the embodiment. [Figure 12] FIG. 2 is a diagram illustrating an example of a configuration of a bandwidth table of the information processing system according to the embodiment. [Figure 13] FIG. 2 is a diagram illustrating an example of a configuration of a latency table of the information processing system according to the embodiment. [Figure 14] FIG. 2 is a diagram illustrating an example of a configuration of a policy management table of the information processing system according to the embodiment. [Figure 15]4 is a flowchart illustrating an example of an operation of the information processing system according to the embodiment. [Figure 16] 10 is a flowchart illustrating an example of a processing location search process of the information processing system according to the embodiment. [Figure 17] 10 is a flowchart illustrating an example of an execution process of the information processing system according to the embodiment. [Figure 18] 10 is a flowchart illustrating an example of a process control process of the information processing system according to the embodiment. [Figure 19] 10 is a flowchart showing an example of a data / application transfer process of the information processing system according to the embodiment. [Figure 20] FIG. 2 is a diagram for explaining an overview of a data / application transfer process of the information processing system according to the embodiment. [Figure 21] FIG. 2 is a diagram illustrating an example of the configuration of a processing location combination table of the information processing system according to the first embodiment. [Figure 22] FIG. 10 is a diagram illustrating another example of the configuration of the processing location combination table of the information processing system according to the first embodiment. [Figure 23] FIG. 10 is a diagram illustrating an example of the configuration of an application data management table of the information processing system according to the second embodiment. [Figure 24] FIG. 10 is a diagram illustrating an example of the configuration of a processing location combination table of the information processing system according to the second embodiment. [Figure 25] FIG. 11 is a diagram illustrating an example of the configuration of an application data management table of the information processing system according to the third embodiment. [Figure 26] FIG. 11 is a diagram illustrating an example of the configuration of a processing location combination table of the information processing system according to the third embodiment. [Figure 27] FIG. 10 is a diagram illustrating an example of the configuration of a processing location combination table of the information processing system according to the fourth embodiment. [Figure 28] 13 is a flowchart illustrating an example of an application execution time calculation process of the information processing system according to the fourth embodiment. [Figure 29] 13 is a flowchart illustrating an example of an estimated QoS cost calculation process of the information processing system according to the fourth embodiment. [Figure 30]FIG. 13 is a diagram illustrating an example of the configuration of a processing location combination table of the information processing system according to the fifth embodiment. [Figure 31] FIG. 20 is a diagram illustrating an example of the configuration of a processing location combination table of the information processing system according to the sixth embodiment. [Figure 32] 10 is a flowchart showing an example of a method for generating a policy and a processing location combination table based on the policy in the information processing system according to the embodiment. DETAILED DESCRIPTION OF THE INVENTION

[0011] Hereinafter, embodiments of the present invention will be described with reference to the drawings. Note that the embodiments described below do not limit the invention according to the claims, and not all of the elements and combinations thereof described in the embodiments are necessarily essential to the solution of the invention.

[0012] In the following description, the term "memory" refers to one or more memories, typically a primary storage device. At least one memory in the memory unit may be a volatile memory or a non-volatile memory.

[0013] In the following description, a "processor" refers to one or more processors. The at least one processor is typically a microprocessor such as a CPU (Central Processing Unit), but may also be another type of processor such as a GPU (Graphics Processing Unit). The at least one processor may be single-core or multi-core.

[0014] Furthermore, the at least one processor may be a processor in the broad sense, such as a hardware circuit (for example, a field-programmable gate array (FPGA) or an application-specific integrated circuit (ASIC)) that performs part or all of the processing.

[0015] In this disclosure, a storage device includes a single storage drive such as a single HDD (Hard Disk Drive) or SSD (Solid State Drive), a RAID device including multiple storage drives, and multiple RAID devices. Also, if the drive is an HDD, it may include, for example, a SAS (Serial Attached SCSI) HDD or an NL-SAS (Nearline SAS) HDD.

[0016] In the following explanation, information that produces an output for an input may be described using expressions such as "xxx table," but this information may be data of any structure, or may be a learning model such as a neural network that produces an output for an input. Therefore, an "xxx table" may be referred to as "xxx information."

[0017] Furthermore, in the following description, the configuration of each table is an example, and one table may be divided into two or more tables, or all or part of two or more tables may be one table.

[0018] In the following description, processing may be described using a "program" as the subject, but since a program is executed by a processor to perform a predetermined process using storage resources (e.g., memory) and / or communication interface devices (e.g., ports) as appropriate, the subject of the processing may also be the program. Processing described using a program as the subject may also be processing performed by a processor or a computer having that processor.

[0019] The program may be installed in a device such as a computer, or may be stored in, for example, a program distribution server or a computer-readable (e.g., non-transitory) recording medium. Also, in the following description, two or more programs may be realized as one program, or one program may be realized as two or more programs.

[0020] In addition, in the following description, when describing elements of the same type without distinguishing between them, reference symbols (or common symbols among the reference symbols) may be used, and when describing elements of the same type with distinction between them, the identification numbers (or reference symbols) of the elements may be used.

[0021] The terms used in this specification are defined below. Data and app (abbreviation for application: used as appropriate below) travel time: the time it takes to move data or apps to a designated location (hereinafter also referred to as "travel time"). App execution time: The execution time when the app is executed at the base Processing time: The combined time for each process, including data and app transfer time and app execution time

[0022] Next, the configuration and operation of an information processing system according to an embodiment common to Examples 1 to 6 will be described with reference to FIGS.

[0023] FIG. 1 is a diagram showing a schematic configuration of an information processing system according to an embodiment.

[0024] The information processing system 1 of this embodiment includes a Host 10, an Edge 1 20, an On-Prem 1 30, a PubCloud 1 40, and an Application Platform 50. The Host 10, the Edge 1 20, the On-Prem 1 30, the PubCloud 1 40, and the Application Platform 50 are connected to each other so as to be able to communicate with each other via a network 100 configured from a WAN (Wide Area Network) or the like.

[0025] The Host 10 is accessed by a user of the information processing system 1 of this embodiment, and is, for example, an information processing device such as a PC (Personal Computer), a server, etc. The information processing device generally has a processor (computing element), a memory (storage medium), and a communication interface, and further has an input device such as a mouse and a keyboard, and a display device such as a display, as necessary.

[0026] In the following explanation, when the subject of an operation is described as "the ○○ unit," it means that the processor reads the processing contents of the ○○ unit, which is a program, from memory and then realizes the function of the ○○ unit (details described below).

[0027] A flow development and configuration processing unit 12 is stored in the memory 11 of the Host 10. When a user of the Host 10 executes an application, the flow development and configuration processing unit 12 creates a workflow that defines the execution order of microservices that divide the application's functions and the data used by these microservices, based on instructions from the user, and executes the application based on this workflow. At this time, the flow development and configuration processing unit 12 selects one of the processing location proposals presented by the Application Platform 50 based on instructions input by the user.

[0028] Edge1 20 is an edge cloud installed near the base where Host10 is installed. On-Prem1 30 is an on-premise cloud installed at a base such as the premises of the company to which the user operating Host10 belongs. PubCloud1 40 is a so-called public cloud. Although only one of Edge1 20, On-Prem1 30 and PubCloud1 40 is shown in FIG. 1, multiple edge clouds may be provided.

[0029] Each of Edge1 20, On-Prem1 30, and PubCloud1 40 has at least one server. The memories 21, 31, and 41 of Edge1 20, On-Prem1 30, and PubCloud1 40 store processing control processing units 22, 32, and 42, execution platform processing units 23, 33, and 43, wide-area distributed metadata management processing units 24, 34, and 44, and global data virtualization processing units 26, 36, and 46, respectively.

[0030] The processing control processing units 22, 32, and 42 are placed on the respective Edge1 20, etc., and monitor the processing of the deployed (executed) microservices. The execution infrastructure processing units 23, 33, and 43 provide a platform for managing the containers that make up the microservices. The wide-area distributed metadata management processing units 24, 34, and 44 are placed on the Edge1 20, etc., and manage the data executed by the microservices. The global data virtualization processing units 26, 36, and 46 perform data virtualization processing on the Edge1 20, On-Prem1 30, and PubCloud1 40, and when a data retrieval request is received and the data is not stored in the Edge1 20, On-Prem1 30, or PubCloud1 40 that accepted the request, they move the data from another Edge1 20, On-Prem1 30, or PubCloud1 40.

[0031] Furthermore, wide-area distributed metadata management tables 25, 35, 45 are stored in memories 21, 31, 41 of Edge1 20, On-Prem1 30, and PubCloud1 40. The wide-area distributed metadata management tables 25, 35, 45 will be described in detail later.

[0032] Furthermore, Edge1 20, On-Prem1 30 and PubCloud1 40 have data lakes 27, 37 and 47, which are storage devices in which data is stored.

[0033] The Application Platform 50 is a platform server that manages microservices and applications executed in the Edge1 20, the On-Prem1 30, and the PubCloud1 40. The Application Platform 50 may be provided at any of the Edge1 20, the On-Prem1 30, and the PubCloud1 40.

[0034] The memory 51 of the Application Platform 50 stores a flow development platform processing unit 52 and a distributed-site inter-process placement optimization processing unit 53. The flow development platform processing unit 52 manages the environment in which a user creates a workflow on the Host 10. The distributed-site inter-process placement optimization processing unit 53 moves microservices and data appropriately between Edge1 20, On-Prem1 30, and PubCloud1 40 to optimally place microservices and data distributed across these Edge1 20, On-Prem1 30, and PubCloud1 40 based on the workflow created by the user. At this time, the distributed-site inter-process placement optimization processing unit 53 optimally places the microservices and data in accordance with a plurality of predetermined policies. The operation of the distributed-site inter-process placement optimization processing unit 53 will be described in detail below.

[0035] The memory 51 of the Application Platform 50 also stores an application ID-application name conversion table 54, a data ID-data name conversion table 55, an application data management table 56, an application operation performance history table 57, a resource / performance management table 58, a bandwidth table 59, a latency table (not shown in FIG. 1), and a policy management table 60. Details of these various tables will be described later.

[0036] FIG. 2 is a diagram showing an example of the configuration of the wide-area distributed metadata management table 25 stored in the Edge1 20 of the information processing system according to the embodiment.

[0037] The wide-area distributed metadata management table 25 is a list of microservices and data stored in the data lake 27 of Edge1 20. The wide-area distributed metadata management table 25 has, as entries, a data name 25a, a data storage location 25b, a data size 25c, a data summary 25d, a snapshot date 25e, replica information 25f, a domestic transfer possibility 25g, and an international transfer possibility 25h.

[0038] The data name 25a stores the names of the microservices and data stored in the data lake 27 of Edge1 20. The data storage location 25b stores a link to the location where the microservices, etc. described in the data name 25a are stored. The data size 25c stores the size of the microservices, etc. described in the data name 25a. The data summary 25d stores a summary of the microservices, etc. described in the data name 25a. The snapshot date 25e stores the date on which the snapshot was created when the microservices, etc. (limited to data in this case) described in the data name 25a are snapshots. The replica information 25f stores the location where the original microservices, etc. are stored when the microservices, etc. described in the data name 25a are replicas of microservices, etc. at other locations. The domestic transferability 25g stores information on whether the microservices, etc. described in the data name 25a can be transferred to other locations within the country. The international transferability 25h stores information on whether the microservices, etc. described in the data name 25a can be transferred to other locations outside the country. The information described in 25g of whether domestic movement is permitted and 25h of whether international movement is permitted is predetermined for each microservice, etc.

[0039] As shown in FIG. 2, in the information processing system 1 of this embodiment, Edge1 20 (similar to On-Prem 130 and PubCloud1 40) creates snapshots of data stored in the data lake 27 at appropriate times and stores them in the data lake 27. Edge1 20 also stores replicas of microservices and the like stored in data lakes 37 and 47 at other locations in the data lake 27. In addition, in the information processing system 1 of this embodiment, a microservice has a container and source code. Hereinafter, a microservice may be referred to as a "process."

[0040] FIG. 3 is a diagram showing an example of the configuration of a wide-area distributed metadata management table 35 stored in On-Prem1 30 of an information processing system 1 according to an embodiment, and FIG. 4 is a diagram showing an example of the configuration of a wide-area distributed metadata management table 45 stored in PubCloud1 40 of an information processing system 1 according to an embodiment.

[0041] These wide-area distributed metadata management tables 35, 45 each have the same configuration as the wide-area distributed metadata management table 25 stored in Edge1 20. That is, the wide-area distributed metadata management tables 35, 45 each have, as entries, data name 35a, 45a, data storage location 35b, 45b, data size 35c, 45c, data summary 35d, 45d, snapshot date 35e, 45e, replica information 35f, 45f, domestic transfer availability 35g, 45g, and international transfer availability 35h, 45h.

[0042] 5 is a diagram showing an example of the configuration of a wide-area distributed metadata management table 61 created by the Application Platform 50 of the information processing system 1 according to the embodiment. The wide-area distributed metadata management table 61 is temporarily created based on the results of an inquiry made by the Application Platform 50 to each base (such as Edge1 20) as needed about the contents of the wide-area distributed metadata management table 25.

[0043] The wide-area distributed metadata management table 61 has the same configuration as the wide-area distributed metadata management tables 25, 35, and 45, except for the addition of a base name 61a. That is, the wide-area distributed metadata management table 61 has the following entries: base name 61a, data name 61b, data storage location 61c, data size 61d, data summary 61e, snapshot date 61f, replica information 61g, domestic transfer availability 61h, and international transfer availability 61i. The contents of the entries are aggregators of the wide-area distributed metadata management tables 25, 35, and 45 for each base. The base name 61a stores the name of the base where the microservice, etc., described in the data name 61b is stored.

[0044] FIG. 6 is a diagram showing an example of the configuration of a user-defined processing flow 70 of the information processing system 1 according to the embodiment.

[0045] 6 defines the specific content of a workflow created by the flow development and configuration processing unit 12 of the Host 10, and is created on a workflow-by-workflow basis. The user-defined process flow 70 has, as entries, an application ID 70a, an input data source application ID 70b, an output data destination application ID 70c, and a usage data ID 70d.

[0046] Each row of the user-defined process flow 70 represents a step executed by the workflow, and steps are executed in order starting from the step shown in the top row. The application ID 70a stores an ID for identifying the microservice executed in this step. The input data transfer source application ID 70b stores the application ID of the transfer source that transfers input data required by the microservice executed in this step to this microservice. The output data transfer destination application ID 70c stores the application ID of the transfer destination to which output data output by the microservice executed in this step should be transferred. The usage data ID 70d stores the ID of the data used by the microservice executed in this step.

[0047] FIG. 7 is a diagram showing an example of the configuration of the application ID-application name conversion table 54 of the information processing system 1 according to the embodiment.

[0048] The application ID-application name conversion table 54 has application IDs 54a and application names 54b as entries. Each row of the application ID-application name conversion table 54 corresponds to a microservice. The application ID 54a stores the ID of the microservice. This application ID 54a corresponds to the application ID 70a of the user-defined processing flow 70. The application name 54b stores the name of the microservice. This application name 54b corresponds to the names of the microservices listed in the data names 25a, 35a, 45a, and 61b of the wide-area distributed metadata management tables 25, 35, 45, and 61.

[0049] FIG. 8 is a diagram showing an example of the configuration of the data ID-data name conversion table 55 of the information processing system 1 according to the embodiment.

[0050] The data ID-data name conversion table 55 has data IDs 55a and data names 55b as entries. Each row of the data ID-data name conversion table 55 corresponds to a piece of data. The data ID 55a stores the ID of the data. This data ID 55a corresponds to the usage data ID 70d of the user-defined processing flow 70. The data name 55b stores the name of the data. This data name 55b corresponds to the name of the data listed in the data names 25a, 35a, 45a, 61b of the wide-area distributed metadata management tables 25, 35, 45, 61.

[0051] FIG. 9 is a diagram showing an example of the configuration of the application data management table 56 of the information processing system 1 according to the embodiment.

[0052] The application data management table 56 is a table that indicates the microservices and data used in workflows created by the user of the Host 10, and is created for each workflow. The application data management table 56 is created by the Application Platform 50 based on the user-defined processing flow 70 and the wide-area distributed metadata management table 61.

[0053] The application data management table 56 has, as entries, a flow 1 56a, a URL 56b, domestic transfer permission 56c, and international transfer permission 56d.

[0054] Flow 1 56a stores the names of microservices, etc. used in a workflow (a workflow named Flow 1 in the example shown in FIG. 9). URL 56b stores a URL that is a link to the location where the microservices, etc. described in Flow 1 56a are stored. Domestic transfer availability 56c stores information on whether the microservices, etc. described in Flow 1 56a can be transferred to another location within the country. International transfer availability 56d stores information on whether the microservices, etc. described in Flow 1 56a can be transferred to another location outside the country.

[0055] FIG. 10 is a diagram showing an example of the configuration of the application operation result history table 57 of the information processing system 1 according to the embodiment.

[0056] The application operation performance history table 57 is a table that stores performance values ​​when a microservice is operated at each base. Each row of the application operation performance history table 57 has a different combination of microservice, data, execution base, and QoS setting.

[0057] The application operation performance history table 57 has the following entries: application name 57a, data name 57b, execution location 57c, QoS setting 57d, average execution time 57e, average QoS cost 57f, number of executions 57g, last execution date and time 57h, average read amount 57i, average write amount 57j, and access pattern trend 57k.

[0058] The application name 57a stores the name of the microservice. The data name 57b stores the name of the data used by the microservice described in the application name 57a. The execution base 57c stores the base where the microservice described in the application name 57a is executed. The QoS setting 57d stores the QoS level set for the microservice described in the application name 57a. In this embodiment, the QoS levels are set to Gold, Silver, Bronze, and Best-Effort, in descending order. The average execution time 57e stores the average time it takes for the microservice described in the application name 57a to be executed. The average QoS cost 57f stores the average value of the QoS cost required to execute the microservice described in the application name 57a. The execution count 57g stores the number of times the microservice described in the application name 57a has been executed. The last execution date and time 57h stores the date and time when the microservice described in the application name 57a was last executed. The average read amount 57i stores the average amount of data read by the microservice described in the application name 57a. The average write amount 57j describes the average amount of data written by the microservice described in the application name 57a. The access pattern trend 57k describes the access pattern trend of the microservice described in the application name 57a. In this embodiment, the access pattern trend is either random or sequential.

[0059] 11 is a diagram showing an example of the configuration of the resource / performance management table 58 of the information processing system 1 according to the embodiment. The resource / performance management table 58 is a table in which the resources / performance at each base are recorded.

[0060] The resource / performance management table 58 has the following entries: base name 58a, CPU 58b, number of cores 58c, memory 58d, CPU utilization rate 58e, memory utilization rate 58f, power consumption 58g, SLA 58h, location 58i, resource cost 58j, API billing 58k, data transfer cost (in) 58m, and data transfer cost (out) 58n.

[0061] The base name 58a stores the name of the base. The CPU 58b stores the clock frequency of the CPU of the server / cloud of the base listed in the base name 58a. The number of cores 58c stores the number of CPU cores of the server / cloud of the base listed in the base name 58a. The memory 58d stores the memory capacity of the server / cloud of the base listed in the base name 58a. The CPU utilization rate 58e stores the CPU utilization rate of the server / cloud of the base listed in the base name 58a. The memory utilization rate 58f stores the memory utilization rate of the server / cloud of the base listed in the base name 58a. The power consumption 58g stores the power consumption of the server / cloud of the base listed in the base name 58a. The SLA 58h stores the SLA (Service Level Agreement) value of the server / cloud of the base listed in the base name 58a. The location 58i stores the installation location (country) of the server / cloud of the base listed in the base name 58a. The resource cost 58j stores the resource cost for each QoS level of the server / cloud of the site described in the site name 58a. The API charge 58k stores the charge for executing an API (especially a WebAPI) on the server / cloud of the site described in the site name 58a. The data transfer cost (in) 58m stores the cost required to transfer data from the server / cloud of the site described in the site name 58a. The data transfer cost (out) 58n stores the cost required to transfer data to the server / cloud of the site described in the site name 58a.

[0062] FIG. 12 is a diagram showing an example of the configuration of the bandwidth table 59 of the information processing system 1 according to the embodiment.

[0063] In the bandwidth table 59, the bandwidth of the network between the point written at the right end of each row and the point written at the top of each column is written in each cell.

[0064] FIG. 13 is a diagram showing an example of the configuration of the latency table 62 of the information processing system 1 according to the embodiment.

[0065] In the latency table 62, the latency of the network between the point written at the right end of each row and the point written at the top of each column is written in each cell.

[0066] FIG. 14 is a diagram showing an example of the configuration of the policy management table 60 of the information processing system 1 according to the embodiment.

[0067] The policy management table 60 lists predetermined policies (policy 0 60b to policy 2 60d) for each workflow listed in the flow name 60a. At least one policy is predetermined for each workflow, but multiple policies may be predetermined for one workflow. In this embodiment, policy 0 60b is the policy with the highest priority, and the priority decreases as the policy number increases.

[0068] Next, the operation of the information processing system 1 of this embodiment will be described with reference to the flowcharts of FIGS. 15 to 19 and FIG.

[0069] FIG. 15 is a flowchart showing an example of the operation of the information processing system according to the embodiment.

[0070] First, a user of Host10 references the processing (microservices) and data contents of the wide-area distributed metadata management tables 25, 35, and 45 of each base (Edge1 20, On-Prem1 30, PubCloud1 40) and creates a data analysis processing flow (workflow) (1501). The workflow created by the user is stored as a user-defined processing flow 70. Note that Application Platform 50 aggregates the wide-area distributed metadata management tables 25, 35, and 45 of each base (Edge1 20, On-Prem1 30, PubCloud1 40) to create a wide-area distributed metadata management table 61, and the user may reference this wide-area distributed metadata management table 61.

[0071] Next, the user of the Host 10 determines (1502) a policy to be applied to the workflow created in 1501. The determined policy is stored in the policy management table 60.

[0072] Next, the user of Host 10 instructs each base (Edge1 20, On-Prem1 30, PubCloud1 40) to execute the workflow created in 1501 (1503). Application Platform 50 receives the workflow instruction from the user and executes a processing location search process by the distributed base processing placement optimization processing unit 53 (1504). Details of 1504 will be described later. This processing location search process is repeated until it is determined that the conditions are satisfied by the policy determined by the user in 1502 (YES in 1505).

[0073] Next, the user of the Host 10 selects one proposed processing location from among the proposed processing locations presented to the user by the processing location search process of 1504 (1506). Then, the Application Platform 50 performs processing execution processing by the distributed base inter-process allocation optimization processing unit 53 based on the proposed processing location selected in 1506 (1507).

[0074] Furthermore, if it is determined that the process execution in 1507 has failed (YES in 1508), the process returns to 1502 and the policy setting process is performed again, and if it is determined that the process execution has succeeded (NO in 1508), the user of Host 10 obtains the execution result (1509).

[0075] 16 is a flowchart showing an example of a processing location search process of the information processing system 1 according to the embodiment. The flowchart shown in FIG. 16 corresponds to 1504 in FIG.

[0076] First, the distributed-site inter-processing placement optimization processing unit 53 of the Application Platform 50 acquires the workflow (user-defined process flow 70) for which execution was instructed by the user in 1503, and creates (1601) the application data management table 56. Next, the distributed-site inter-processing placement optimization processing unit 53 acquires, from the policy management table 60, the policy of the workflow for which execution was instructed by the user in 1503 (1602).

[0077] Next, the distributed-site inter-processing allocation optimization processing unit 53 creates a table of combinations of execution locations (processing locations) for each application and data, taking into consideration whether data / applications can be moved domestically or internationally, based on the application data management table 56, the resource / performance management table 58, and the policy acquired in 1602 (1603). A specific example of the execution location combination table will be shown in the embodiment described later. Then, the distributed-site inter-processing allocation optimization processing unit 53 presents the execution location combination table created in 1603 to the user (1604).

[0078] 17 is a flowchart showing an example of execution processing of the information processing system according to the embodiment. The flowchart shown in FIG. 17 corresponds to 1507 in FIG.

[0079] First, the distributed-site inter-processing placement optimization processing unit 53 moves the application (microservice) and data to the designated site based on the proposed processing location selected by the user in 1506 in Fig. 15 (1701). Next, the distributed-site inter-processing placement optimization processing unit 53 transmits the processing results of the pre-processing to the processing control processing of the site for the next processing, and also transmits an instruction to start processing to the next site (1702).

[0080] Next, the distributed base inter-processing allocation optimization processing unit 53 determines whether or not the execution of the process failed in 1702 (1703). If it determines that the execution of the process failed (YES in 1703), the process proceeds to 1707, and if it determines that the execution of the process was successful (NO in 1703), the process proceeds to 1704. In 1704, the processing result is received from the base.

[0081] Next, the distributed base inter-processing allocation optimization processing unit 53 determines whether or not there is a next process (1705), and if it determines that there is a next process (YES in 1705), it returns to 1702 and instructs the start of the next process, and if it determines that there is no next process (NO in 1705), it proceeds to 1706.

[0082] In 1706, the distributed site inter-process allocation optimization processing unit 53 records the execution time, the used resources, and the numerical values ​​related to the application and data in the application operation performance history table 57.

[0083] Then, the distributed processing location optimization processing unit 53 returns the processing result to the user of the Host 10 .

[0084] Fig. 18 is a flowchart showing an example of a process control process of the information processing system 1 according to the embodiment. The process control process shown in the flowchart of Fig. 18 is executed at each base (Edge1 20, On-Prem1 30, PubCloud1 40).

[0085] First, the process control processing unit 22, 32, 42 at each base receives preprocessing data and a processing start instruction from the other bases (1801). Next, the process control processing unit 22, 32, 42 moves the microservices and data (1802). Details of 1802 will be described later. Furthermore, the process control processing unit 22, 32, 42 executes consecutive processes within itself (the same base) (1803).

[0086] Then, the process control processing units 22, 32, 42 transmit the process results to the Application Platform 50 (1804), and record the process execution history of each process executed at their own bases and transmit it to the Application Platform 50 (1805).

[0087] 19 is a flowchart showing an example of a data / application transfer process of the information processing system 1 according to the embodiment. The flowchart shown in FIG. 19 corresponds to 1802 in FIG.

[0088] First, the global data virtualization processing unit 26, 36, 46 at each site receives a request to move application data (1901). It determines whether the requested data / application is stored in the data lake 27, 37, 47 at its own site (1902). If it determines that the requested data / application is stored in the data lake 27, 37, 47 at its own site (YES in 1902), it transmits the requested data / application at 1905. If it determines that the requested data / application is not stored in the data lake 27, 37, 47 (NO in 1902), it searches for the location of the requested data / application by referencing the wide-area distributed metadata management table 25, 35, 45 (1903). It then copies the data from the other site where it is located (1904) and transmits the requested data / application.

[0089] FIG. 20 is a diagram for explaining an outline of the data / application transfer process of the information processing system 1 according to the embodiment, and is a diagram for explaining the flow of the process of FIG.

[0090] First, in the example shown in Figure 20, On-Prem1 30 receives a request for data A (dataA) ((1) in the figure). Since data A is not stored in the data lake 37 of On-Prem1 30, the global data virtualization processing units 26, 36 of On-Prem1 and Edge1 20, where data A is stored in the data lake 27, copy data A from Edge1 20 to On-Prem1 30 ((2) in the figure), and then obtain and send data A ((3) in the figure).

[0091] According to this embodiment, which is configured as described above, microservices and data can be moved between locations in accordance with policies, thereby reducing the number of communications between distributed locations and improving the execution speed of applications. [Example]

[0092] The following describes the characteristics of each policy (embodiment) listed in the policy management table 60 shown in Fig. 14. In embodiment 1, the operation of the information processing system 1 when performance (latency) emphasis (minimum number of bases) is adopted as the policy is described. This policy is adopted in workflow flow 1 as shown in Fig. 14.

[0093] 21 is a diagram illustrating an example of the configuration of the processing location combination table 80 of the information processing system 1 according to the embodiment 1. The processing location combination table 80 is created by the distributed base inter-process allocation optimization processing unit 53 of the Application Platform 50 in 1603 of the flowchart in FIG.

[0094] 21 shows a processing location combination table 80 before the policy is applied. In the first embodiment, flow 1 consists of data A to E (dataA-E) and microservices 1 to 5 (Proc1-5), and is executed in the combination shown in the top row of the processing location combination table 80. Considering the combinations of these microservices and data and combinations of bases (in this embodiment, Edge1, On-Prem1, PubCloud1, and PubCloud2 are assumed to exist as bases), there are 144 possible combinations.

[0095] FIG. 22 is a diagram illustrating another example of the configuration of the processing location combination table 80 of the information processing system 1 according to the first embodiment, and is a diagram illustrating the processing location combination table 80 when a policy is applied.

[0096] The policy in the first embodiment is to minimize the latency between bases and emphasize the performance of the information processing system 1 as a whole, and therefore, a combination of processing locations with the fewest number of bases where microservices, etc. are executed is proposed to the user.

[0097] In the example shown in Figure 22, the number of execution locations for the combination of processing locations with combination number (#) 1 is 1 (i.e., all processing is performed at Edge 1), and the distributed location processing allocation optimization processing unit 53 proposes this combination of processing locations with combination number 1 to the user. [Example]

[0098] In the second embodiment, the operation of the information processing system 1 when the policy is performance (emphasis on CPU bottleneck), shortest data / application transfer time, and performance (latency) (minimum number of locations) is described. This policy is adopted in workflow flow 2 as shown in FIG.

[0099] Fig. 23 is a diagram illustrating an example of the configuration of the application data management table 56 of the information processing system 1 according to the second embodiment, and Fig. 24 is a diagram illustrating an example of the configuration of the processing location combination table 80 of the information processing system 1 according to the second embodiment. In the second embodiment, as illustrated in Fig. 23, flow 2 is made up of data A to F (dataA-F) and microservices 1 to 6 (Proc1-6), and is executed in the combination illustrated in the top row of the processing location combination table 80 illustrated in Fig. 24.

[0100] The policy in the second embodiment is based on the application execution time and the data / application movement time, and emphasizes the performance of the entire information processing system 1 by reducing the execution time. Furthermore, latency between locations may be taken into consideration.

[0101] Here, the expected application execution time is calculated from the CPU utilization rate 58e in the resource / performance management table 58 and the average execution time 57e of the entry in the application operation performance history table 57 where the QoS setting 57d is Gold. Expected execution time of Proc1 on Edge1 20 = Average execution time of Proc1 on Edge1 (Gold) / (1 - CPU utilization of Edge1 20 58e) The data and application travel time is calculated from the data size 25c... of the corresponding microservices, etc. in the wide-area distributed metadata management tables 25, 35, 45, and 61 and the bandwidth table 59. As an example, Time to move dataC+Proc3 on On-Prem1 30 to Edge1 20 = (dataC size + Proc3 size) / (Bandwidth between On-Prem1 30 and Edge1 20 in MB / s) Search from.

[0102] 24, if only the expected application execution time is taken into consideration, the combination with combination number (#) 6 is considered to be optimal, but since the expected travel time for combination numbers 4 and 6 is longer than that of the other combinations, combination numbers 4 and 6 are not ultimately determined to be optimal. Therefore, the distributed base inter-processing allocation optimization processing unit 53 takes into consideration the expected travel time and the number of execution bases, ultimately determines that combination number (#) 1 is optimal, and proposes this combination of processing locations for combination number 1 to the user. [Example]

[0103] In the third embodiment, the operation of the information processing system 1 when the cost minimization policy is adopted will be described. This policy is adopted in the workflow flow 3 as shown in FIG.

[0104] Fig. 25 is a diagram illustrating an example of the configuration of the application data management table 56 of the information processing system 1 according to Example 3, and Fig. 26 is a diagram illustrating an example of the configuration of the processing location combination table 80 of the information processing system 1 according to Example 2. In Example 2, as shown in Fig. 25, flow 3 is made up of data A to E (dataA-E) and microservices 1 to 5 (Proc1-5), and is executed in the combination shown in the top row of the processing location combination table 80 illustrated in Fig. 25.

[0105] The policy in Example 3 is to minimize the costs required when executing microservices, etc. at each location, and therefore proposes to the user a combination that minimizes the total sum of various costs required when executing microservices, etc. at each location (in this example, the estimated total cost, which is the sum of process data transfer costs, infrastructure usage fees, and process execution API charges).

[0106] In the example shown in FIG. 26, the expected total cost is smallest for the combination of processing locations with combination numbers (#) 3 and 7, and the distributed site inter-processing allocation optimization processing unit 53 proposes this combination of processing locations with combination numbers 3 and 7 to the user. [Example]

[0107] In the fourth embodiment, the operation of the information processing system 1 when QoS emphasis is adopted as a policy will be described. This policy is adopted in workflow flow 4 as shown in FIG.

[0108] FIG. 27 is a diagram illustrating an example of the configuration of the processing location combination table 80 of the information processing system 1 according to the fourth embodiment.

[0109] The policy in the fourth embodiment is to keep the expected application execution time when executing a microservice or the like at each base within a predetermined time (within 60 seconds in this embodiment). For this reason, the distributed base processing placement optimization processing unit 53 calculates the expected application execution time and expected QoS cost, and suggests to the user a combination of processing locations that will keep the expected application execution time within the predetermined time.

[0110] FIG. 28 is a flowchart illustrating an example of an application execution time calculation process of the information processing system 1 according to the fourth embodiment.

[0111] First, the distributed-site inter-processing allocation optimization processing unit 53 acquires the application operation result history table 57 (2801). Next, if there is no QoS setting in the QoS setting 57d of the application operation result history table 57 acquired in 2801, the QoS is set to Best-Effort in the following processing (2802).

[0112] Next, the distributed-site inter-process allocation optimization processing unit 53 performs a trial calculation of the application execution time at each execution location (each site) in a loop of 2803 to 2811.

[0113] First, the distributed-site inter-processing placement optimization processing unit 53 determines whether an execution history is stored for the combination of microservice and data in the application operation performance history table 57 acquired in 2801 (2804). If it is determined that the combination of microservice and data has been executed at the target site (2805), the distributed-site inter-processing placement optimization processing unit 53 acquires the execution time from this history (2806). If it is determined that the combination of microservice and data has been executed at a site other than the target site (2807), the distributed-site inter-processing placement optimization processing unit 53 acquires the resource / performance management table 58 (2808) and estimates the execution time from the difference in specifications between the CPU used at the target site and the CPU used at the site with the history (2809). Furthermore, if it is determined that the combination of microservice and data is being executed for the first time, the execution time is deemed unknown (2810).

[0114] After all the combinations have been calculated (2811), the total application execution time for each combination in the processing location combination table 80 is calculated (2812).

[0115] FIG. 29 is a flowchart illustrating an example of an estimated QoS cost calculation process of the information processing system 1 according to the fourth embodiment.

[0116] First, the distributed site inter-process allocation optimization processing unit 53 acquires the application operation performance history table 57 (2901), and then acquires the application data management table 56 (2902).

[0117] Then, the distributed-site inter-processing allocation optimization processing unit 53 creates a combination table of each QoS and site by referring to the migration availability information 56c, 56d in the application data management table 56 and the average execution time 57e in the application operation performance history table 57 (2903).

[0118] In the example shown in Figure 27, the expected application execution time for the combinations of processing locations with combination numbers (#) 1, 2, n1, and n2 is all within 60 seconds, and the distributed base inter-processing placement optimization processing unit 53 suggests the combination of processing locations with combination numbers 3 and 7 to the user. [Example]

[0119] In the fifth embodiment, the operation of the information processing system 1 when the energy saving priority policy is adopted will be described. This policy is adopted in the workflow flow 5 as shown in FIG.

[0120] FIG. 30 is a diagram illustrating an example of the configuration of the processing location combination table 80 of the information processing system 1 according to the fifth embodiment.

[0121] The policy in Example 5 places emphasis on executing microservices, etc. in the most energy-efficient manner, and therefore suggests to the user a combination of processing locations that will consume the least amount of expected power when executing microservices, etc.

[0122] In the example shown in FIG. 30, the estimated power consumption is smallest in the combination of processing locations with combination number (#) 1, and the distributed site inter-processing allocation optimization processor 53 proposes this combination of processing locations with combination number 1 to the user. [Example]

[0123] In Example 6, an operation of the information processing system 1 will be described, which adopts a policy that prioritizes energy saving and further performs relocation of microservices, etc. when a failure occurs in the execution of a microservice, etc. at any of the bases. This policy is adopted in workflow flow 5, as shown in Fig. 14 .

[0124] FIG. 31 is a diagram illustrating an example of the configuration of the processing location combination table 80 of the information processing system 1 according to the sixth embodiment.

[0125] The policy in Example 6, like that in Example 5, emphasizes the most energy-efficient execution when executing microservices, etc., and therefore suggests to the user a combination of processing locations that will consume the least expected power when executing microservices, etc.

[0126] 31, the combination of processing locations with combination number (#) 1 has the smallest expected power consumption, and the distributed-site inter-processing placement optimization processor 53 suggested this combination of processing locations with combination number 1 to the user, but a failure occurred in PubCloud1 40 and it became unusable. Therefore, the distributed-site inter-processing placement optimization processor 53 suggests to the user combination number 5, which does not use PubCloud1 40.

[0127] The procedure for selecting a policy and creating the processing location combination table 80 based on the selected policy in the first to fifth embodiments is summarized in FIG.

[0128] The above-described embodiments have been described in detail to clearly explain the present invention, and the present invention is not necessarily limited to those including all of the described components. Furthermore, some of the components of each embodiment can be added to, deleted from, or replaced with other components.

[0129] Furthermore, the above-described configurations, functions, processing units, processing means, etc. may be partially or entirely implemented in hardware, for example, by designing them as integrated circuits. The present invention can also be realized by software program code that implements the functions of the embodiments. In this case, a storage medium on which the program code is recorded is provided to a computer, and a processor included in the computer reads the program code stored in the storage medium. In this case, the program code itself read from the storage medium implements the functions of the above-described embodiments, and the program code itself and the storage medium on which it is stored constitute the present invention. Examples of storage media for providing such program code include flexible disks, CD-ROMs, DVD-ROMs, hard disks, solid-state drives (SSDs), optical disks, magneto-optical disks, CD-Rs, magnetic tapes, non-volatile memory cards, and ROMs.

[0130] Furthermore, the program code that realizes the functions described in this embodiment can be implemented in a wide range of program or script languages, such as assembler, C / C++, perl, Shell, PHP, Java (registered trademark), and Python.

[0131] In the above-described embodiment, the control lines and information lines are shown as those considered necessary for the explanation, and not all control lines and information lines are necessarily shown in the product. All components may be interconnected. [Explanation of symbols]

[0132] 1...Information processing system 10...Host 20...Edge1 24...Wide-area distributed metadata management processing unit 25...Wide-area distributed metadata management table 26...Global data virtualization processing unit 27...Data lake 30...On-Prem1 34...Wide-area distributed metadata management processing unit 35...Wide-area distributed metadata management table 36...Global data virtualization processing unit 37...Data lake 40...PubCloud1 44...Wide-area distributed metadata management processing unit 45...Wide-area distributed metadata management table 46...Global data virtualization processing unit 47...Data lake 50...Application Platform 53...Inter-distributed site processing placement optimization processing unit 56...Application data management table 57...Application operation performance history table 58...Resource / performance management table 59...Bandwidth table 60...Policy management table 61...Wide-area distributed metadata management table 62...Latency table 70...User-defined processing flow 80...Processing location combination table 100...Network

Claims

1. An information processing system having a management device that can communicate with a plurality of information processing devices that are provided at a plurality of bases and connected to each other via a communication network, the information processing device has a first processor that executes an application and a storage device that stores data used by the application; the management device has a second processor, information on the applications and the data held by each of the information processing devices, and performance information describing the performance of each of the information processing devices; the information about the application includes a location where the application is stored and a size of the application; the information about the data includes a location where the data is stored and a size of the data; The second processor causing the information processing device to execute a plurality of predetermined applications using the predetermined data; When executing the application, the application and the data are moved between the information processing devices based on the information of the application and the data held by each of the information processing devices and the performance information; calculating an execution index for each of the candidate information processing devices to execute the application and a transfer index for transferring the application and the data between the information processing devices, calculating a total index for each combination of the candidate information processing devices based on the execution index and the transfer index, and transferring the application and the data based on the total index; the execution index, the movement index, and the total index include at least one of an estimated time, a cost, and a power consumption; policy information having a plurality of policies that define important performance; Select the policy, The information processing device is determined based on the execution index, the movement index, the number of bases where the information processing device that executes the application is located, and the important matters based on the policy, for each of the candidate information processing devices. An information processing system comprising:

2. The policy includes: a response-oriented policy that prioritizes the number of information processing devices that execute the application; a processor bottleneck-focused policy that focuses on an estimated execution time for each of the candidate information processing devices to execute the application; a migration time emphasis policy that emphasizes an estimated migration time for migrating the application and the data between the information processing devices; Contains The information processing system according to claim 1 .

3. An information processing system having a management device capable of communicating with a plurality of information processing devices provided at each of a plurality of bases and connected to each other via a communication network, the information processing device has a first processor that executes an application and a storage device that stores data used by the application; the management device has a second processor, information on the applications and the data held by each of the information processing devices, and performance information describing the performance of each of the information processing devices; the information about the application includes a location where the application is stored and a size of the application; the information about the data includes a location where the data is stored and a size of the data; The second processor causing the information processing device to execute a plurality of predetermined applications using the predetermined data; When executing the application, the application and the data are moved between the information processing devices based on the information of the application and the data held by each of the information processing devices and the performance information; calculating an execution index for each of the candidate information processing devices to execute the application and a transfer index for transferring the application and the data between the information processing devices, calculating a total index for each combination of the candidate information processing devices based on the execution index and the transfer index, and transferring the application and the data based on the total index; the execution index, the movement index, and the total index include at least one of an estimated time, a cost, and a power consumption; whether the application and the data can be moved to another information processing device is determined; The information processing system is characterized in that the second processor migrates the application and the data between the information processing devices, taking into consideration whether the application and the data can be migrated.

4. An information processing system having a management device capable of communicating with a plurality of information processing devices provided at each of a plurality of bases and connected to each other via a communication network, the information processing device has a first processor that executes an application and a storage device that stores data used by the application; the management device has a second processor, information on the applications and the data held by each of the information processing devices, and performance information describing the performance of each of the information processing devices; the information about the application includes a location where the application is stored and a size of the application; the information about the data includes a location where the data is stored and a size of the data; The second processor causing the information processing device to execute a plurality of predetermined applications using the predetermined data; When executing the application, the application and the data are moved between the information processing devices based on the information of the application and the data held by each of the information processing devices and the performance information; calculating an execution index for each of the candidate information processing devices to execute the application and a transfer index for transferring the application and the data between the information processing devices, calculating a total index for each combination of the candidate information processing devices based on the execution index and the transfer index, and transferring the application and the data based on the total index; the execution index, the movement index, and the total index include at least one of an estimated time, a cost, and a power consumption; the execution indicator, the movement indicator, and the total indicator are estimated times; An information processing system characterized by calculating an estimated execution time for each candidate information processing device to execute the application and an estimated movement time for moving the application and the data between the information processing devices, calculating an estimated total execution time for each combination of candidate information processing devices based on the estimated execution time and the estimated movement time, and moving the application and the data based on the estimated total execution time.

5. calculating the estimated execution time based on the CPU utilization rate of the performance information and the past execution time of the application; The estimated travel time is calculated based on bandwidth information between the information processing devices and the sizes of the application and the data.

5. The information processing system according to claim 4.

6. An information processing system having a management device capable of communicating with a plurality of information processing devices provided at each of a plurality of bases and connected to each other via a communication network, the information processing device has a first processor that executes an application and a storage device that stores data used by the application; the management device has a second processor, information on the applications and the data held by each of the information processing devices, and performance information describing the performance of each of the information processing devices; the information about the application includes a location where the application is stored and a size of the application; the information about the data includes a location where the data is stored and a size of the data; The second processor causing the information processing device to execute a plurality of predetermined applications using the predetermined data; When executing the application, the application and the data are moved between the information processing devices based on the information of the application and the data held by each of the information processing devices and the performance information; calculating an execution index for each of the candidate information processing devices to execute the application and a transfer index for transferring the application and the data between the information processing devices, calculating a total index for each combination of the candidate information processing devices based on the execution index and the transfer index, and transferring the application and the data based on the total index; the execution index, the movement index, and the total index include at least one of an estimated time, a cost, and a power consumption; the execution index, the movement index, and the total index are costs; Calculating an execution cost for each of the candidate information processing devices to execute the application and a migration cost for migrating the application and the data between the information processing devices, calculating a total cost for each combination of the candidate information processing devices based on the execution cost and the migration cost, and migrating the application and the data based on the total cost. An information processing system comprising:

7. the performance information includes, for each of the information processing devices, a cost per hour for executing the application and a cost per size for transmitting and receiving the application and the data; calculating the execution cost based on the past execution time of the application and the cost per hour; Calculating the migration cost based on the size of the application and the data and the cost per size.

7. The information processing system according to claim 6.

8. An information processing system having a management device capable of communicating with a plurality of information processing devices provided at each of a plurality of bases and connected to each other via a communication network, the information processing device has a first processor that executes an application and a storage device that stores data used by the application; the management device has a second processor, information on the applications and the data held by each of the information processing devices, and performance information describing the performance of each of the information processing devices; the information about the application includes a location where the application is stored and a size of the application; the information about the data includes a location where the data is stored and a size of the data; The second processor causing the information processing device to execute a plurality of predetermined applications using the predetermined data; When executing the application, the application and the data are moved between the information processing devices based on the information of the application and the data held by each of the information processing devices and the performance information; calculating an execution index for each of the candidate information processing devices to execute the application and a transfer index for transferring the application and the data between the information processing devices, calculating a total index for each combination of the candidate information processing devices based on the execution index and the transfer index, and transferring the application and the data based on the total index; the execution index, the movement index, and the total index include at least one of an estimated time, a cost, and a power consumption; calculating an estimated execution time for each of the candidate information processing devices to execute the application and an estimated movement time for moving the application and the data between the information processing devices, and calculating an estimated total execution time for each combination of the candidate information processing devices based on the estimated execution time and the estimated movement time; calculating a total cost including a migration cost of the application and the data and an execution cost of executing the application on the information processing device; The estimated travel time and the total cost are calculated for each QoS, Selecting a QoS based on the estimated travel time and the total cost and moving the application and the data between the information processing devices. An information processing system comprising:

9. An information processing system having a management device capable of communicating with a plurality of information processing devices provided at each of a plurality of bases and connected to each other via a communication network, the information processing device has a first processor that executes an application and a storage device that stores data used by the application; the management device has a second processor, information on the applications and the data held by each of the information processing devices, and performance information describing the performance of each of the information processing devices; the information about the application includes a location where the application is stored and a size of the application; the information about the data includes a location where the data is stored and a size of the data; The second processor causing the information processing device to execute a plurality of predetermined applications using the predetermined data; When executing the application, the application and the data are moved between the information processing devices based on the information of the application and the data held by each of the information processing devices and the performance information; calculating an execution index for each of the candidate information processing devices to execute the application and a transfer index for transferring the application and the data between the information processing devices, calculating a total index for each combination of the candidate information processing devices based on the execution index and the transfer index, and transferring the application and the data based on the total index; the execution index, the movement index, and the total index include at least one of an estimated time, a cost, and a power consumption; the execution indicator, the movement indicator, and the total indicator are power consumption; Calculating execution power consumption when each of the candidate information processing devices executes the application and transfer power consumption when the application and the data are transferred between the information processing devices, calculating total power consumption for each combination of the candidate information processing devices based on the execution power consumption and the transfer power consumption, and transferring the application and the data based on the total power consumption. The information processing system according to the present invention is characterized in that:

10. An information processing system having a management device capable of communicating with a plurality of information processing devices provided at each of a plurality of bases and connected to each other via a communication network, the information processing device has a first processor that executes an application and a storage device that stores data used by the application; the management device has a second processor, information on the applications and the data held by each of the information processing devices, and performance information describing the performance of each of the information processing devices; the information about the application includes a location where the application is stored and a size of the application; the information about the data includes a location where the data is stored and a size of the data; The second processor causing the information processing device to execute a plurality of predetermined applications using the predetermined data; When executing the application, the application and the data are moved between the information processing devices based on the information of the application and the data held by each of the information processing devices and the performance information; calculating an execution index for each of the candidate information processing devices to execute the application and a transfer index for transferring the application and the data between the information processing devices, calculating a total index for each combination of the candidate information processing devices based on the execution index and the transfer index, and transferring the application and the data based on the total index; the execution index, the movement index, and the total index include at least one of an estimated time, a cost, and a power consumption; Obtaining the failure status of the information processing device, and moving the application and the data to the information processing device where no failure has occurred. An information processing system comprising:

11. An information processing system having a management device capable of communicating with a plurality of information processing devices provided at each of a plurality of bases and connected to each other via a communication network, the information processing device has a first processor that executes an application and a storage device that stores data used by the application; the management device has a second processor, information on the applications and the data held by each of the information processing devices, and performance information describing the performance of each of the information processing devices; the information about the application includes a location where the application is stored and a size of the application; the information about the data includes a location where the data is stored and a size of the data; The second processor causing the information processing device to execute a plurality of predetermined applications using the predetermined data; When executing the application, the application and the data are moved between the information processing devices based on the information of the application and the data held by each of the information processing devices and the performance information; calculating an execution index for each of the candidate information processing devices to execute the application and a transfer index for transferring the application and the data between the information processing devices, calculating a total index for each combination of the candidate information processing devices based on the execution index and the transfer index, and transferring the application and the data based on the total index; the execution index, the movement index, and the total index include at least one of an estimated time, a cost, and a power consumption; presenting a combination of the information processing devices that executes the application by moving the application and the data between the information processing devices, together with at least one of the number of bases, the total execution time, the total cost, and the estimated power consumption; Accepting a selection of a combination of the information processing devices on which the application is to be executed, and transferring the application and the data between the information processing devices. The information processing system according to the present invention is characterized in that:

12. 1. A deployment method for an information processing system having a management device that is provided at each of a plurality of bases and is capable of communicating with a plurality of information processing devices that are connected to each other via a communication network, comprising: the information processing device has a first processor that executes an application and a storage device that stores data used by the application; the management device has a second processor, information on the applications and the data held by each of the information processing devices, and performance information describing the performance of each of the information processing devices; the information about the application includes a location where the application is stored and a size of the application; the information about the data includes a location where the data is stored and a size of the data; The second processor causing the information processing device to execute a plurality of predetermined applications using the predetermined data; When executing the application, the application and the data are moved between the information processing devices based on the information of the application and the data held by each of the information processing devices and the performance information; calculating an execution index for each of the candidate information processing devices to execute the application and a transfer index for transferring the application and the data between the information processing devices, calculating a total index for each combination of the candidate information processing devices based on the execution index and the transfer index, and transferring the application and the data based on the total index; the execution index, the movement index, and the total index include at least one of an estimated time, a cost, and a power consumption; the information processing system has policy information having a plurality of policies that define performance to be emphasized, Select the policy, The information processing device is determined based on the execution index, the movement index, the number of bases where the information processing device that executes the application is located, and the important matters based on the policy, for each of the candidate information processing devices.

10. A placement method comprising:

Citation Information

Patent Citations

  • Centralized cell homing and load balancing in base station controller

    JP2005304019A

  • Information processing system, control program, and information processing system control method

    JP2015194855A

  • Cloud Edge Topology

    JP2015505404A

  • System and service control method

    JP2019211955A

  • Optimum arrangement method for software of off-road server, and program

    JP2020137017A