KR102523389B1 - Information processing system and control method of information processing system - Google Patents
Information processing system and control method of information processing system Download PDFInfo
- Publication number
- KR102523389B1 KR102523389B1 KR1020217007071A KR20217007071A KR102523389B1 KR 102523389 B1 KR102523389 B1 KR 102523389B1 KR 1020217007071 A KR1020217007071 A KR 1020217007071A KR 20217007071 A KR20217007071 A KR 20217007071A KR 102523389 B1 KR102523389 B1 KR 102523389B1
- Authority
- KR
- South Korea
- Prior art keywords
- execution
- information
- software
- execution device
- processing
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/5038—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/10—Program control for peripheral devices
- G06F13/102—Program control for peripheral devices where the programme performs an interfacing function, e.g. device driver
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/382—Information transfer, e.g. on bus using universal interface adapter
- G06F13/385—Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
- Multi Processors (AREA)
Abstract
복수의 거점간에서 연계하여 행해지는 처리를 실현하는 소프트웨어를 효율적으로 개발한다. 정보 처리 시스템은, 복수의 거점의 각각에 마련되고, AP 소프트웨어를 실행하는 복수의 AP 실행 장치를 포함한다. AP 실행 장치의 각각은, 같은 처리 블록을 같은 순서로 실행하는 공통의 AP 소프트웨어를 기억한다. AP 소프트웨어는, 제1 거점의 제1 AP 실행 장치에서 실행된 처리 블록의 처리를, 제2 거점의 제2 AP 실행 장치에 연계하는 처리를 실현하는 전송 처리 블록을 포함한다. 제1 AP 실행 장치는, AP 소프트웨어의 처리 블록의 순차 실행에 있어서 제1 전송 처리 블록에 도달하면, 제1 전송 처리 블록의 식별자를 포함하는, 연계 개시를 통지하는 연계 개시 메시지를 제2 AP 실행 장치에 송신하고, 제2 AP 실행 장치는, 연계 개시 메시지를 수신하면, 제1 전송 처리 블록에 후속하는 처리 블록으로부터 순차 실행을 개시한다.Efficiently develop software that realizes processing performed in collaboration between multiple bases. The information processing system is provided at each of a plurality of bases and includes a plurality of AP execution devices that execute AP software. Each of the AP execution devices stores common AP software that executes the same processing blocks in the same order. The AP software includes a transmission processing block for realizing a process of linking the processing of the processing block executed by the first AP execution device at the first location to the second AP execution device at the second location. When the first AP execution device reaches the first transmission processing block in the sequential execution of processing blocks of the AP software, the second AP executes an association start message including an identifier of the first transmission processing block and notifying association start. device, and the second AP execution device, upon receiving the association initiation message, starts sequential execution from processing blocks following the first transmission processing block.
Description
본 발명은, 정보 처리 시스템, 및 정보 처리 시스템의 제어 방법에 관한 것이다.The present invention relates to an information processing system and a control method for the information processing system.
본 출원은, 2019년 5월 28일에 출원된 일본국 특허출원2019-099564호, 및 2019년 9월 11일에 출원된 일본국 특허출원2019-165080호에 의거하는 우선권을 주장하고, 그 개시 전체를 원용하여 본 출원에 도입하는 것이다.This application claims priority based on Japanese Patent Application No. 2019-099564 filed on May 28, 2019 and Japanese Patent Application No. 2019-165080 filed on September 11, 2019, the disclosure of which The whole is used and incorporated into this application.
특허문헌 1에는, 퍼스널 컴퓨터, 셀 전화, 스마트폰, 휴대 정보 단말 등의 복수의 에지 디바이스가, 각각 네트워크를 통해 클라우드와 통신 가능하게 접속되는 시스템에 있어서, 클라우드와 에지 디바이스간에 리얼타임으로 처리를 행하는 어플리케이션이, 에지 디바이스나 클라우드로부터 수집되는 리얼타임 피드에 의거하여 통지나 추장 등의 서비스를 제공하는 것이 기재되어 있다.In
특허문헌 2에는, 클라우드 서비스를 이용하는 에지측의 장치에 있어서, 어플리케이션의 개발 용이성의 향상이나, 어플리케이션으로부터 각종 클라우드 서비스의 유연한 이용을 가능하게 하는 것을 목적으로 하여 구성된 클라우드 중계 장치에 대해서 기재되어 있다. 클라우드 중계 장치는, 클라우드 서비스 장치와 접속 가능한 클라우드 접속 처리부와, 클라우드 접속 처리부에 대응하는 유저 인터페이스부와, 클라우드 접속 처리부와 유저 인터페이스부 사이에서 데이터의 중계를 행하는 중계부를 구비한다.
저(低)지연으로 행해야 할 처리 등을 에지측에서 실행하고, 클라우드측에서는 에지측의 처리 내용의 관리 등을 행하는, 소위 에지 컴퓨팅이 주목받고 있다. 또한 에지 컴퓨팅과 같이 복수의 거점간에서 행해지는 처리를 실현하기 위한 소프트웨어를 개발할 기회가 증가하고 있다. 또한 클라우드나 에지의 어플리케이션이 공개하는 API(Application Program Interface)를 이용하여 클라우드측이나 에지측에서 제공되는 어플리케이션의 처리를 연계시키는 소프트웨어가 주목받고 있다.So-called edge computing, which executes processing to be performed with low latency on the edge side and manages the content of processing on the edge side on the cloud side, is attracting attention. In addition, opportunities to develop software for realizing processing performed between a plurality of bases, such as edge computing, are increasing. In addition, software that connects processing of applications provided from the cloud side or the edge side by using APIs (Application Program Interfaces) opened by cloud or edge applications is attracting attention.
이러한 복수의 거점간에서 처리를 연계하는 소프트웨어의 개발에 있어서는, 거점간의 통신 부하의 경감이나 시큐러티의 향상, 소프트웨어의 개발 부하의 경감 등을 도모하는 것이 요구된다. 또한 소프트웨어의 개발 방법은, 종래의 데이터의 관리(SoR: System of Record)를 중심으로 한 개발 방법으로부터, 고객을 중심으로 한 개발 방법(SoE: system of Engagement)으로 시프트하고 있어, 소프트웨어의 개발에 있어서는, 도메인측(에지측)의 상황을 숙지한 시스템의 발주측(도메인 엑스퍼트)의 참가가 중요해지고 있다.In the development of software that links processing between these plural bases, it is required to reduce the communication load between the bases, improve security, and reduce the software development load. In addition, the software development method is shifting from the conventional development method centered on data management (SoR: System of Record) to the customer-centered development method (SoE: system of engagement), and software development In this case, it is becoming important for the ordering side (domain expert) to participate in the system knowing the situation on the domain side (edge side).
특허문헌 1에서는, 개개의 에지 디바이스가 개별적으로 클라우드와의 사이에서 통신하는 구성이기 때문에, 클라우드 및 개개의 에지 디바이스의 각각에 대해서 개별적으로 소프트웨어를 구축할 필요가 있어, 시스템 전체의 개발 부담이 크고, 특히 클라우드와의 연계 처리에 익숙하지 않은 도메인 엑스퍼트에 의한 개발은 곤란하다. 또한 에지 디바이스마다 클라우드와의 사이에서 통신이 발생하기 때문에, 클라우드와 에지 디바이스 사이의 통신 부하나 시큐러티의 확보가 문제가 된다.In
또한 특허문헌 2에 기재된 구성에서는, 에지측의 클라우드 중계 장치의 기능을 실현하는 소프트웨어를 개발할 필요가 있어, 각 거점의 클라우드 중계 장치에 대해서 개별적으로 소프트웨어를 개발할 필요가 있기 때문에 개발 부담이 크고, 특히 클라우드 중계 장치와 클라우드 사이의 연계 처리를 실현하는 소프트웨어의 개발은 도메인 엑스퍼트에게는 곤란하다.Further, in the configuration described in
본 발명은 이러한 배경에 의거하여 이루어진 것이며, 복수의 거점간에서 연계하여 행해지는 처리를 실현하는 소프트웨어를 효율적으로 개발하는 것이 가능한, 정보 처리 시스템, 및 정보 처리 시스템의 제어 방법을 제공하는 것을 목적으로 한다.The present invention has been made based on such a background, and aims to provide an information processing system and a control method for the information processing system capable of efficiently developing software that realizes processing performed in conjunction between a plurality of bases. do.
상기 목적을 달성하기 위한 본 발명의 하나는, 정보 처리 시스템으로서, 복수의 거점의 각각에 마련되고, 어플리케이션의 기능을 실현하는 소프트웨어인 AP 소프트웨어를 실행하는 정보 처리 장치인 복수의 AP 실행 장치를 포함하고, 상기 AP 실행 장치는 통신 네트워크를 통해 서로 통신 가능하게 접속되어 있으며, 상기 AP 실행 장치의 각각은, 같은 처리 블록을 같은 순서로 실행하는 공통의 AP 소프트웨어를 기억하고, 상기 AP 소프트웨어는, 제1 상기 거점의 제1 상기 AP 실행 장치에서 실행된 상기 처리 블록의 처리를, 제2 상기 거점의 제2 상기 AP 실행 장치에 연계하기 위한 처리를 실현하는 처리 블록인 전송 처리 블록을 포함하고, 상기 제1 AP 실행 장치는, 상기 AP 소프트웨어의 처리 블록의 순차 실행에 있어서 제1 상기 전송 처리 블록에 도달하면, 당해 제1 전송 처리 블록의 식별자를 포함하는, 연계 개시를 통지하는 메시지인 연계 개시 메시지를 상기 제2 AP 실행 장치에 송신하고, 상기 제2 AP 실행 장치는, 상기 연계 개시 메시지를 수신하면, 상기 제1 전송 처리 블록에 후속하는 처리 블록으로부터 순차 실행을 개시한다.One of the present inventions for achieving the above object is an information processing system, which is provided at each of a plurality of bases and includes a plurality of AP execution devices that are information processing devices that execute AP software, which is software for realizing application functions. The AP execution devices are communicatively connected to each other through a communication network, each of the AP execution devices stores common AP software that executes the same processing block in the same order, and the AP software: 1 includes a transmission processing block which is a processing block for realizing a process for linking processing of the processing block executed by the first AP execution device of the base to the second AP execution device of the second base; When the first AP execution device arrives at the first transfer processing block in the sequential execution of the processing blocks of the AP software, an association start message including an identifier of the first transfer processing block, which is a message notifying the start of the association. is transmitted to the second AP execution device, and the second AP execution device, upon receiving the association initiation message, starts sequential execution from a processing block subsequent to the first transmission processing block.
그 외, 본원이 개시하는 과제, 및 그 해결 방법은, 발명을 실시하기 위한 형태의 란, 및 도면에 의해 분명해진다.In addition, the subject disclosed by this application and the solution method thereof become clear from the column of the form for implementing the invention and the drawings.
본 발명에 의하면, 복수의 거점간에서 연계하여 행해지는 처리를 실현하는 소프트웨어를 효율적으로 개발할 수 있다.ADVANTAGE OF THE INVENTION According to this invention, it is possible to efficiently develop software that realizes processing performed in conjunction between a plurality of bases.
도 1은 정보 처리 시스템의 개략적인 구성을 나타내는 도면.
도 2는 AP 소프트웨어의 생성으로부터 실행까지의 개략적인 흐름을 설명하는 도면.
도 3은 AP 소프트웨어의 구체예를 나타내는 도면.
도 4는 정보 처리 장치의 구성예를 나타내는 도면.
도 5는 클라이언트 장치의 주된 기능을 설명하는 도면.
도 6은 AP 관리 장치의 주된 기능을 설명하는 도면.
도 7은 클러스터 관리 장치의 주된 기능을 설명하는 도면.
도 8은 AP 실행 장치의 주된 기능을 설명하는 도면.
도 9는 AP 프로세스에 의해 실현되는 주된 기능을 설명하는 도면.
도 10은 AP 소프트웨어 등록 시퀀스를 설명하는 도면.
도 11은 새로운 AP 실행 장치를 클러스터에 추가하는 절차를 설명하는 플로우 차트.
도 12는 AP 실행 장치 정보(451)의 일례를 나타내는 도면.
도 13은 AP 실행 장치 정보 접수 시퀀스를 설명하는 도면.
도 14는 속성 정보 변경 시퀀스를 설명하는 도면.
도 15는 속성 정보의 변경 정보의 일례를 나타내는 도면.
도 16은 속성 정보 제공 시퀀스를 설명하는 도면.
도 17은 AP 소프트웨어 실행 준비 시퀀스를 설명하는 도면.
도 18은 클러스터 내 정보 공유 시퀀스(AP 프로세스 기동 시)를 설명하는 도면.
도 19는 클러스터 내 정보 공유 시퀀스(AP 프로세스 소멸 시)를 설명하는 도면.
도 20은 AP 소프트웨어 실행 시퀀스를 설명하는 도면.
도 21은 AP 소프트웨어의 구성을 설명하는 도면.
도 22는 전송 개시 메시지의 일례를 나타내는 도면.
도 23은 연계 개시 메시지의 일례를 나타내는 도면.
도 24는 연계 종료 메시지의 일례를 나타내는 도면.
도 25는 제2 실시형태의 AP 관리 장치의 주된 기능을 설명하는 도면.
도 26은 제2 실시형태의 클러스터 관리 장치의 주된 기능을 설명하는 도면.
도 27은 AP 소프트웨어 반영 시퀀스를 설명하는 도면.
도 28은 제3 실시형태의 정보 처리 시스템의 개략적인 구성을 나타내는 도면.
도 29는 제3 실시형태의 AP 실행 장치의 주된 기능을 설명하는 도면.
도 30은 제3 실시형태의 클러스터 관리 장치의 주된 기능을 설명하는 도면.
도 31은 클러스터 관리 장치가 관리하는 데이터 리스트의 일례를 나타내는 도면.
도 32는 제3 실시형태에 있어서의 AP 소프트웨어의 기술예를 나타내는 도면.
도 33은 DB 접속 정보의 일례를 나타내는 도면.
도 34는 제3 실시형태의 AP 프로세스에 의해 실현되는 주된 기능을 설명하는 도면.
도 35는 DB 접속 확인 시퀀스를 설명하는 도면.
도 36은 제3 실시형태의 AP 소프트웨어 실행 시퀀스를 설명하는 도면.
도 37은 제3 실시형태의 전송 개시 메시지의 일례를 나타내는 도면.1 is a diagram showing a schematic configuration of an information processing system;
Fig. 2 is a diagram explaining a schematic flow from generation to execution of AP software;
Fig. 3 is a diagram showing a specific example of AP software;
Fig. 4 is a diagram showing an example of a configuration of an information processing device;
Fig. 5 is a diagram explaining the main functions of a client device;
Fig. 6 is a diagram explaining the main functions of the AP management device;
Fig. 7 is a diagram explaining the main functions of the cluster management device;
8 is a diagram for explaining the main functions of an AP execution device;
Fig. 9 is a diagram explaining the main functions realized by the AP process;
Fig. 10 is a diagram explaining an AP software registration sequence;
Fig. 11 is a flow chart illustrating a procedure for adding a new AP running device to a cluster;
12 is a diagram showing an example of AP
Fig. 13 is a diagram explaining an AP execution device information receiving sequence;
Fig. 14 is a diagram explaining an attribute information changing sequence;
Fig. 15 is a diagram showing an example of change information of attribute information;
Fig. 16 is a diagram explaining an attribute information providing sequence;
17 is a diagram explaining an AP software execution preparation sequence;
Fig. 18 is a diagram explaining an intra-cluster information sharing sequence (at the time of starting an AP process);
19 is a diagram for explaining an intra-cluster information sharing sequence (when an AP process lapses);
20 is a diagram explaining an AP software execution sequence;
Fig. 21 is a diagram explaining the configuration of AP software;
Fig. 22 is a diagram showing an example of a transmission start message;
Fig. 23 is a diagram showing an example of an association initiation message;
24 is a diagram showing an example of an association end message;
Fig. 25 is a diagram explaining the main functions of the AP management device according to the second embodiment.
Fig. 26 is a diagram explaining the main functions of the cluster management device according to the second embodiment.
27 is a diagram explaining an AP software reflection sequence;
Fig. 28 is a diagram showing a schematic configuration of an information processing system according to a third embodiment;
Fig. 29 is a diagram explaining the main functions of the AP execution device according to the third embodiment.
Fig. 30 is a diagram explaining the main functions of the cluster management device according to the third embodiment;
Fig. 31 is a diagram showing an example of a data list managed by a cluster management device;
Fig. 32 is a diagram showing a description example of AP software in the third embodiment.
33 is a diagram showing an example of DB connection information;
Fig. 34 is a diagram explaining the main functions realized by the AP process of the third embodiment.
Fig. 35 is a diagram explaining a DB connection confirmation sequence;
Fig. 36 is a diagram explaining an AP software execution sequence according to the third embodiment;
Fig. 37 is a diagram showing an example of a transmission start message according to the third embodiment;
이하, 실시형태에 대해 도면을 참조하면서 설명한다. 이하의 설명에 있어서, 동일하거나 또는 유사한 구성에 동일한 부호를 부여하여 중복된 설명을 생략할 경우가 있다. 또한 「어플리케이션 소프트웨어」를 「AP」라고 표기할 경우가 있다. 또한 「데이터베이스」를 「DB」라고 표기할 경우가 있다. 또한 이하의 설명에 있어서, 동종의 구성을 구별할 필요가 있을 경우, 구성을 총칭하는 부호 뒤에 괄호 쓰기로 식별자(숫자, 알파벳 등)를 표기할 경우가 있다.EMBODIMENT OF THE INVENTION Hereinafter, embodiment is described, referring drawings. In the following description, the same reference numerals are assigned to the same or similar components, and redundant descriptions may be omitted. Also, "application software" is sometimes expressed as "AP". Also, "database" is sometimes expressed as "DB". In addition, in the following description, when it is necessary to distinguish the same type of structure, there is a case where an identifier (number, alphabet, etc.) is written in parentheses after the code that generically names the structure.
[제1 실시형태][First Embodiment]
도 1에 제1 실시형태로서 설명하는 정보 처리 시스템(1)의 개략적인 구성을 나타내고 있다. 동(同)도면에 나타내는 바와 같이, 정보 처리 시스템(1)은, 클라이언트 장치(2), AP 관리 장치(3), 클러스터 관리 장치(4), 및 복수의 거점(8)(1)∼(N)의 각각에 존재하는 하나 이상의 AP 실행 장치(10)를 포함한다. 이들 장치는, 어느 것이나 정보 처리 장치(컴퓨터)를 이용하여 구성되고, 통신 네트워크(5)를 통해 서로 통신 가능하게 접속되어 있다.The schematic structure of the
통신 네트워크(5)는, 이더넷(등록 상표)이나 TCP/IP 등의 소정의 통신 프로토콜에 따른 통신을 실현하는 통신 기반(Network Infrastructure)이며, 예를 들면, LAN(Local Area Network), WAN(Wide Area Network), 인터넷, 전용선, 공중 통신망 등이다.The
클라이언트 장치(2)는, 소프트웨어 개발 기술자나 도메인 엑스퍼트 등의 유저에게, AP 실행 장치(10)에서 실행되는 어플리케이션 소프트웨어(이하, 「AP 소프트웨어」라고 칭함)의 편집 및 생성 환경(이하, 「소프트웨어 개발 환경」이라고 칭함)을 제공한다. 또, 본 실시형태에서는, 일례로서, 클라이언트 장치(2)는, 비주얼 프로그래밍 툴(이하, 「VP 툴」이라고 약기함)을 이용한 소프트웨어 개발 환경을 제공하는 것으로 하지만, 소프트웨어 개발 환경의 태양은 반드시 한정되지 않는다.The
VP 툴을 이용한 소프트웨어 개발에 있어서는, 각종 처리가 표현되는 노드에, 용도나 환경, 그 밖의 상황에 대응한 정보를 프로퍼티값으로서 설정하고, 노드간을 선으로 연결함으로써 일련의 처리를 플로우로서 기술한다. 노드는, 일반적인 절차형 프로그래밍 언어에 있어서의 함수 또는 메소드에 상당한다. 유저는, VP 툴을 이용함으로써, 의도한 처리를 행하는 소프트웨어를 직감적으로 개발할 수 있다. VP 툴의 일례로서 Node-RED가 있다. Node-RED로 개발한 일련의 플로우는, JavaScript(등록 상표)를 베이스로 한 JSON(JavaScript Object Notation) 형식의 코드로 관리된다. 또한 다른 VP 툴의 예로서, Apache Nifi 등이 있다.In software development using the VP tool, a series of processes is described as a flow by setting information corresponding to the purpose, environment, and other situations as property values in nodes where various processes are expressed, and connecting the nodes with lines. . A node corresponds to a function or method in a general procedural programming language. The user can intuitively develop software that performs intended processing by using the VP tool. One example of a VP tool is Node-RED. A series of flows developed with Node-RED are managed with code in JSON (JavaScript Object Notation) format based on JavaScript (registered trademark). Also, as an example of another VP tool, there is Apache Nifi and the like.
도 1에 있어서, AP 관리 장치(3)는, 클라이언트 장치(2)에 의해 생성된 AP 소프트웨어의 관리(기억)를 행한다. 예를 들면, AP 소프트웨어가 Node-RED에 의해 생성된 것일 경우, AP 관리 장치(3)는, AP 소프트웨어의 JSON 형식의 코드를 관리한다. AP 소프트웨어는, 컨테이너(AP 소프트웨어의 실행 모듈, 실행 환경에 관한 정보, 전개 방법이나 조작 방법에 관한 정보 등을 패키지화한 것)로 하여 AP 관리 장치(3)에 관리되는 것이어도 된다. 컨테이너의 일례로서 Docker(등록 상표)에 의한 것이 있다. AP 관리 장치(3)는, AP 소프트웨어의 버전 관리를 행하는 구조(GitHub(등록 상표), GitLab(등록 상표) 등)를 구비하고 있어도 된다.In FIG. 1 , an
거점(8)(1)∼(N)은, 예를 들면, 클라우드, 센서 데이터의 수집 등이 행해지는 현장(공장, 각종 작업 현장, 물류 창고, 오피스, 각종 설비(엘리베이터, 자동 개찰기, 각종 게이트, 철도 설비, 도로 설비, 센서 이용의 환경 계측 설비, 이동체(자동차, 열차, 항공기, 드론, 농업 기기 등), 농장, 데이터 센터 등이다.Bases (8) (1) to (N) are, for example, clouds, sites where sensor data collection, etc. are performed (factories, various work sites, distribution warehouses, offices, various facilities (elevators, automatic ticket gates, various These include gates, railroad facilities, road facilities, environmental measurement facilities using sensors, moving objects (cars, trains, aircraft, drones, agricultural equipment, etc.), farms, and data centers.
클러스터 관리 장치(4)는, AP 실행 장치(10)에 있어서의 처리의 실행 제어나 감시, 복수의 AP 실행 장치(10)를 이용한 클러스터 서비스(부하 분산, 페일오버 등)의 제공(관리, 감시, 제어)을 행한다. 본 명세서에 있어서, 클러스터란, 연계하여 AP 소프트웨어의 처리를 실행할 수 있는 AP 실행 장치(10)의 집합을 가리킨다. 또한 클러스터 관리 장치(4)는, 하나 이상의 클러스터를 관리하고, 예를 들면, 클러스터에의 AP 실행 장치(10)의 등록(참가)이나 등록 해제에 관한 처리를 행한다. 또한 클러스터 관리 장치(4)는, AP 실행 장치(10)에의 정보(AP 소프트웨어, 후술하는 AP 실행 장치 정보 등)의 배신(配信)이나 AP 실행 장치(10)간에서의 정보(클러스터에 참가 중인 AP 실행 장치(10)의 정보(참가 중인 AP 실행 장치(10)의 일람이나 후술하는 AP 실행 장치 정보 등))의 공유를 행한다. 클러스터 관리 장치(4)는, 동일 거점(8) 내의 AP 실행 장치(10)간뿐만 아니라, 거점(8)을 넘은 AP 실행 장치(10)간에서의 클러스터 서비스를 실현한다.The
각 거점(8)(1)∼(N)에는 하나 이상의 AP 실행 장치(10)가 존재한다. 각 거점(8)(1)∼(N)에 존재하는 AP 실행 장치(10)는, 같은 클러스터에 속해 있는 동일 또는 서로 다른 거점(8)의 다른 AP 실행 장치(10)와 연계하여 AP 소프트웨어를 실행할 수 있다.At each base 8 (1) to (N), one or more
도 2는, 클라이언트 장치(2)에 의해 생성된 AP 소프트웨어가 AP 실행 장치(10)에 제공(디플로이)되고, 각 AP 실행 장치(10)가 AP 소프트웨어를 실행할 때까지의 개략적인 흐름을 나타내는 도면이다.2 shows a schematic flow from the provision (deployment) of the AP software generated by the
동도면에 나타내는 바와 같이, 클라이언트 장치(2)에 의해 생성된 AP 소프트웨어(7)는, AP 관리 장치(3)에 등록됨과 함께, 클러스터 관리 장치(4)에 제공(송신)된다(S21). 예시하는 AP 소프트웨어(7)는, 순차 실행되는 5개의 처리 블록(「처리 A」, 「처리 B」, 「전송 처리」, 「처리 C」, 및 「처리 D」)을 갖는다. 각 처리 블록은, 예를 들면, VP 툴에 있어서의 하나의 처리 블록, 또한 일반적인 절차형 프로그래밍 언어에 있어서의 함수 또는 메소드에 상당한다. 처리 블록은, AP 실행 장치(10)에 이미 존재하는 다른 소프트웨어(예를 들면, API(Application Program Interface)로서 제공되는 소프트웨어)를 호출하여 이용하는 것이어도 된다. 「처리 A」 및 「처리 B」는, 거점(8)(1)에서 실행되는 것이 예정된 처리 블록이며, 「처리 C」 및 「처리 D」는, 거점(8)(2)에서 실행되는 것이 예정된 처리 블록이다.As shown in the same figure, the
계속해서, 클러스터 관리 장치(4)는, 공통의(같은) 구성을 갖는 AP 소프트웨어(7)를, 같은 클러스터에 속해 있는 복수의 AP 실행 장치(10)에 디플로이한다(S22). 본 예에서는, 클러스터 관리 장치(4)가, 거점(8)(1)의 AP 실행 장치(10)(1)와 거점(8)(2)의 AP 실행 장치(10)(2)를 공통의 클러스터에 속하는 AP 실행 장치(10)로서 관리하고, 거점(8)(1)의 AP 실행 장치(10)(1)와 거점(8)(2)의 AP 실행 장치(10)(2)에 공통의 AP 소프트웨어(7)를 디플로이한다.Subsequently, the
AP 실행 장치(10)에 디플로이된 AP 소프트웨어의 처리는, 예를 들면, 클러스터 관리 장치(4)가, AP 실행 장치(10)(1)의 하나에 AP 소프트웨어(7)의 실행 개시 명령을 송신함으로써 개시된다. 본 예에서는, 거점(8)(1)의 AP 실행 장치(10)(1)에 클러스터 관리 장치(4)로부터 실행 개시 명령이 송신되고, AP 실행 장치(10)(1)가 AP 소프트웨어의 실행을 개시(「처리 A」로부터 실행 개시)하는 것으로 한다.Processing of the AP software deployed in the
「처리 A」가 종료되면, AP 실행 장치(10)(1)는, 계속해서 「처리 B」를 실행하고, 계속해서 「전송 처리」를 실행한다. 「전송 처리」는, 다른 AP 실행 장치(10)에 처리를 연계시키는(인계하는) 처리이다. 본 예에서는, 거점(8)(2)의 AP 실행 장치(10)(2)에 처리가 연계되고, 「처리 B」의 처리 결과가, AP 실행 장치(10)(2)의 「전송 처리」에 인계되고, AP 실행 장치(10)(2)의 「전송 처리」는, 후속하는 「처리 C」로부터 처리를 개시한다.When "Process A" ends, the AP execution device 10 (1) continues to execute "Process B" and subsequently executes "Transfer Processing". The "transfer process" is a process of linking (transferring) the process to another
도 3에 AP 소프트웨어(7)의 구체예를 나타낸다. 예시하는 AP 소프트웨어(7)는, 에지 컴퓨팅에 의한, 기계 학습 모델(이하, 「학습 모델」이라고 칭함)을 이용한 예조 진단의 기능을 실현하는 소프트웨어이다.Fig. 3 shows a specific example of the
동도면에 나타내는 바와 같이, 클라우드인 거점(8)(1)의 AP 실행 장치(10)(1)는, 에지인 거점(8)(2)의 AP 실행 장치(10)(2)가 예조 진단에 있어서 이용하는 하나 이상의 학습 모델(30)을 관리(기억)한다.As shown in the figure, the AP execution device 10 (1) of the base (8) (1), which is a cloud, is the AP execution device (10) (2) of the base (8) (2), which is an edge. Manages (stores) one or
우선 AP 실행 장치(10)(1)가, 에지인 거점(8)(2)의 AP 실행 장치(10)(2)에 제공하는 학습 모델을 취득하고(S31), 취득한 학습 모델을 거점(8)(2)의 AP 실행 장치(10)에 전송한다(S32). S32의 처리는, 상술한 「전송 처리」에 상당한다.First, the AP execution device 10 (1) acquires a learning model provided to the AP execution device (10) (2) of the base (8) (2), which is an edge (S31), and the acquired learning model is transferred to the base (8) ) is transmitted to the
거점(8)(2)의 AP 실행 장치(10)(2)는, 학습 모델을 수신하여 기억한다(S33). 계속해서 AP 실행 장치(10)(2)는 센서 데이터를 취득하고(S34), 취득한 센서 데이터를, 기억하고 있는 학습 모델에 적용하여 예조 진단을 행하고(S35), 예조 진단의 결과에 따른 처리(알러트(alert)의 출력 등)를 행한다(S36).The AP execution device 10 (2) of the base (8) (2) receives and stores the learning model (S33). Subsequently, the AP execution device 10 (2) acquires sensor data (S34), applies the acquired sensor data to the stored learning model to perform a preliminary diagnosis (S35), and processes according to the result of the preliminary diagnosis (S35). output of an alert, etc.) is performed (S36).
한편, AP 실행 장치(10)(2)는, 취득한 센서 데이터를 학습 데이터로 하여 기계 학습함으로써 학습 모델을 갱신하고(S37), 갱신이 끝난 학습 모델을 거점(8)(1)의 AP 실행 장치(10)(1)에 전송한다(S38). S33 및 S38은, 상술한 「전송 처리」에 상당한다.On the other hand, the AP execution device 10 (2) updates the learning model by machine learning using the acquired sensor data as learning data (S37), and transfers the updated learning model to the AP execution device of the base (8) (1). (10) Transfer to (1) (S38). S33 and S38 correspond to the "transfer processing" described above.
클라우드의 AP 실행 장치(10)(1)는, 학습 모델을 수신하고(S39), 관리(기억)하고 있는 학습 모델(30)을 수신한 학습 모델의 내용으로 갱신한다(S40). S39의 처리는 상술한 「전송 처리」에 상당한다.The cloud AP execution device 10 (1) receives the learning model (S39), and updates the managed (stored) learning
이상과 같이, 연계하여 처리를 실행하는 복수의 AP 실행 장치(10)의 각각에는, 공통의(같은) 구성을 갖는 AP 소프트웨어(7)가 제공(디플로이)된다. 따라서, AP 실행 장치(10)마다 다른 AP 소프트웨어(7)를 구축할 필요가 없고, AP 소프트웨어(7)는, 예를 들면, 클라우드와 거점(8)간의 처리에 정통(精通)해 있는 특정한 개발자가 구축하면 된다. 그 때문에, 각 거점(8)의 도메인 엑스퍼트가 개별적으로 AP 소프트웨어(7)를 구축할 필요가 없고, 복수의 거점(8)간에서 연계하여 처리를 실행하는 소프트웨어를 정보 처리 시스템(1) 전체적으로 효율적으로 개발할 수 있다.As described above,
또한 복수의 AP 실행 장치(10) 중 어느 것에도 공통의(같은) AP 소프트웨어(7)가 제공(디플로이)된다. 그 때문에, AP 소프트웨어(7)의 관리(보수) 부담이나 운용 부담이 적게 된다. 또한 AP 실행 장치(10)간의 통신은, 원칙적으로 전송 처리에서만 발생하므로 정보 처리 시스템(1) 전체적으로 통신 부하를 경감할 수 있고, 또한 특정한 처리 블록(전송 처리)에 집중하여 감시하면 되므로 시큐러티의 향상을 도모할 수 있다.In addition, common (same)
도 4에, 이상에 설명한 클라이언트 장치(2), AP 관리 장치(3), 클러스터 관리 장치(4), 및 AP 실행 장치(10)의 실현에 이용하는 정보 처리 장치(100)의 하드웨어의 일례를 나타낸다. 동도면에 나타내는 바와 같이, 예시하는 정보 처리 장치(100)는, 프로세서(11), 주기억 장치(12), 보조 기억 장치(13), 입력 장치(14), 출력 장치(15), 및 통신 장치(16)를 구비한다.4 shows an example of the hardware of the
클라이언트 장치(2), AP 관리 장치(3), 클러스터 관리 장치(4), 및 AP 실행 장치(10)는, 예를 들면, 클라우드 시스템(Cloud System)에 의해 제공되는 클라우드 서버(Cloud Server)와 같은 가상적인 정보 처리 자원을 이용하여 실현되는 것이어도 된다. 또한 예를 들면, 클라이언트 장치(2), AP 관리 장치(3), 클러스터 관리 장치(4), 및 AP 실행 장치(10)는, 협조하여 동작하는 복수의 정보 처리 장치(100)에 의해 실현되는 것이어도 된다. 또한 예를 들면, 클라이언트 장치(2), AP 관리 장치(3), 클러스터 관리 장치(4), 및 AP 실행 장치(10) 중 2개 이상을 공통의 정보 처리 장치(100)로 실현하도록 해도 된다.The
프로세서(11)는, 예를 들면, CPU(Central Processing Unit), MPU(Micro Processing Unit), GPU(Graphics Processing Unit) 등을 이용하여 구성되어 있다. 주기억 장치(12)는, 프로그램이나 데이터를 기억하는 장치이며, 예를 들면, ROM(Read Only Memory)(SRAM(Static Random Access Memory), NVRAM(Non Volatile RAM), 마스크 ROM(Mask Read Only Memory), PROM(Programmable ROM) 등), RAM(Random Access Memory)(DRAM(Dynamic Random Access Memory) 등) 등이다. 보조 기억 장치(13)는, 하드디스크 드라이브(Hard Disk Drive), 플래시 메모리(Flash Memory), SSD(Solid State Drive), 광학식 기억 장치(CD(Compact Disc), DVD(Digital Versatile Disc) 등) 등이다. 보조 기억 장치(13)에 저장되어 있는 프로그램이나 데이터는, 수시로, 주기억 장치(12)에 읽어들여진다.The
입력 장치(14)는, 유저로부터 정보를 접수하는 유저 인터페이스이며, 예를 들면, 키보드, 마우스, 카드 리더, 터치패널 등이다. 출력 장치(15)는, 정보를 출력(표시 출력, 음성 출력, 인자 출력 등)함으로써 유저에게 정보를 제공하는 유저 인터페이스이며, 예를 들면, 각종 정보를 가시화하는 표시 장치(LCD(Liquid Crystal Display), 그래픽 카드 등)나 음성 출력 장치(스피커), 인자 장치 등이다. 통신 장치(16)는, 통신 네트워크(5)를 통해 다른 장치와 통신하는 통신 인터페이스이며, 예를 들면, NIC(Network Interface Card), 무선 통신 모듈, USB(Universal Serial Interface) 모듈, 시리얼 통신 모듈 등이다. 통신 장치(16)는, 통신 가능하게 접속하는 다른 장치로부터 정보를 수신하는 입력 장치로서 기능시킬 수도 있다. 또한 통신 장치(16)는, 통신 가능하게 접속하는 다른 장치에 정보를 송신하는 출력 장치로서 기능시킬 수도 있다.The
클라이언트 장치(2), AP 관리 장치(3), 클러스터 관리 장치(4), 및 AP 실행 장치(10)의 기능은, 프로세서(11)가, 주기억 장치(12)에 저장되어 있는 프로그램을 판독하여 실행함으로써 실현된다. 또한 상기의 프로그램은, 예를 들면, 기록 매체에 기록하여 배포할 수 있다.The function of the
클라이언트 장치(2), AP 관리 장치(3), 클러스터 관리 장치(4), 및 AP 실행 장치(10)는, 상기의 기능에 더하여, 예를 들면, 오퍼레이팅 시스템, 파일 시스템, 디바이스 드라이버, DBMS(DataBase Management System) 등의 다른 기능을 더 구비하고 있어도 된다. 클라이언트 장치(2), AP 관리 장치(3), 클러스터 관리 장치(4), 및 AP 실행 장치(10)는, 각종 정보(데이터)를, 예를 들면, 데이터베이스의 테이블이나 파일로서 기억한다.The
도 5에 클라이언트 장치(2)가 구비하는 주된 기능을 나타내고 있다. 동도면에 나타내는 바와 같이, 클라이언트 장치(2)는, 기억부(205), AP 소프트웨어 편집부(210), AP 소프트웨어 전송부(220), 속성 정보 취득 제시부(230), 및 처리 요구 송신부(240)의 각 기능을 구비한다. 또, 클라이언트 장치(2)는, 소프트웨어 개발 기술자나 도메인 엑스퍼트, 클러스터의 관리자 등의 유저에 의해 조작된다.Fig. 5 shows the main functions of the
상기 기능 중, 기억부(205)는, AP 소프트웨어(7) 및 속성 정보(252)를 기억한다.Among the above functions, the
AP 소프트웨어 편집부(210)는, VP 툴을 이용한 AP 소프트웨어(7)의 개발 환경을 유저에게 제공하고, AP 소프트웨어(7)의 생성을 행한다.The
AP 소프트웨어 전송부(220)는, AP 소프트웨어 편집부(210)에 의해 생성된 AP 소프트웨어(7)를 AP 관리 장치(3) 및 클러스터 관리 장치(4)에 전송한다.The
속성 정보 취득 제시부(230)는, 후술하는 속성 정보의 취득 요구를 클러스터 관리 장치(4)에 송신하고, 클러스터 관리 장치(4)로부터 보내져 오는 속성 정보를 수신하여 유저에게 제시한다. 속성 정보에 대해서는 후술한다.The attribute information acquisition and
처리 요구 송신부(240)는, 클러스터 관리 장치(4)에, 후술하는 AP 프로세스(800)의 생성 지시나 AP 소프트웨어(7)의 실행 개시 지시 등의 처리 요구를 클러스터 관리 장치(4)에 송신한다.The
도 6에 AP 관리 장치(3)가 구비하는 주된 기능을 나타내고 있다. 동도면에 나타내는 바와 같이, AP 관리 장치(3)는, 기억부(305), AP 소프트웨어 수신부(310), 및 AP 소프트웨어 관리부(520)를 구비한다.Fig. 6 shows the main functions of the
AP 소프트웨어 수신부(310)는, 클라이언트 장치(2)로부터 통신 네트워크(5)를 통해 보내져 오는 AP 소프트웨어(7)를 수신한다. AP 소프트웨어 수신부(310)가 수신한 AP 소프트웨어는 기억부(305)가 기억한다. AP 소프트웨어 관리부(520)는, AP 소프트웨어(7)의 버전 관리를 행한다.The
도 7에 클러스터 관리 장치(4)가 구비하는 주된 기능을 나타내고 있다. 동도면에 나타내는 바와 같이, 클러스터 관리 장치(4)는, 기억부(405), 처리 요구 접수부(410), 및 클러스터 관리부(420)를 구비한다.Fig. 7 shows the main functions of the
기억부(405)는, AP 실행 장치 정보(451), 클러스터 관리 정보(452), 및 AP 소프트웨어(7)를 기억한다. AP 실행 장치 정보(451)는, AP 실행 장치(10)에 관한 각종 정보를 포함한다. 클러스터 관리 정보(452)는, 클러스터의 구성이나 클러스터의 가동 상황에 관한 정보를 포함한다. 클러스터 관리 정보(452)의 내용은, 클러스터 관리부(420) 및 프로세스간 정보 공유부(423)가 관리한다.The
처리 요구 접수부(410)는, 클라이언트 장치(2)로부터 처리의 실행 요구(속성 정보의 제공 요구, AP 소프트웨어(7)의 실행 개시 요구, AP 소프트웨어(7)나 AP 실행 장치 정보(451)의 설정(등록/변경/삭제) 요구 등)을 접수한다. 이와 같이 클러스터 관리 장치(4)는, 유저로부터의 요구를 접수하는 유저 인터페이스(유저와의 접점)로서도 기능한다.The process
클러스터 관리부(420)는, AP 실행 장치 정보 관리부(421), 속성 정보 관리부(422), 및 프로세스간 정보 공유부(423)를 포함한다.The
이 중 AP 실행 장치 정보 관리부(421)는, 클러스터를 구성하는 AP 실행 장치(10)에 관한 정보 중, AP 실행 장치(10)에 있어서 생성되는 프로세스(AP 소프트웨어(7)를 실행함으로써 생성되는 프로세스. 이하, 「AP 프로세스」라고 칭함)에 관한 정보를 관리한다. 상기 정보는, 예를 들면, AP 프로세스가 동작하는 AP 실행 장치(10)의 네트워크 어드레스(IP 어드레스 등)나 AP 프로세스와 통신하기 위한 포트 번호 등이다.Among them, the AP execution device
속성 정보 관리부(422)는, AP 프로세스가 상술한 「전송 처리」를 행할 때에 전송처의 AP 실행 장치(10)를 특정하기 위해 필요한 정보(이하, 「속성 정보」라고 칭함)를 관리한다. 속성 정보의 상세에 대해서는 후술한다.The attribute
프로세스간 정보 공유부(423)는, AP 실행 장치(10)에 있어서 생성되는 각 AP 프로세스 사이에서의 정보 공유에 관한 처리를 행한다. 프로세스간 정보 공유부(423)는, 클러스터를 구성하는 AP 실행 장치(10) 사이나 각 AP 프로세스 사이에서 공유해야 할 정보(AP 소프트웨어(7), 후술하는 AP 실행 장치 정보 등)를 관리(기억)하고, 상기 정보에 대해서, 통신 네트워크(5)를 통해 AP 실행 장치(10) 및 AP 프로세스간에서의 고속(리얼타임)의 공유(배신, 통지)를 실현한다. 또한 프로세스간 정보 공유부(423)는, AP 프로세스로부터 보내져 오는 클러스터에의 참가 등록 요구를 수신하여 클러스터 관리 정보(452)를 갱신(상기 AP 프로세스가 소정의 클러스터에 속하는 내용으로 갱신)한다. 또한 프로세스간 정보 공유부(423)는, AP 실행 장치(10)의 후술하는 AP 프로세스(800)로부터 보내져 오는 생존 통지(하트 비트)를 감시함으로써, AP 프로세스(800)가 정상으로 기능하고 있는지의 여부를 리얼타임으로 파악한다.The inter-process
프로세스간 정보 공유부(423)는, 예를 들면, 에지측의 각 거점(8)(1)∼(N)에 존재하는 정보 처리 장치를 통신 가능하게 접속하여 구성되는 분산 처리 시스템에 의해 실현해도 된다. 그렇게 함으로써, 클러스터 관리 장치(4)와 같은 특정한 정보 처리 장치에의 부하의 집중을 방지함과 함께, 각 거점(8)(1)∼(N)에 있어서의 처리의 고속화를 도모할 수 있다. 상기 분산 처리 시스템은, 예를 들면, Apache 소프트웨어 재단(Apache Software Foundation)이 제공하는 ZooKeeper를 이용하여 실현할 수 있다.The inter-process
도 8에 AP 실행 장치(10)가 구비하는 주된 기능을 나타내고 있다. 동도면에 나타내는 바와 같이, AP 실행 장치(10)는, 기억부(105), 센서 데이터 취득부(110), 및 프로세스 실행 관리부(120)를 구비한다.Fig. 8 shows the main functions of the
센서 데이터 취득부(110)는, 당해 AP 실행 장치(10)가 존재하는 거점(8)에 마련되어 있는 센서 장치 등으로부터 보내져 오는 센서 데이터를 수신한다. 센서 데이터 취득부(110)가 수신한 센서 데이터는, 기억부(105)가 센서 데이터(152)로서 기억한다. 또, 이하에서는, 이와 같이 AP 실행 장치(10)(AP 프로세스(800))가 처리 대상으로 하는 데이터가 센서 데이터일 경우를 예로서 설명하지만, AP 실행 장치(10)(AP 프로세스(800))가 처리 대상으로 하는 데이터의 종류는 반드시 한정되지 않고, AP 실행 장치(10)(AP 프로세스(800))가 처리 대상으로 하는 데이터는 센서 데이터 이외의 데이터여도 된다.The sensor
프로세스 실행 관리부(120)는, AP 프로세스(800)(Docker(등록 상표) 컨테이너의 프로세스 등)의 관리(AP 프로세스의 생성이나 소멸, AP 프로세스의 상태 감시 등)를 행한다.The process
도 9는, AP 실행 장치(10)가 생성하는 AP 프로세스(800)에 의해 실현되는 주된 기능을 개념적으로 나타낸 것이다. 동도면에 나타내는 바와 같이, AP 프로세스(800)는, AP 소프트웨어 수신부(811), 프로세스 실행 제어부(812), 및 생존 통지 송신부(813)를 구비한다. 이들 기능의 일부는, AP 실행 장치(10)가 구비하는 오퍼레이팅 시스템이나 프로세스 실행 관리부(120)에 의해 실현되는 것이어도 된다.9 conceptually illustrates the main functions realized by the
AP 소프트웨어 수신부(811)는, 클러스터 관리 장치(4)의 프로세스간 정보 공유부(423)로부터 AP 소프트웨어(7)를 수신한다. 기억부(105)는, AP 소프트웨어 수신부(811)가 수신한 AP 소프트웨어(7)를 기억한다. 이에 따라 AP 실행 장치(10)(AP 프로세스(800))에 AP 소프트웨어(7)가 디플로이된다.The AP
프로세스 실행 제어부(812)는, AP 소프트웨어(7)의 실행 환경을 제공한다. 예를 들면, AP 소프트웨어(7)가 Node-RED에 의해 생성된 것일 경우, 프로세스 실행 제어부(812)는, AP 소프트웨어(7)를 실행하기 위한 Node-RED의 실행 환경을 제공한다. 또한 프로세스 실행 제어부(812)는, AP 소프트웨어(7)의 실행 제어를 행한다.The
프로세스 실행 제어부(812)는, AP 소프트웨어 처리 실행부(8121) 및 메시지 전송부(8122)를 갖는다. 이 중 AP 소프트웨어 처리 실행부(8121)는, AP 소프트웨어(7)의 플로우 제어(처리 블록의 순차 실행 제어)를 행한다. 메시지 전송부(8122)는, 상술한 「전송 처리」에 있어서, AP 프로세스(800)간에서의 처리의 연계(인계)에 필요한 정보(이하, 「메시지」라고 칭함)를 다른 AP 프로세스(800)와의 사이에서 송신 또는 수신한다.The process
생존 통지 송신부(813)는, 프로세스간 정보 공유부(423)와 생존 통지(하트 비트)를 수시로(예를 들면 정기적으로) 송수신한다.The survival
<처리 설명><Treatment Description>
계속해서, 정보 처리 시스템(1)에 있어서 행해지는 각종 처리에 대해서 순서대로 설명한다.Subsequently, various processes performed in the
도 10은, 클라이언트 장치(2)로부터 AP 관리 장치(3) 및 클러스터 관리 장치(4)에 AP 소프트웨어(7)가 등록(기억)될 때에 행해지는 처리(이하, AP 소프트웨어 등록 시퀀스 S1000이라고 칭함)를 설명하는 시퀀스도이다.Fig. 10 shows processing performed when the
우선 클라이언트 장치(2)는, AP 관리 장치(3)에 AP 소프트웨어(7)와 AP 소프트웨어(7)의 등록 요구를 송신한다(S1011). AP 관리 장치(3)는, 클라이언트 장치(2)로부터 상기 등록 요구를 수신하면, 상기 등록 요구와 함께 수신한 AP 소프트웨어(7)를 관리 대상으로서 등록(기억)한다(S1012).First, the
또한 클라이언트 장치(2)는, 클러스터 관리 장치(4)에 AP 소프트웨어(7)를 송신한다. 클러스터 관리 장치(4)의 처리 요구 접수부(410)는, 클라이언트 장치(2)로부터 보내져 온 상기 AP 소프트웨어(7)를 수신한다(S1013).Also, the
클러스터 관리 장치(4)의 처리 요구 접수부(410)는, 수신한 AP 소프트웨어(7)를 자신의 프로세스간 정보 공유부(423)에 송신한다(S1014). 프로세스간 정보 공유부(423)는, AP 소프트웨어(7)를 수신하여 관리 대상으로서 등록(기억)한다(S1015).The process
또, 다른 처리 순서로서, 처리 요구 접수부(410)가, AP 소프트웨어(7)의 수신 후에, 프로세스간 정보 공유부(423)와 함께 AP 관리 장치(3)에 AP 소프트웨어(7)를 송신하고, AP 관리 장치(3)가 AP 소프트웨어(7)를 등록하도록 해도 된다. 이 처리 순서의 경우, 클라이언트 장치(2)가 AP 소프트웨어 등록 요구를 송신하는 횟수를 1회로 억제할 수 있다.Further, as another processing procedure, after receiving the
도 11은, 클러스터 관리 장치(4)가 관리하는 클러스터에 새로운 AP 실행 장치(10)를 추가하는 절차를 설명하는 플로우 차트이다.Fig. 11 is a flow chart explaining a procedure for adding a new
우선 AP 실행 장치(10)의 관리자 등이, AP 실행 장치(10)를 통신 네트워크(5)에 접속한다(S1111).First, the administrator or the like of the
계속해서, 클러스터 관리 장치(4)의 관리자 등이, 새롭게 통신 네트워크(5)에 접속된 상기의 AP 실행 장치(10)의 정보를 AP 실행 장치 정보(451)로서 등록(기억)한다(S1112). 또, 새롭게 등록된 AP 실행 장치 정보(451)는, 프로세스간 정보 공유부(423)에도 통지(공유)되고, 당해 AP 실행 장치(10)가 속하는 클러스터의 각 AP 실행 장치(10)에 공유된다.Subsequently, the administrator of the
도 12는, AP 실행 장치 정보(451)의 일례이다. 예시하는 AP 실행 장치 정보(451)는, JSON 형식의 데이터로 기술되어 있다. AP 실행 장치 정보(451)는, 통신 관련 정보, 상술한 속성 정보, 및 인증 정보를 포함한다.12 is an example of AP
이 중 통신 관련 정보는, 같은 클러스터에 속하는 AP 실행 장치(10)(AP 프로세스(800))간에서 AP 소프트웨어의 처리를 연계하여 행할 때, 각 AP 실행 장치(10)(AP 프로세스(800))간에서 통신을 행하기 위해 필요한 정보(예를 들면, AP 실행 장치(10)의 IP 어드레스, AP 프로세스(800)의 포트 번호 등)이다. 동도면에서는 「0002」행째에 기술되어 있는 정보가 통신 관련 정보에 상당한다.Among them, the communication-related information is associated with each AP execution device 10 (AP process 800) when AP software processing is performed in association with each other AP execution device 10 (AP process 800) belonging to the same cluster. It is information necessary for inter-communication (for example, the IP address of the
또한 속성 정보는, AP 프로세스가 상술한 「전송 처리」를 행할 때에 전송처의 AP 실행 장치(10)를 특정하기 위해 필요한 정보이며, 예를 들면, AP 실행 장치(10)가 설치되어 있는 거점(8)이나 AP 실행 장치(10)를 관리하는 조직을 특정하는 정보, AP 실행 장치(10)의 명칭, AP 실행 장치(10)의 구성(프로세서나 메모리의 정보)을 나타내는 정보 등이다. 또, AP 실행 장치(10)가 가상 머신을 제공할 경우, 속성 정보에는 가상 머신에 관한 정보가 포함된다. 동도면에서는 「0003」∼「0019」행에 기술되어 있는 정보가 속성 정보에 상당한다.Attribute information is information necessary for specifying the transfer destination
또한 인증 정보는, AP 실행 장치(10)의 AP 프로세스(800)나 AP 프로세스(800)에 의해 실현되는 기능에 액세스(통신, 이용 등)할 때에 필요해지는 정보(유저 ID, 패스워드) 등이다. 동도면에서는 「0020」∼「0021」행에 기술되어 있는 정보가 인증 정보에 상당한다.Further, the authentication information is information (user ID, password) required when accessing (communicating, using, etc.) the
도 13은, 도 11의 S1112에 있어서, 클러스터 관리 장치(4)가 클라이언트 장치(2)로부터 AP 실행 장치 정보를 접수했을 때에 행하는 처리(이하, 「AP 실행 장치 정보 접수 시퀀스 S1300」이라고 칭함)를 설명하는 시퀀스도이다.Fig. 13 shows the processing performed when the
우선 처리 요구 접수부(410)가, 클라이언트 장치(2)로부터 AP 실행 장치 정보를 수신하고(S1311), 수신한 AP 실행 장치 정보를 클러스터 관리부(420)에 송신하고, 클러스터 관리부(420)(AP 실행 장치 정보 관리부(421), 프로세스간 정보 공유부(423))가 AP 실행 장치 정보를 수신한다(S1312).First, the processing
클러스터 관리부(420)의 AP 실행 장치 정보 관리부(421)는, 수신한 AP 실행 장치 정보를 AP 실행 장치 정보(451)로서 기억한다(S1313). 또한 클러스터 관리부(420)의 프로세스간 정보 공유부(423)는, 수신한 AP 실행 장치 정보(451)를 관리 대상으로서 기억한다(S1314).The AP execution device
또, 다른 처리 순서로서, AP 실행 장치 정보가 등록(S1313)된 후에, AP 실행 장치 정보 관리부(421)가 AP 실행 장치 정보를 프로세스간 정보 공유부(423)에 송신하고(S1312), 프로세스간 정보 공유부(423)가 AP 실행 장치 정보(451)를 기억(S1314)하도록 해도 된다.As another processing sequence, after the AP execution device information is registered (S1313), the AP execution device
도 14는, 클러스터 관리 장치(4)가, 클라이언트 장치(2)로부터 속성 정보의 변경 요구를 접수했을 때에 행하는 처리(이하, 「속성 정보 변경 시퀀스 S1400」이라고 칭함)를 설명하는 시퀀스도이다.Fig. 14 is a sequence diagram illustrating processing (hereinafter referred to as "attribute information change sequence S1400") performed when the
우선 처리 요구 접수부(410)가, 클라이언트 장치(2)로부터 속성 정보의 변경 정보를 수신하고(S1411), 수신한 상기 변경 정보를 클러스터 관리부(420)에 송신하고, 클러스터 관리부(420)(AP 실행 장치 정보 관리부(421), 프로세스간 정보 공유부(423))가 상기 변경 정보를 수신한다(S1412). 또, 상기 변경 정보의 접수에 있어서, 처리 요구 접수부(410)가, 상기 변경 정보의 내용을 검사(변경 정보에 부정문자가 포함되어 있지 않은지, 변경 정보에 포함되어 있는 AP 실행 장치(10)의 식별자에 중복은 없는지 등을 검사)하고, 속성 정보가 부정한 내용으로 클러스터 관리 장치(4)에 기억되지 않도록 해도 된다. 이와 같이 처리 요구 접수부(410)가 변경 정보의 내용을 검사함으로써 트러블의 발생을 미연에 방지할 수 있다.First, the processing
계속해서, AP 실행 장치 정보 관리부(421)가, 수신한 상기 변경 정보를 AP 실행 장치 정보(451)에 반영한다(S1413). 또한 프로세스간 정보 공유부(423)가, 보내져 온 상기 변경 정보를, 자신이 기억하고 있는 AP 실행 장치 정보에 반영한다(S1414). 또, AP 실행 장치 정보(451)의 내용과, 프로세스간 정보 공유부(423)가 기억하고 있는 AP 실행 장치 정보의 내용은 동기하고 있을 필요가 있기 때문에, S1413에서 상기 변경 정보가 AP 실행 장치 정보(451)에 반영된 것이 확인된 후에, 프로세스간 정보 공유부(423)가 기억하고 있는 AP 실행 장치 정보의 내용에 반영하는(S1414) 것이 바람직하다.Subsequently, the AP execution device
도 15는, 속성 정보의 변경 정보의 일례이다. 예시하는 변경 정보는 JSON 형식의 데이터로 기술되어 있다. 예시하는 변경 정보는, 통신 관련 정보(「0002」행째) 및 속성 정보(「0003」∼「0019」행)를 포함하지만, 인증 정보는 포함하지 않는다. 또, 변경 정보가 통신 관련 정보를 포함하는 것은, 당해 변경 정보의 반영의 대상이 되는 AP 실행 장치 정보를 특정할 필요가 있기 때문이다.15 is an example of change information of attribute information. The exemplified change information is described as data in JSON format. The exemplified change information includes communication-related information (line "0002") and attribute information (lines "0003" to "0019"), but does not include authentication information. In addition, the reason why the change information includes communication-related information is that it is necessary to specify AP execution device information to which the change information is reflected.
도 16은, 클러스터 관리 장치(4)가 클라이언트 장치(2)로부터 속성 정보의 취득 요구를 접수했을 때에 행하는 처리(이하, 「속성 정보 제공 시퀀스 S1600」이라고 칭함)를 설명하는 시퀀스도이다. 또, 유저는, 예를 들면, AP 소프트웨어의 편집에 있어서 당해 처리에 의해 제공되는 속성 정보를 참조한다.Fig. 16 is a sequence diagram illustrating processing (hereinafter referred to as "attribute information provision sequence S1600") performed when the
우선 처리 요구 접수부(410)가, 클라이언트 장치(2)로부터 속성 정보의 취득 요구를 접수한다(S1611). 상기 취득 요구는, 특정한 AP 실행 장치(10)의 속성 정보를 지정하는 것이어도 되고, 클러스터 관리 장치(4)가 관리(기억)하고 있는 복수의 속성 정보를 지정하는 것이어도 된다.First, the processing
처리 요구 접수부(410)는, 상기 취득 요구를 수신하면, 클러스터 관리부(420)의 속성 정보 관리부(422)에, 상기 취득 요구에서 지정된 속성 정보의 제공 요구를 송신한다(S1612).Upon receiving the acquisition request, the processing
속성 정보 관리부(422)는, 상기 제공 요구를 수신하면, 당해 제공 요구에서 지정된 속성 정보를 처리 요구 접수부(410)에 송신한다(S1613).Upon receiving the provision request, the attribute
처리 요구 접수부(410)는, 속성 정보 관리부(422)로부터 속성 정보를 수신하면, 수신한 속성 정보를 클라이언트 장치(2)에 송신한다(S1614).Upon receiving attribute information from the attribute
도 17은, 클러스터 관리 장치(4)가 클라이언트 장치(2)로부터 AP 프로세스(800)의 생성 지시를 수신했을 때에 행하는 처리(이하, 「AP 소프트웨어 실행 준비 시퀀스 S1700」이라고 칭함)를 설명하는 시퀀스도이다. AP 소프트웨어 실행 준비 시퀀스 S1700은, AP 실행 장치(10)가 AP 소프트웨어(7)를 실행하기 위한 준비 처리이다.Fig. 17 is a sequence diagram illustrating a process performed when the
우선 클라이언트 장치(2)로부터 클러스터 관리 장치(4)의 처리 요구 접수부(410)에 AP 프로세스(800)의 생성 지시가 송신된다(S1711).First, an instruction to create the
처리 요구 접수부(410)는, 상기 생성 지시를 수신하면, AP 프로세스의 생성 지시를, 당해 생성 지시의 대상이 되고 있는 AP 프로세스(800)를 연계하여 실행시킬 예정의 복수의 AP 실행 장치(10)(같은 클러스터에 속하는 AP 실행 장치(10). 본 예에서는 3개의 AP 실행 장치(10)(1)∼(3)가 같은 클러스터에 속해 있는 것으로 함)에 송신한다(S1712).Upon receiving the creation instruction, the process
AP 실행 장치(10)의 프로세스 실행 관리부(120)는, 상기 생성 지시를 수신하면(S1713), AP 프로세스(800)를 생성한다(S1713, S1714).Upon receiving the creation instruction (S1713), the process
기동한 AP 프로세스(800)는, 프로세스간 정보 공유부(423)에 AP 소프트웨어(7)의 취득 요구를 송신한다(S1715). 프로세스간 정보 공유부(423)는, 상기 취득 요구를 수신하면, 요구받은 AP 소프트웨어(7)를 요구원인 AP 프로세스(800)에 송신하고, AP 프로세스(800)가 상기 AP 소프트웨어(7)를 수신하여 기억한다(S1716). 이에 따라 AP 실행 장치(10)(AP 프로세스(800))에 AP 소프트웨어(7)가 디플로이된다.The activated
계속해서, AP 프로세스(800)는, 프로세스간 정보 공유부(423)에 클러스터(AP 소프트웨어(7)를 연계하여 처리하는 AP 실행 장치(10)가 소속하는 클러스터)에의 참가 등록 요구를 송신한다(S1717). 프로세스간 정보 공유부(423)는, 상기 참가 등록 요구를 수신하면, 클러스터 관리 정보(452)를 갱신하여 당해 AP 프로세스(800)를 상기 클러스터에 등록한다(S1718).Subsequently, the
계속해서, AP 프로세스(800)는, 상기 소정의 클러스터의 정보(당해 클러스터에 속해 있는 AP 프로세스(800)의 정보(일람 정보 등), 당해 클러스터에 속해 있는 AP 프로세스(800)가 존재하는 AP 실행 장치(10)의 속성 정보 등)의 제공 요구를 프로세스간 정보 공유부(423)에 송신한다(S1719).Subsequently, the
프로세스간 정보 공유부(423)는, 상기 제공 요구를 수신하면, 당해의 정보를 기억부(405)로부터 취득하고, 취득한 정보를 AP 프로세스(800)에 송신한다(S1720).Upon receiving the provision request, the inter-process
도 18은, 클러스터에 새로운 AP 프로세스(800)가 참가할 때에 행해지는, 당해 클러스터에 소속하는 AP 실행 장치(10)(본 예에서는 3개의 AP 실행 장치(10)(1)∼(3)가 속해 있는 것으로 함)간에서의 정보 공유에 관한 처리(이하, 「클러스터 내 정보 공유 시퀀스(AP 프로세스 기동 시) S1800」이라고 칭함)를 설명하는 시퀀스도이다.18 shows what happens when a
어떤 클러스터에 속하는 AP 실행 장치(10)(1)에 있어서 새롭게 AP 프로세스(800)(1)가 기동하면, 상술한 바와 같이 AP 프로세스(800)(1)가 당해 클러스터에의 참가 등록 요구를 송신한다(S1811).When the AP process 800 (1) is newly started in the AP execution device 10 (1) belonging to a certain cluster, the AP process 800 (1) transmits a participation registration request to the cluster as described above. Do (S1811).
프로세스간 정보 공유부(423)는, 상기 참가 등록 요구를 수신하면, 클러스터 관리 정보(452)를 갱신하여 당해 AP 프로세스(800)(1)를 상기 클러스터에 등록한다(S1812).Upon receiving the participation registration request, the inter-process
계속해서, 프로세스간 정보 공유부(423)는, 당해 클러스터에 속하는 다른 AP 실행 장치(10)(2),(3)에, AP 프로세스(800)(1)가 존재하는 AP 실행 장치(10)(1)의 AP 실행 장치 정보(통신 정보, 속성 정보, 및 인증 정보를 포함함)를 송신하고, 다른 AP 실행 장치(10)(2),(3)는, 상기 AP 실행 장치 정보를 수신하여 기억한다(S1813).Subsequently, the inter-process
도 19는, AP 프로세스(800)가 소멸했을 때에 행해지는, 당해 클러스터에 소속하는 AP 실행 장치(10)(본 예에서는 3개의 AP 실행 장치(10)(1)∼(3)가 속해 있는 것으로 함)간에서의 정보 공유에 관한 처리(이하, 「클러스터 내 정보 공유 시퀀스(AP 프로세스 소멸 시) S1900」이라고 칭함)를 설명하는 시퀀스도이다. 또, AP 프로세스(800)의 소멸 이유로서, 예를 들면, AP 실행 장치(10)나 통신 네트워크(5)의 장해, 유저의 의도적인 소멸 조작의 실시 등이 있다.FIG. 19 shows the
프로세스간 정보 공유부(423)는, AP 프로세스(800)로부터 보내져 오는 생존 통지를 리얼타임으로 감시하고 있다(S1911). 프로세스간 정보 공유부(423)는, 어떤 AP 프로세스(800)(1)의 생존 통지가 두절된 것을 검지하면(S1912), 클러스터 관리 정보(452)를 갱신하여 당해 AP 프로세스(800)(1)의 현재 당해 AP 프로세스(800)(1)가 속해 있는 클러스터에의 참가를 무효화한다(S1913).The inter-process
계속해서, 프로세스간 정보 공유부(423)는, AP 프로세스(800)(1)가 상기 클러스터로부터 이탈한 것을 당해 클러스터에 속하는 다른 AP 프로세스(800)(2),(3)에 통지한다(S1914). 다른 AP 프로세스(800)(2),(3)는, 상기 통지를 수신하면, 각각이 기억하고 있는, 당해 클러스터에의 참가 상황에 관한 정보를 갱신하고, AP 프로세스(800)(1)의 당해 클러스터에의 참가를 무효화한다(S1915).Subsequently, the inter-process
또, 이상에 설명한, AP 소프트웨어 실행 준비 시퀀스 S1700, 클러스터 내 정보 공유 시퀀스(AP 프로세스 기동 시) S1800, 및 클러스터 내 정보 공유 시퀀스(AP 프로세스 소멸 시) S1900에 의해, 같은 클러스터에 속하는 AP 실행 장치(10)(AP 프로세스(800))간에서, 클러스터에 관한 정보의 동기가 상시 유지된다.In addition, by the above-described AP software execution preparation sequence S1700, intra-cluster information sharing sequence (when the AP process starts) S1800, and intra-cluster information sharing sequence (when the AP process disappears) S1900, the AP execution device belonging to the same cluster ( 10) Between (AP processes 800), synchronization of cluster-related information is always maintained.
도 20은, AP 실행 장치(10)(AP 프로세스(800))가 AP 소프트웨어(7)를 실행할 때의 처리의 흐름(이하, 「AP 소프트웨어 실행 시퀀스 S2000」이라고 칭함)을 설명하는 시퀀스도이다. 또, 본 예에서는, 같은 클러스터에 속하는, 거점(8)(1)의 AP 실행 장치(10)(1)의 AP 프로세스(800)(1)와 거점(8)(2)의 AP 실행 장치(10)(2)의 AP 프로세스(800)(2)가 연계하여 AP 소프트웨어(7)를 실행하는 것으로 한다. 또한 AP 소프트웨어(7)는, 일례로서 도 21에 예시하는 구성인 것으로 한다.Fig. 20 is a sequence diagram illustrating a flow of processing when the AP execution device 10 (AP process 800) executes the AP software 7 (hereinafter referred to as "AP software execution sequence S2000"). Also, in this example, the AP process 800 (1) of the AP execution device 10 (1) of the base (8) (1) and the AP execution device ( 10) It is assumed that the AP process 800 (2) of (2) cooperates to execute the
도 20에 나타내는 바와 같이, 우선 AP 프로세스(800)(1)의 AP 소프트웨어 처리 실행부(8121)(1)가, 클러스터 관리 장치(4)로부터의 실행 개시 지시를 받아 AP 소프트웨어(7)의 실행을 개시(「처리 A」로부터의 순차 실행을 개시)한다(S2011, S2012).As shown in Fig. 20, first, the AP software processing execution unit 8121 (1) of the AP process 800 (1) receives an execution start instruction from the
「처리 B」의 실행을 거쳐 처리가 「전송 처리 a」에 도달하면(S2013), AP 소프트웨어 처리 실행부(8121)(1)는, AP 프로세스(800)(1)의 메시지 전송부(8122)(1)에, AP 프로세스(800)(2)에 처리를 연계(인계)하기 위해 필요한 정보를 포함하는 메시지(이하, 「전송 개시 메시지」라고 칭함)를 송신한다(S2014).When the process reaches "transmission process a" through execution of "Process B" (S2013), the AP software processing execution unit 8121(1) sends the
도 22에 전송 개시 메시지의 일례를 나타낸다. 동도면에 나타내는 바와 같이, 전송 개시 메시지는, 수신처가 되는 AP 실행 장치(10)를 지정하는 정보(「0002」행째의 기술. 이하, 「수신처 장치 지정 정보」라고 칭함), 「전송 처리 a」의 식별자(「0003」행째의 기술. 이하, 「처리 블록 ID」라고 칭함), 당해 메시지의 종별(종류)을 나타내는 정보(「0004」행째의 기술. 이하, 「전송 종별」이라고 칭함), 및 연계처(인계처)의 처리 블록에 건네주는 정보(「0005」∼「0007」행째의 기술. 이하, 「연계 정보」라고 칭함)를 포함한다.22 shows an example of a transmission start message. As shown in the figure, the transmission start message includes information specifying the destination AP execution device 10 (a description in the "0002" line, hereinafter referred to as "destination device designation information"), and "transfer processing a" identifier (description on the “0003” line, hereinafter referred to as “processing block ID”), information indicating the type (type) of the message (description on the “0004” line, hereinafter referred to as “transmission type”), and It includes information to be passed to the processing block of the linkage destination (transfer destination) (description of lines "0005" to "0007"; hereinafter referred to as "linkage information").
본 예에서는, 수신처 장치 지정 정보로서 「edge_siteA」가 기술되어 있다. 이것은 거점(8)(2)에 존재하는 AP 실행 장치(10)(2)를 수신처로서 지정해야 할 것을 지정하고 있다. 또한 전송 종별로서 「start」가 지정되어 있다. 이것은 당해 메시지가 전송 개시 메시지인 것을 나타내고 있다. 연계 정보는, 예를 들면, AP 소프트웨어(7)가 도 3에 예시하는 것일 경우는 학습 모델(30)(파라미터)이다.In this example, "edge_siteA" is described as destination device specification information. This specifies that the AP execution device 10 (2) existing in the base (8) (2) should be designated as the destination. Also, "start" is designated as the transmission type. This indicates that the message is a transmission start message. The linkage information is, for example, the learning model 30 (parameter) when the
도 20으로 돌아가, 메시지 전송부(8122)(1)는, 전송 개시 메시지를 수신하면, 당해 전송 개시 메시지의 수신처 장치 지정 정보와 AP 실행 장치 정보(451) 및 클러스터 관리 정보(452)를 대조하고, 수신처 장치 지정 정보에서 지정되는 속성을 갖는 AP 실행 장치(10)(2)를 연계처의 AP 실행 장치(10)(2)로서 선출한다(S2015). 또, 상기 선출에 있어서, 메시지 전송부(8122)(1)는, 선출한 AP 실행 장치(10)(2)(AP 프로세스(800)(2))의 소재(所在)를 특정하는 정보(예를 들면, AP 실행 장치(10)의 네트워크 어드레스와 당해 AP 실행 장치(10)(2)의 AP 프로세스(800)(2)의 포트 번호)를 취득한다.Returning to Fig. 20, when the transmission start message is received, the message transmission unit 8122 (1) compares the destination device designation information of the transmission start message with AP
계속해서, 메시지 전송부(8122)(1)는, 선출한 AP 실행 장치(10)(2)(AP 프로세스(800)(2))에, 연계 개시를 통지하는 메시지(이하, 「연계 개시 메시지」라고 칭함)를 송신한다(S2016).Subsequently, the message transmission unit 8122 (1) sends a message notifying the selected AP execution device 10 (2) (AP process 800 (2)) of linkage start (hereinafter referred to as "association start message"). ') is transmitted (S2016).
도 23에 연계 개시 메시지의 일례를 나타낸다. 동도면에 나타내는 바와 같이, 연계 개시 메시지는, 송신원의 AP 실행 장치(10)(1)를 나타내는 정보(「0002」행째의 기술. 이하, 「송신원 정보」라고 칭함), 「전송 처리 a」의 식별자(「0003」행째의 기술. 이하, 「처리 블록 ID」라고 칭함), 당해 메시지의 종별(종류)을 나타내는 정보(「0004」행째의 기술. 이하, 「전송 종별」이라고 칭함), 연계처(인계처)의 처리 블록에 건네주는 정보(「0005」∼「0007」행째의 기술. 이하, 「연계 정보」라고 칭함)를 포함한다. 또, 송신원 정보는, 연계처인 AP 프로세스(800)(2)가 다시 AP 프로세스(800)(1)에 처리를 인계할 때에 필요해지는 정보이다.Fig. 23 shows an example of an association start message. As shown in the figure, the linkage start message includes information indicating the sender's AP execution device 10(1) (a description of the "0002" line, hereinafter referred to as "sender information") and "transfer processing a" Identifier (description on the “0003” line, hereinafter referred to as “processing block ID”), information indicating the type (type) of the message (description on the “0004” line, hereinafter referred to as “transmission type”), connection destination It includes information to be passed to the (transfer destination) processing block (description of lines "0005" to "0007"; hereinafter referred to as "linkage information"). In addition, the sender information is information required when the AP process 800 (2), which is a linkage destination, again transfers processing to the AP process 800 (1).
도 20으로 돌아가, 연계처의 AP 실행 장치(10)(2)의 AP 프로세스(800)(2)의 메시지 전송부(8122)(2)는, 연계 개시 메시지를 수신하면, 수신한 연계 개시 메시지를 당해 AP 프로세스(800)(2)의 AP 소프트웨어 처리 실행부(8121)(2)에 통지(송신)한다(S2017).Returning to FIG. 20 , when the message transmission unit 8122 (2) of the AP process 800 (2) of the AP execution device 10 (2) of the association destination receives the association start message, the received association start message is notified (transmitted) to the AP software processing execution unit 8121 (2) of the AP process 800 (2) (S2017).
AP 소프트웨어 처리 실행부(8121)(2)는, 연계 개시 메시지를 수신하면, 연계 개시 메시지의 「연계 정보」의 내용을 입력으로 하여 「처리 C」로부터 처리를 개시한다(S2018, S2019). 또, AP 소프트웨어 처리 실행부(8121)(2)는, 연계 개시 메시지의 「처리 블록 ID」에 「전송 처리 a」의 식별자가 설정되어 있으므로, 「전송 처리 a」에 후속하는 「처리 C」로부터 처리를 개시한다.When the AP software processing execution unit 8121 (2) receives the linkage start message, it starts processing from "Process C" with the content of the "linkage information" of the linkage start message as an input (S2018, S2019). In addition, since the identifier of "transfer process a" is set in the "process block ID" of the linkage start message, the AP software processing execution unit 8121 (2) proceeds from "process C" following "transfer process a". Initiate processing.
「처리 D」의 실행을 거쳐 처리가 「전송 처리 b」에 도달하면(S2020), 계속해서 AP 소프트웨어 처리 실행부(8121)(2)는, AP 프로세스(800)(2)의 메시지 전송부(8122)(2)에, AP 프로세스(800)(1)에의 처리의 연계(인계)를 지시하는 메시지(이하, 「전송 종료 메시지」라고 칭함)를 통지(송신)한다(S2021).When the process reaches the "transmission process b" through the execution of "Process D" (S2020), then the AP software processing execution unit 8121 (2) proceeds to the message transmission unit (of the AP process 800 (2)) 8122)(2) is notified (transmitted) of a message instructing linkage (handover) of processing to the AP process 800 (1) (hereinafter referred to as "transfer end message") (S2021).
메시지 전송부(8122)(2)는, 전송 종료 메시지를 수신하면, AP 실행 장치(10)(1)의 AP 프로세스(800)(1)에, 연계 종료를 통지하는 메시지(이하, 「연계 종료 메시지」라고 칭함)를 송신한다(S2022).Upon receiving the transmission end message, the message transmitter 8122 (2) sends a message (hereinafter referred to as “association end referred to as "message") is transmitted (S2022).
도 24에 연계 종료 메시지의 일례를 나타낸다. 동도면에 나타내는 바와 같이, 연계 종료 메시지는, 연계 개시 메시지의 송신원인 AP 실행 장치(10)(1)를 나타내는 정보(「0002」행째의 기술. 이하, 「송신원 정보」라고 칭함), 「전송 처리 a」의 식별자(「0003」행째의 기술. 이하, 「처리 블록 ID」라고 칭함), 당해 메시지의 종별(종류)을 나타내는 정보(「0004」행째의 기술. 이하, 「전송 종별」이라고 칭함), 연계처(인계처)의 처리 블록에 건네주는 정보(「0005」∼「0007」행째의 기술. 이하, 「연계 정보」라고 칭함)를 포함한다. 또, 연계 종료 메시지에 있어서의 송신원 정보는, 연계 개시 메시지의 송신원 정보와 같다. 또한 연계 정보에는, 예를 들면, AP 소프트웨어(7)가 도 3에 예시한 것일 경우, 센서 데이터에 의해 갱신된 학습 모델(30)(파라미터)이 설정된다.24 shows an example of an association termination message. As shown in the figure, the linkage end message includes information indicating the AP execution device 10(1) that is the sender of the linkage start message (a description of the "0002" line; hereinafter referred to as "sender information"), and "transfer Process a” (description on the “0003” line, hereinafter referred to as “process block ID”), information indicating the type (type) of the message (description on the “0004” line, hereinafter referred to as “transmission type”) ), and information to be passed to the processing block of the linkage destination (transfer destination) (description of lines "0005" to "0007"; hereinafter referred to as "linkage information"). Incidentally, the sender information in the linkage termination message is the same as the sender information in the linkage start message. Further, in the linkage information, for example, when the
도 20으로 돌아가, AP 프로세스(800)(1)의 메시지 전송부(8122)(1)는, 연계 종료 메시지를 수신하면, 수신한 연계 종료 메시지의 내용을 AP 소프트웨어 처리 실행부(8121)(1)에 통지(송신)한다(S2023). AP 소프트웨어 처리 실행부(8121)(1)는, 상기 통지를 받으면, 연계 종료 메시지의 내용에 의거하여 다음에 실행해야 할 처리 블록을 특정(본 예에서는 「처리 E」라고 특정)하고, 연계 종료 메시지의 「연계 정보」를 입력으로 하여, 특정한 처리 블록(「처리 E」)으로부터 처리를 개시한다. 또, AP 소프트웨어 처리 실행부(8121)(1)는, 연계 종료 메시지의 「처리 블록 ID」에 「전송 처리 a」의 식별자가 설정되고, 「전송 종별」에 연계 종료를 의미하는 「end」가 설정되어 있으므로, 「전송 처리 b」에 후속하는 「처리 E」로부터 처리를 개시한다.Returning to FIG. 20 , when the message transmission unit 8122 (1) of the AP process 800 (1) receives an association end message, the AP software processing execution unit 8121 (1) converts the content of the received association end message to the AP software processing unit 8121 (1). ) is notified (transmitted) (S2023). Upon receiving the above notification, the AP software processing execution unit 8121(1) specifies a processing block to be executed next based on the content of the linkage end message (specified as "process E" in this example), and terminates the linkage. The processing is started from a specific processing block ("Process E") by taking the "connection information" of the message as an input. Further, in the AP software processing execution unit 8121(1), the identifier of "transfer process a" is set in the "process block ID" of the linkage end message, and "end" meaning linkage end is set in the "transfer type". Since it is set, processing starts from "process E" following "transfer processing b".
이상과 같이, 「전송 처리」를 통해, 각 거점(8)의 AP 실행 장치(10)(AP 프로세스(800))간에서 처리가 연계되고, 각 거점(8)의 AP 실행 장치(10)에 디플로이되어 있는 같은(공통의) AP 소프트웨어(7)에 의해 처리가 실행된다.As described above, processing is linked between the AP execution devices 10 (AP processes 800) of each
이상 상세히 설명한 바와 같이, 본 실시형태의 정보 처리 시스템(1)에 있어서는, 연계하여 처리를 실행하는 복수의 AP 실행 장치(10)의 각각에는, 공통의(같은) 구성을 갖는 AP 소프트웨어(7)가 제공(디플로이)되므로, AP 실행 장치(10)마다 다른 AP 소프트웨어(7)를 구축할 필요가 없어, 복수의 거점(8)간에서 연계하여 처리를 실행하는 소프트웨어를 정보 처리 시스템(1) 전체적으로 효율적으로 개발할 수 있다. 또한 유저가 설정 가능한 AP 실행 장치 정보(451)에 있어서 AP 소프트웨어(7)를 실행시키는 AP 실행 장치(10)를 지정할 수 있기 때문에, 유저는 AP 소프트웨어(7)의 실행 환경을 용이하며 또한 유연하게 선택할 수 있다.As described above in detail, in the
또한 복수의 AP 실행 장치(10) 중 어느 것에도 공통의(같은) AP 소프트웨어(7)가 제공(디플로이)되므로, AP 소프트웨어(7)의 관리(보수) 부담이나 운용 부담이 적게 된다. 또한 정보 처리 시스템(1) 전체적으로 통신 부하를 경감할 수 있고, 시큐러티의 향상을 도모할 수도 있다.In addition, since the common (same)
[제2 실시형태][Second Embodiment]
도 10에 나타낸 바와 같이, 제1 실시형태에서는, 클라이언트 장치(2)로부터 클러스터 관리 장치(4)에 AP 소프트웨어가 직접 제공되고 있었지만, 버전 관리를 포함하는 AP 소프트웨어의 관리를 AP 관리 장치(3)에서 행하고, 클러스터 관리 장치(4)가 AP 관리 장치(3)로부터 AP 소프트웨어의 제공을 받도록 해도 된다. 이하, 제1 실시형태와 상이한 부분을 중심으로 해서 설명한다.As shown in Fig. 10, in the first embodiment, AP software is directly provided from the
도 25는, 제2 실시형태의 AP 관리 장치(3)의 주된 기능을 설명하는 도면이다. 동도면에 나타내는 바와 같이, 제2 실시형태의 AP 관리 장치(3)는, 제1 실시형태의 AP 관리 장치(3)가 구비하는 기능에 더하여, AP 소프트웨어 제공부(530)를 더 구비한다. AP 소프트웨어 제공부(530)는, 클러스터 관리 장치(4)로부터의 요구에 따라, 지정된 버전의 AP 소프트웨어(7)를 클라이언트 장치(4)에 송신한다.25 is a diagram explaining the main functions of the
도 26은, 제2 실시형태의 클러스터 관리 장치(4)의 주된 기능을 설명하는 도면이다. 동도면에 나타내는 바와 같이, 제2 실시형태의 클러스터 관리 장치(4)는, 제1 실시형태의 클러스터 관리 장치(4)가 구비하는 기능에 더하여, AP 소프트웨어 취득부(430)를 더 구비한다. AP 소프트웨어 취득부(430)는, AP 관리 장치(3)로부터의 소정 버전의 AP 소프트웨어(7)의 취득과, 취득한 AP 소프트웨어(7)의 프로세스간 정보 공유부(423)에의 반영을 행한다.26 is a diagram explaining the main functions of the
도 27은, 제2 실시형태의 클러스터 관리 장치(4)의 처리 요구 접수부(410)가 클라이언트 장치(2)로부터 AP 소프트웨어의 반영 요구를 수신했을 때에 행하는 처리의 흐름(이하, 「AP 소프트웨어 반영 시퀀스 S700」이라고 칭함)을 설명하는 시퀀스도이다.Fig. 27 shows the processing flow performed when the processing
제1 실시형태와 마찬가지로, 클라이언트 장치(2)로부터 AP 관리 장치(3)에 AP 소프트웨어(7)가 송신되고(S2711), AP 관리 장치(3)는 보내져 온 AP 소프트웨어(7)를 수신하여 관리 대상으로서 등록(기억)한다(S2712).As in the first embodiment, the
클러스터 관리 장치(4)의 처리 요구 접수부(410)는, 클라이언트 장치(2)로부터 AP 소프트웨어의 반영 요구를 수신하면(S2713), 수신한 반영 요구를 AP 소프트웨어 취득부(430)에 통지한다(S2714).When the processing
AP 소프트웨어 취득부(430)는, 상기 반영 요구를 수신하면 AP 소프트웨어의 취득 요구를 AP 관리 장치(3)에 송신하여(S2715) AP 관리 장치(3)로부터 AP 소프트웨어(7)를 취득하고(S2716), 취득한 AP 소프트웨어(7)를 프로세스간 정보 공유부(423)에 송신한다(S2717).Upon receiving the reflection request, the AP
프로세스간 정보 공유부(423)는, AP 소프트웨어(7)를 수신하고, 수신한 AP 소프트웨어(7)를 관리 대상으로서 등록(기억)한다(S1018).The inter-process
이와 같이 버전 관리를 포함하는 AP 소프트웨어의 관리를 AP 관리 장치(3)가 행하는 구성일 경우에는, 클러스터 관리 장치(4)가 AP 관리 장치(3)로부터 AP 소프트웨어의 제공을 받도록 해도 된다.In such a configuration in which the
[제3 실시형태][Third Embodiment]
도 21 및 도 22에 나타낸 바와 같이, 제1 실시형태의 정보 처리 시스템(1)에서는, AP 소프트웨어(7)의 개발자가 AP 소프트웨어(7)의 「전송 처리 a」에 있어서 수신처 장치 지정 정보를 설정함으로써, 당해 처리 블록 이후의 처리 블록이, 수신처 장치 지정 정보에서 지정된 거점(8)에서 실행된다. 이에 대하여, 이하에 설명하는 제3 실시형태의 정보 처리 시스템(1)에서는, AP 소프트웨어(7)의 개발자가, AP 소프트웨어(7)의 전송 처리 블록에 있어서, 당해 처리 이후의 처리에 필요한 데이터(데이터의 메타 정보)를 설정함으로써, 자동적으로 AP 소프트웨어(7)의 전송 처리 블록 이후의 처리 블록을 실행 가능한(당해 데이터를 이용 가능한) 거점(8)의 AP 실행 장치(10)가 선택되고, 선택된 AP 실행 장치(10)에서 전송 처리 블록 이후의 처리 블록의 처리가 실행된다. 이 제3 실시형태의 정보 처리 시스템(1)에 의하면, AP 소프트웨어(7)의 개발자는, 처리 블록의 실행에 있어서 필요한 데이터가 어느 거점(8)에 존재하는지를 파악하고 있을 필요가 없고, 당해 데이터를 필요로 하는 처리에 당해 데이터를 지정하는 정보(이하, 「데이터 지정 정보」라고 칭함)를 부가하는 것만으로, 당해 처리 블록이 당해 데이터를 이용 가능한 거점(8)의 AP 실행 장치(10)에서 실행되도록 할 수 있다. 제3 실시형태의 정보 처리 시스템(1)의 기본적인 구성은, 제1 실시형태의 정보 처리 시스템(1)과 마찬가지이다. 이하, 제1 실시형태와 상이한 부분을 중심으로 해서 설명한다.21 and 22, in the
도 28은, 제3 실시형태의 정보 처리 시스템(1)의 개략적인 구성을 나타내는 도면이다. 동도면에 나타내는 바와 같이, 제3 실시형태의 정보 처리 시스템(1)은, 제1 실시형태의 정보 처리 시스템(1)이 구비하는 구성에 더하여, 각 거점(8)의 각각에, 각 거점(8)에 있어서 수집된 데이터를 관리하는 데이터베이스(2801)를 구비한다. 데이터베이스(2801)는, 예를 들면, DBMS에 의해 실현되는 릴레이셔널 데이터베이스이다. 각 거점(8)의 데이터베이스(2801)(1)∼(N)는, 각 거점(8)에 존재하는 AP 실행 장치(10)(1)∼(N)와 통신 가능하게 접속되어 있다.28 : is a figure which shows the schematic structure of the
도 29에, 제3 실시형태의 AP 실행 장치(10)가 구비하는 주된 기능을 나타내고 있다. 제3 실시형태의 AP 실행 장치(10)는, 제1 실시형태의 AP 실행 장치(10)가 구비하는 기능에 더하여, 데이터 정보 관리부(130)를 구비한다. 또한 제3 실시형태의 AP 실행 장치(10)의 기억부(105)는, 제1 실시형태의 기억부(105)가 기억하는 데이터에 더하여, 데이터 리스트(153)와 DB 접속 정보(154)를 기억한다. 각 거점(8)의 데이터 리스트(153)는, 각각의 거점(8)의 데이터베이스(2801)에 포함되어 있는 데이터를 지정하는 정보(상술한 데이터 지정 정보)의 리스트를 포함한다. DB 접속 정보(154)는, 데이터베이스(2801)의 데이터에 액세스할 때에 필요해지는 정보(이하, 「DB 접속 정보」라고 칭함)를 포함한다. DB 접속 정보의 예로서, 데이터베이스(2801)의 네트워크 어드레스, 데이터베이스(2801)의 종류를 특정하는 정보, 데이터베이스(2801)에 액세스하기 위한 인증 정보 등이 있다.Fig. 29 shows the main functions of the
데이터 정보 관리부(130)는, 데이터 리스트(153)나 DB 접속 정보(154)를 편집(등록, 변경, 삭제 등)하기 위한 유저 인터페이스를 제공한다. 각 거점(8)의 유저(데이터 관리자 등)는, 데이터 정보 관리부(130)를 통해 데이터 리스트(153)나 DB 접속 정보(154)를 편집할 수 있다. DB 접속 정보(154)는, 정보의 외부 유출 방지 등의 관점에서 각 AP 실행 장치(10)에 있어서 개별적으로 관리되고, 클러스터 관리 장치(4)에는 원칙적으로 송신되지 않는다. 데이터 리스트(153)는, 통신 네트워크(5)를 통해 클러스터 관리 장치(4)에도 송신된다.The data
도 30에, 제3 실시형태의 클러스터 관리 장치(4)가 구비하는 주된 기능을 나타내고 있다. 제3 실시형태의 클러스터 관리 장치(4)의 기억부(405)는, 제1 실시형태의 클러스터 관리 장치(4)의 기억부(405)가 기억하는 데이터에 더하여, 데이터 리스트(453)를 기억한다. 데이터 리스트(453)는, 각 거점(8)의 AP 실행 장치(10)로부터 보내져 오는 데이터 리스트(153)를 통합한 데이터이며, 프로세스간 정보 공유부(423)에 의해 관리된다. 또, 후술하는 바와 같이, 데이터 리스트(453)에 등록되어 있는 각 데이터에 AP 실행 장치(10)가 실제로 액세스 가능한지의 여부는 AP 소프트웨어(7)의 AP 실행 장치(10)에의 디플로이 시 등에 확인(검증)된다. AP 소프트웨어(7)의 개발자는, 클라이언트 장치(2)의 처리 요구 접수부(410)를 통해 데이터 리스트(453)를 참조할 수 있다. 이에 따라 AP 소프트웨어(7)의 개발자는, AP 소프트웨어(7)의 개발에 있어서, 데이터 리스트(453)를 확인하면서, AP 소프트웨어(7)에 데이터 지정 정보를 기술할 수 있다.Fig. 30 shows the main functions of the
도 31에 데이터 리스트(453)의 일례를 나타낸다. 예시하는 데이터 리스트(453)는, AP 실행 장치 ID(4531), 데이터명(4532), 및 설명(4533)의 각 항목(칼럼)을 갖는 하나 이상의 레코드를 포함한다. AP 실행 장치 ID(4531)에는, AP 실행 장치(10)의 식별자(이하, 「AP 실행 장치 ID」라고 칭함)가 설정된다. 데이터명(4532)에는, 데이터 지정 정보(본 예에서는 데이터명)가 설정된다. 설명(4533)에는, 당해 데이터를 설명하는 정보(AP 소프트웨어(7)의 개발자 등의 사람이 참조하는 정보)가 설정된다. 또, 데이터 리스트(453)에, 각 데이터의 포맷이나 샘플 데이터가 설정되는 항목(칼럼)을 더 마련해도 된다. 또한 예시하는 데이터 리스트(453)는, 릴레이셔널 데이터베이스 형식의 포맷으로 기술한 것이지만, 데이터 리스트(453)의 포맷은 반드시 한정되지 않는다.31 shows an example of the
도 32에 제3 실시형태에 있어서의 AP 소프트웨어(7)의 기술예를 나타낸다. 예시하는 AP 소프트웨어(7)는 Python 언어의 구문에 따라서 기술되어 있다. 또, AP 소프트웨어(7)를 기술하는 언어는 반드시 한정되지는 않는다. 제1 실시형태의 도 21에 나타낸 AP 소프트웨어(7)의 하나의 처리 블록은, 도 32에 예시한 AP 소프트웨어(7)에 기술되어 있는 하나의 함수에 대응하고 있다. 도 32에 예시한 AP 소프트웨어(7)에는 5개의 함수가 기술되어 있다. 이 중 main 함수(3223∼3226행)가 최초에 실행되고, 다른 4개의 함수는 main 함수로부터 순차 호출되어 실행된다. 동도면에 나타내는 바와 같이, 본 예에서는, anomaly_factor 함수(3206∼3212행)에만, 「@」 기호를 이용하여 기술되는 데코레이터가 부가되어 있다. 이 데코레이터는, Anomaly_factor 함수가, 「pic.line-a.jp」라는 데이터명(데이터 지정 정보)에 대응하는 데이터가 관리되고 있는 거점(8)에 있어서 실행되는 것을 나타내고 있다. 또, 3206행째에는, 동시에 복수의 데이터명(데이터 지정 정보)을 기술할 수 있다.Fig. 32 shows an example of description of the
3209행째의 「db_connector.get(data[0])」은, 데이터베이스(2801)의 데이터에 액세스하는 함수이다. 당해 함수가 실행됨으로써 데이터베이스(2801)로부터 데이터의 값이 취득된다. 3211행째에서는, 3209행째에서 취득한 값을 이용한 처리가 행해진다. 또, 상기 함수는, 데이터베이스(2801)의 종류(이하, 「DB 종별」이라고 칭함)에 의존하지 않는 범용적인 기술 형식으로 기술된다. 이에 따라 AP 소프트웨어(7)의 개발자는, DB 종별을 의식하지 않고 효율적으로 AP 소프트웨어(7)를 개발할 수 있다."db_connector.get(data[0])" in the 3209th line is a function that accesses the data of the
도 33에 DB 접속 정보(154)의 일례를 나타낸다. DB 접속 정보(154)에는, AP 실행 장치(10)가 데이터베이스(2801)에 액세스하기 위해 필요한 정보(DB 접속 정보)가 관리된다. 예시하는 DB 접속 정보(154)는, 데이터명(1541), DB 종별(1542), 접속처(1543), 인증 정보(1544) 등의 각 항목을 포함하는 하나 이상의 레코드로 구성된다.33 shows an example of the
데이터명(1541)에는, 상술한 데이터 지정 정보가 설정된다. DB 종별(1542)에는, 당해 데이터가 저장되어 있는 데이터베이스(2801)의 DB 종별을 나타내는 정보가 설정된다. 접속처(1543)에는, 데이터베이스(2801)에 액세스할 때에 이용되는 접속 정보(IP 어드레스, 포트 번호 등)가 설정된다. 인증 정보(1544)에는, 데이터베이스(2801)에 액세스할 때에 필요해지는 인증 정보(유저 ID, 패스워드 등)가 설정된다.In the
또, AP 소프트웨어(7)의 개발자는, AP 소프트웨어(7)의 개발에 있어서, AP 소프트웨어(7)에 도 32의 3209행째에 기술되어 있는 데이터 취득 함수(db_connector.get)와 같은 범용적인 함수를 기술하는 것만으로 좋고, AP 실행 장치(10)로부터 데이터베이스(2801)에의 액세스는, AP 실행 장치(10)가, 거점(8)측에서 관리되고 있는 DB 접속 정보(154)를 참조함으로써 행해진다. 이 때문에, AP 소프트웨어(7)의 개발자는, AP 소프트웨어(7)를 효율적으로 개발할 수 있다. 또, AP 소프트웨어(7)에 데이터베이스(2801)에 관리되고 있는 데이터의 편집(등록, 갱신, 삭제 등)을 행하는 처리를 기술할 경우에 대해서도, 예시한 데이터 취득 함수와 마찬가지로 범용적인 함수를 기술할 수 있도록 함으로써, AP 소프트웨어(7)의 개발 효율의 향상을 도모할 수 있다.Also, in developing the
도 34에, 제3 실시형태의 AP 프로세스(800)에 의해 실현되는 주된 기능을 나타내고 있다. 동도면에 나타내는 바와 같이, 제3 실시형태의 AP 프로세스(800)는, 제1 실시형태의 AP 프로세스(800)가 구비하는 기능에 더하여, DB 접속 확인 실행부(8123)를 더 구비한다. DB 접속 확인 실행부(8123)는, AP 소프트웨어(7)가 AP 실행 장치(10)에 디플로이되었을 때 등의 적당한 타이밍에, 자신을 포함하는 AP 프로세스(800)가 존재하는 거점(8)에, AP 소프트웨어(7)에 기술되어 있는 데이터 지정 정보에 대응하는 데이터가 이용 가능한지의 여부를 확인하는 처리(이하, DB 접속 확인 시퀀스 S3500이라고 칭함)를 행한다.34 shows the main functions realized by the
도 35는, DB 접속 확인 시퀀스 S3500의 일례를 설명하는 시퀀스도이다. 동도면에 나타내는 바와 같이, 도 17의 AP 소프트웨어 실행 준비 시퀀스 S1700에서 AP 프로세스(800)에 AP 소프트웨어(7)가 디플로이 투입되면(S1716), DB 접속 확인 실행부(8123)는, 기억부(105)에 저장되어 있는 AP 소프트웨어(7)를 참조하여(S3501∼S3502), AP 소프트웨어(7)에 기술되어 있는 데이터 지정 정보를 판독한다(S3503). 또한 DB 접속 확인 실행부(8123)는, 판독한 데이터 지정 정보에 대응하는 데이터의 DB 접속 정보(154)를 기억부(105)로부터 취득한다(S3504∼S3505).35 is a sequence diagram illustrating an example of the DB connection confirmation sequence S3500. As shown in the figure, when the
계속해서, DB 접속 확인 실행부(8123)는, 취득한 DB 접속 정보(154)를 이용하여 데이터베이스(2801)에 액세스하고, 데이터베이스(2801)에 액세스 가능한지의 여부를 확인(예를 들면, ping 커맨드가 데이터베이스(2801)에 도달하는지의 여부를 확인)한다(S3506∼3507).Subsequently, the DB connection
계속해서, DB 접속 확인 실행부(8123)는, 액세스처의 데이터베이스(2801)의 데이터 지정 정보에 대응하는 데이터를 이용 가능한지의 여부를 확인(실제로 당해 데이터의 값을 취득할 수 있는지의 여부)한다(S3508∼3509). 데이터 지정 정보에 대응하는 데이터가 이용 가능할 경우, DB 접속 확인 실행부(8123)는, 자신을 포함하는 AP 프로세스(800)에 있어서 당해 데이터가 이용 가능한 것(즉, 당해 데이터를 이용하는 처리(예를 들면, 도 32의 3206∼3212행에 기술되어 있는 처리)를 실행 가능한 것)을, 프로세스간 정보 공유부(423)에 통지한다(S3510). 한편, 데이터 지정 정보에 대응하는 데이터가 이용 가능하지 않을 경우, DB 접속 확인 실행부(8123)는, 자신을 포함하는 AP 프로세스(800)에 있어서 당해 데이터를 이용할 수 없는 것(즉, 당해 데이터를 이용하는 처리를 실행할 수 없는 것)을 프로세스간 정보 공유부(423)에 통지한다(S3510).Subsequently, the DB connection
프로세스간 정보 공유부(423)는, 이상의 통지를 수신함으로써 데이터 리스트(453)를 갱신하고, 갱신 후의 데이터 리스트(453)의 내용을 각 AP 실행 장치(10)나 클러스터 관리 장치(4)에 제공한다. 이에 따라, AP 프로세스(800)의 메시지 전송부(8122)는, 자신을 포함하는 AP 프로세스(800) 이외의 다른 AP 프로세스(800)(AP 실행 장치(10)) 중, 어느 거점(8)의 AP 프로세스(800)(AP 실행 장치(10))가 어느 데이터를 이용 가능한지를 알 수 있다.Upon receiving the above notification, the inter-process
그런데, 이상에서는, AP 소프트웨어(7)가 디플로이된(S1716) 것을 계기로 하여 AP 실행 장치(10)가 데이터베이스(2801)의 데이터를 실제로 이용 가능한지의 여부를 확인할 경우를 예시했지만, 상기 확인은, 예를 들면, 데이터베이스(2801)의 내용이 갱신(데이터의 등록, 편집, 삭제)되었을 경우나 데이터베이스(2801)가 존재하지 않게 되었을 경우에 행해도 된다.By the way, in the foregoing, the case where
도 36은, 제3 실시형태의 AP 소프트웨어 실행 시퀀스 S2000을 설명하는 시퀀스도이다. 제3 실시형태의 AP 소프트웨어 실행 시퀀스 S2000은, 제1 실시형태의 AP 소프트웨어 실행 시퀀스 S2000과, S2014에서 송신되는 전송 개시 메시지의 내용 및 S2015의 처리의 내용이 서로 다르다.Fig. 36 is a sequence diagram explaining the AP software execution sequence S2000 in the third embodiment. The AP software execution sequence S2000 of the third embodiment differs from the AP software execution sequence S2000 of the first embodiment in the content of the transmission start message transmitted in S2014 and the processing content in S2015.
동도면에 나타내는 바와 같이, AP 소프트웨어(7)에 기술되어 있는 처리의 실행이 개시되고, 거점(8)의 데이터를 이용하는 처리(예를 들면, 도 32의 3206∼3212행째의 처리)에 도달하면(S3601), 제1 실시형태와 마찬가지로, AP 소프트웨어 처리 실행부(8121)(1)로부터 메시지 전송부(8122)(1)에 전송 개시 메시지가 송신된다(S3602). 단, 제1 실시형태와 달리, 송신되는 전송 개시 메시지에는, 전송처의 거점(3)의 속성 정보가 아니고, 이후의 처리 블록의 실행에 있어서 이용되는 데이터를 지정하는 데이터 지정 정보(데이터명 등)가 기술되어 있다.As shown in the same figure, when the execution of the processing described in the
계속해서, 메시지 전송부(8122)(1)는, 데이터 지정 정보에 대응하는 데이터를 이용 가능한 AP 실행 장치(10)를 선출한다(S3603). 이 처리는, 상술한 바와 같이, 메시지 전송부(8122)(1)가, 프로세스간 정보 공유부(423)로부터 제공되는 데이터 리스트(453)를 참조함으로써 행해진다. 그 후의 AP 소프트웨어 실행 시퀀스 S2000의 각 처리는 제1 실시형태와 마찬가지이다.Subsequently, the message transmission unit 8122(1) selects the
도 37은, 도 26의 S3602에서 송신되는 전송 개시 메시지의 일례이다. 제1 실시형태와 달리, 예시하는 전송 개시 메시지에는, 거점(8)의 속성 정보를 나타내는 정보가 아니고, 이후의 처리 블록에서 이용되는 데이터의 데이터 지정 정보(데이터명)가 기술되어 있다(3702∼3704행). 또, 복수의 데이터를 이용하는 처리에도 대응할 수 있도록, 전송 개시 메시지에는, 리스트 형식으로 복수의 데이터 지정 정보를 기술하는 것도 가능하다.Fig. 37 is an example of the transmission start message transmitted in S3602 in Fig. 26 . Unlike the first embodiment, in the exemplified transmission start message, data designation information (data name) of data used in the subsequent processing block is described instead of information indicating the attribute information of the base 8 (3702 to 3702 to 3702). line 3704). In addition, it is also possible to describe a plurality of data specifying information in the form of a list in the transmission start message so as to be able to cope with processing using a plurality of data.
이상에 설명한 바와 같이, 제3 실시형태의 정보 처리 시스템(1)에 의하면, 연계에 있어서 AP 소프트웨어(7)에 기술되어 있는 데이터 지정 정보(데이터명 등)를 이용 가능한 AP 실행 장치(10)가 자동적으로 선택되고, 선택된 AP 실행 장치(10)에 연계 개시 메시지가 송신된다. 그 때문에, 개발자는 어느 거점(8)의 AP 실행 장치(10)가 연계 가능한지의 여부를 파악해 둘 필요가 없어, 효율적으로 AP 소프트웨어(7)를 개발할 수 있고, 특히 다수의 거점(8)이 광범위하게 존재할 경우에는 엄청난 효과가 기대된다. 또한 AP 소프트웨어(7)의 개발자는, 각 거점(8)에 있어서의 DB 접속 정보를 관리할 필요가 없기 때문에 거점(8)마다의 환경을 상시 파악하고 있을 필요가 없어, AP 소프트웨어(7)의 개발이나 보수를 위한 AP 소프트웨어(7)의 개발자의 정보의 관리 부하가 경감된다.As described above, according to the
이상, 본 발명의 일 실시형태에 대해서 설명했지만, 본 발명은 상기의 실시형태에 한정되는 것이 아니고, 그 요지를 일탈하지 않는 범위에서 각종 변경 가능한 것은 물론이다. 예를 들면, 상기의 실시형태는 본 발명을 이해하기 쉽게 설명하기 위해 상세히 설명한 것이며, 반드시 설명한 모든 구성을 구비하는 것에 한정되는 것은 아니다. 또한 상기 실시형태의 구성의 일부에 대해서, 다른 구성의 추가나 삭제, 치환을 하는 것이 가능하다.As mentioned above, although one embodiment of this invention was described, this invention is not limited to said embodiment, It goes without saying that various changes are possible within the range which does not deviate from the summary. For example, the above embodiments have been described in detail in order to easily understand the present invention, and are not necessarily limited to those having all the described configurations. In addition, it is possible to add, delete, or replace other components to a part of the configuration of the above embodiment.
또한 상기의 각 구성, 기능부, 처리부, 처리 수단 등은, 그들의 일부 또는 전부를, 예를 들면, 집적 회로로 설계하는 등에 의해 하드웨어로 실현해도 된다. 또한 상기의 각 구성, 기능 등은, 프로세서가 각각의 기능을 실현하는 프로그램을 해석하고, 실행함으로써 소프트웨어로 실현해도 된다. 각 기능을 실현하는 프로그램, 테이블, 파일 등의 정보는, 메모리나 하드디스크, SSD(Solid State Drive) 등의 기록 장치, IC 카드, SD 카드, DVD 등의 기록 매체에 둘 수 있다.Further, some or all of the above configurations, functional units, processing units, processing means, etc. may be realized as hardware by, for example, designing an integrated circuit. Further, each of the above configurations, functions, and the like may be realized by software when a processor interprets and executes a program for realizing each function. Information such as programs, tables, and files for realizing each function can be stored in a memory, a recording device such as a hard disk or a solid state drive (SSD), or a recording medium such as an IC card, SD card, or DVD.
또한 상기의 각 도면에 있어서, 제어선이나 정보선은 설명상 필요하다고 생각되는 것을 나타내고 있으며, 반드시 실장(實裝)상의 모든 제어선이나 정보선을 나타내고 있다고는 할 수 없다. 예를 들면, 실제로는 거의 모든 구성이 상호 접속되어 있다고 생각해도 된다.In each of the above drawings, the control lines and information lines indicate what is considered necessary for explanation, and it cannot necessarily be said that all control lines and information lines on the mounting are shown. For example, it may be considered that almost all configurations are interconnected in practice.
또한 이상에 설명한 각 정보 처리 장치의 각종 기능부, 각종 처리부, 각종 데이터베이스의 배치 형태는 일례에 지나지 않는다. 각종 기능부, 각종 처리부, 각종 데이터베이스의 배치 형태는, 이들 장치가 구비하는 하드웨어나 소프트웨어의 성능, 처리 효율, 통신 효율 등의 관점에서 최적의 배치 형태로 변경할 수 있다.In addition, the arrangement form of various functional units, various processing units, and various databases of each information processing device described above is only an example. The arrangement of various functional units, various processing units, and various databases can be changed to an optimal arrangement from the standpoint of performance, processing efficiency, communication efficiency, and the like of hardware or software included in these devices.
또한 상술한 각종 데이터를 저장하는 데이터베이스의 구성(스키마(Schema) 등)은, 리소스의 효율적인 이용, 처리 효율 향상, 액세스 효율 향상, 검색 효율 향상 등의 관점에서 유연하게 변경할 수 있다.In addition, the configuration (schema, etc.) of the database for storing the above-described various data can be flexibly changed from the viewpoint of efficient use of resources, improvement of processing efficiency, improvement of access efficiency, improvement of search efficiency, and the like.
1: 정보 처리 시스템 2: 클라이언트 장치
205: 기억부 210: AP 소프트웨어 편집부
220: AP 소프트웨어 전송부 230: 속성 정보 취득 제시부
240: 처리 요구 송신부 252: 속성 정보
3: AP 관리 장치 305: 기억부
310: AP 소프트웨어 수신부 320: AP 소프트웨어 관리부
4: 클러스터 관리 장치 405: 기억부
410: 처리 요구 접수부 420: 클러스터 관리부
421: AP 실행 장치 정보 관리부 422: 속성 정보 관리부
423: 프로세스간 정보 공유부 451: AP 실행 장치 정보
452: 클러스터 관리 정보 5: 통신 네트워크
7: AP 소프트웨어 8: 거점
10: AP 실행 장치 105: 기억부
110: 센서 데이터 취득부 120: 프로세스 실행 관리부
152: 센서 데이터 800: 프로세스
811: AP 소프트웨어 수신부 812: 프로세스 실행 제어부
8121: AP 소프트웨어 처리 실행부 8122: 메시지 전송부
813: 생존 통지 송신부 153: 데이터 리스트
154: DB 접속 정보 8123: DB 접속 확인 실행부1: information processing system 2: client device
205: storage unit 210: AP software editing unit
220: AP software transmission unit 230: attribute information acquisition presentation unit
240: processing request transmission unit 252: attribute information
3: AP management unit 305: storage unit
310: AP software receiving unit 320: AP software management unit
4: cluster management unit 405: storage unit
410: processing request reception unit 420: cluster management unit
421: AP execution device information management unit 422: Attribute information management unit
423: Inter-process information sharing unit 451: AP execution device information
452: cluster management information 5: communication network
7: AP software 8: Stronghold
10: AP execution unit 105: storage unit
110: sensor data acquisition unit 120: process execution management unit
152: sensor data 800: process
811: AP software receiver 812: process execution control unit
8121: AP software processing execution unit 8122: message transmission unit
813: survival notification transmitter 153: data list
154: DB connection information 8123: DB connection confirmation execution unit
Claims (20)
상기 AP 실행 장치는 통신 네트워크를 통해 서로 통신 가능하게 접속되어 있고,
상기 AP 실행 장치의 각각은, 같은 처리 블록을 같은 순서로 실행하는 공통의 AP 소프트웨어를 기억하고,
상기 AP 소프트웨어는, 제1 상기 거점의 제1 상기 AP 실행 장치에서 실행된 상기 처리 블록의 처리를, 제2 상기 거점의 제2 상기 AP 실행 장치에 연계하기 위한 처리를 실현하는 처리 블록인 전송 처리 블록을 포함하고,
상기 제1 AP 실행 장치는, 상기 AP 소프트웨어의 처리 블록의 순차 실행에 있어서 제1 상기 전송 처리 블록에 도달하면, 연계 개시를 통지하는 메시지인 연계 개시 메시지를 상기 제2 AP 실행 장치에 송신하고,
상기 제2 AP 실행 장치는, 상기 연계 개시 메시지를 수신하면, 상기 제1 전송 처리 블록에 후속하는 처리 블록으로부터 순차 실행을 개시하고,
상기 복수의 AP 실행 장치의 각각에 있어서 이용 가능한 데이터를 나타내는 정보인 데이터 리스트를 관리하고,
상기 제1 AP 실행 장치는,
상기 AP 소프트웨어의 처리 블록의 순차 실행에 있어서 제1 상기 전송 처리 블록에 도달하면, 상기 데이터 리스트에 의거하여, 당해 제1 전송 처리 블록에 기술되어 있는, 상기 제2 거점에 있어서의 데이터를 지정하는 정보인 데이터 지정 정보에 대응하는 데이터를 이용 가능한 상기 AP 실행 장치를 상기 제2 AP 실행 장치로서 선출하고,
연계 개시를 통지하는 메시지인 연계 개시 메시지를, 선출한 상기 제2 AP 실행 장치에 송신하고,
상기 제2 AP 실행 장치는, 상기 연계 개시 메시지를 수신하면, 상기 제1 전송 처리 블록에 후속하는 처리 블록으로부터 순차 실행을 개시하는, 정보 처리 시스템.It is provided at each of the plurality of bases and includes a plurality of AP execution devices that are information processing devices that execute AP software, which is software that realizes application functions,
The AP execution devices are communicatively connected to each other through a communication network,
Each of the AP execution devices stores common AP software that executes the same processing blocks in the same order;
The AP software is a transmission process that is a processing block for realizing a process for linking the processing of the processing block executed by the first AP execution device of the first said base to the second said AP execution device of the second said base. contain blocks,
When the first transfer processing block is reached in the sequential execution of processing blocks of the AP software, the first AP execution device transmits an association start message, which is a message notifying an association start, to the second AP execution device;
Upon receiving the association initiation message, the second AP execution device initiates sequential execution from a processing block subsequent to the first transmission processing block;
Managing a data list, which is information indicating available data in each of the plurality of AP execution devices;
The first AP execution device,
Designating data in the second base described in the first transfer processing block based on the data list when the first transfer processing block is reached in sequential execution of the processing blocks of the AP software selecting the AP execution device capable of using data corresponding to data specifying information, which is information, as the second AP execution device;
sending an association start message, which is a message notifying association start, to the selected second AP execution device;
The information processing system according to claim 1 , wherein the second AP execution device, upon receiving the association start message, starts sequential execution from a processing block subsequent to the first transmission processing block.
상기 연계 개시 메시지는, 상기 제1 전송 처리 블록 직전의 처리 블록까지의 실행 결과를 포함하고,
상기 제2 AP 실행 장치는, 상기 실행 결과를 상기 제1 전송 처리 블록에 후속하는 처리 블록에 입력하는, 정보 처리 시스템.According to claim 1,
The association start message includes an execution result up to a processing block immediately preceding the first transmission processing block,
The information processing system, wherein the second AP execution device inputs the execution result to a processing block subsequent to the first transmission processing block.
상기 제1 AP 실행 장치는, 상기 AP 소프트웨어의 처리 블록의 순차 실행에 있어서 제1 상기 전송 처리 블록에 도달하면, 당해 제1 전송 처리 블록의 식별자를 포함하는, 연계 개시를 통지하는 메시지인 연계 개시 메시지를 상기 제2 AP 실행 장치에 송신하고,
상기 제2 AP 실행 장치는, 상기 제1 전송 처리 블록에 후속하는 처리 블록의 순차 실행에 있어서 제2 상기 전송 처리 블록에 도달하면, 상기 제1 전송 처리 블록의 식별자를 포함하는, 연계 종료를 통지하는 메시지인 연계 종료 메시지를 상기 제1 AP 실행 장치에 송신하고,
상기 제1 AP 실행 장치는, 상기 연계 개시 메시지를 수신하면, 상기 제2 전송 처리 블록에 후속하는 처리 블록으로부터 순차 실행을 개시하는, 정보 처리 시스템.According to claim 1,
When the first AP execution device arrives at the first transfer processing block in the sequential execution of processing blocks of the AP software, a message including an identifier of the first transfer processing block is associated with an association initiation notification. send a message to the second AP executing device;
The second AP execution device notifies an association termination including an identifier of the first transmission processing block when the second transmission processing block is reached in sequential execution of processing blocks subsequent to the first transmission processing block. sending an association end message, which is a message to the first AP execution device;
The information processing system according to claim 1 , wherein the first AP execution device, upon receiving the association start message, starts sequential execution from a processing block subsequent to the second transmission processing block.
상기 연계 종료 메시지는, 상기 제2 전송 처리 블록 직전의 처리 블록까지의 실행 결과를 포함하고,
상기 제1 AP 실행 장치는, 상기 실행 결과를 상기 제2 전송 처리 블록에 후속하는 처리 블록에 입력하는, 정보 처리 시스템.According to claim 3,
The association termination message includes an execution result up to a processing block immediately preceding the second transmission processing block,
The information processing system according to claim 1 , wherein the first AP execution device inputs the execution result to a processing block subsequent to the second transfer processing block.
복수의 상기 AP 실행 장치는, 같은 상기 AP 소프트웨어를 연계하여 실행하는 클러스터를 구성하고,
상기 복수의 AP 실행 장치의 각각과 통신 가능하게 접속하는 정보 처리 장치인 클러스터 관리 장치를 구비하고,
상기 클러스터 관리 장치는, 상기 클러스터의 각각에 속하는 상기 AP 실행 장치를 나타내는 정보인 AP 실행 장치 정보를 기억하고, 상기 복수의 AP 실행 장치의 각각에 상기 AP 실행 장치 정보를 송신하는, 정보 처리 시스템.According to claim 1,
The plurality of AP execution devices form a cluster that links and executes the same AP software;
A cluster management device, which is an information processing device communicatively connected to each of the plurality of AP execution devices, is provided;
wherein the cluster management device stores AP execution device information, which is information indicating the AP execution device belonging to each of the clusters, and transmits the AP execution device information to each of the plurality of AP execution devices.
상기 AP 실행 장치 정보는, 상기 AP 실행 장치의 상기 통신 네트워크에 있어서의 소재(所在)를 나타내는 정보인 통신 정보와, 상기 AP 소프트웨어에 기술되는, 상기 AP 실행 장치의 소재를 특정하는 정보인 속성 정보를 대응지은 정보를 포함하는, 정보 처리 시스템.According to claim 5,
The AP execution device information includes communication information representing the location of the AP execution device in the communication network, and attribute information described in the AP software, which is information specifying the location of the AP execution device. An information processing system containing information associated with .
상기 AP 소프트웨어는, 연계처가 되는 상기 제2 AP 실행 장치를 지정하는 상기 속성 정보의 기술(記述)을 포함하고, 상기 AP 실행 장치는, 상기 기술과 상기 AP 실행 장치 정보를 대조함으로써 연계처의 상기 AP 실행 장치의 상기 통신 네트워크에 있어서의 소재를 특정하는, 정보 처리 시스템.According to claim 6,
The AP software includes a description of the attribute information specifying the second AP execution device as an association destination, and the AP execution device compares the description with the AP execution device information to determine the association destination's information. An information processing system that specifies the location of an AP execution device in the communication network.
상기 클러스터 관리 장치는, 유저가 조작하는 정보 처리 장치인 클라이언트 장치와 통신 가능하게 접속하고, 상기 클라이언트 장치를 통해 유저로부터 상기 AP 실행 장치 정보의 설정을 접수하는, 정보 처리 시스템.According to claim 6,
The information processing system according to claim 1 , wherein the cluster management device is communicatively connected to a client device, which is an information processing device operated by a user, and accepts settings of the AP execution device information from a user through the client device.
상기 클러스터 관리 장치는, 유저로부터 접수한 상기 AP 실행 장치 정보의 내용의 오류를 검사하는, 정보 처리 시스템.According to claim 8,
The information processing system according to claim 1 , wherein the cluster management device checks an error in content of the AP execution device information received from a user.
상기 클러스터 관리 장치는, 기억하고 있는 상기 AP 실행 장치 정보를 상기 클라이언트 장치에 송신하는, 정보 처리 시스템.According to claim 8,
The information processing system according to claim 1 , wherein the cluster management device transmits the stored AP execution device information to the client device.
상기 클러스터 관리 장치는, 새로운 상기 AP 실행 장치의 상기 클러스터에의 참가 등록을 접수하고, 접수한 상기 AP 실행 장치의 상기 AP 실행 장치 정보를 상기 클러스터에 속하는 다른 상기 AP 실행 장치에 송신하는, 정보 처리 시스템.According to claim 6,
The cluster management device receives registration of the new AP execution device to participate in the cluster, and transmits the received AP execution device information of the AP execution device to other AP execution devices belonging to the cluster. system.
상기 클러스터 관리 장치는, 어떤 상기 클러스터에 속하는 상기 AP 실행 장치에 있어서 생성되는 상기 AP 소프트웨어를 실행하는 프로세스인 AP 프로세스의 생존 확인을 상기 통신 네트워크를 통해 행하고, 하나의 상기 AP 실행 장치의 상기 AP 프로세스의 생존을 확인할 수 없게 되면, 당해 AP 실행 장치를 당해 클러스터로부터 이탈시킴과 함께, 당해 AP 실행 장치가 상기 클러스터로부터 이탈했다는 취지를 다른 상기 AP 실행 장치에 통지하는, 정보 처리 시스템.According to claim 11,
The cluster management device checks existence of an AP process, which is a process that executes the AP software generated in the AP execution device belonging to a certain cluster, through the communication network, and performs the AP process of one AP execution device. When the existence of can not be confirmed, the AP execution device leaves the cluster and notifies the other AP execution devices that the AP execution device has left the cluster.
상기 클러스터 관리 장치는,
유저가 조작하는 정보 처리 장치인 클라이언트 장치와 통신 가능하게 접속하고,
상기 클라이언트 장치로부터 상기 AP 소프트웨어를 수신하여 기억하고,
상기 AP 실행 장치로부터 보내져 오는 상기 AP 소프트웨어의 취득 요구에 따라 상기 AP 소프트웨어를 상기 AP 실행 장치에 송신하는, 정보 처리 시스템.According to claim 6,
The cluster management device,
communicatively connected to a client device that is an information processing device operated by a user;
receiving and storing the AP software from the client device;
and transmits the AP software to the AP execution device in response to an acquisition request for the AP software sent from the AP execution device.
상기 클러스터 관리 장치는, 상기 AP 소프트웨어의 버전 관리를 행하는 정보 처리 장치인 AP 관리 장치와 통신 가능하게 접속하고, 상기 AP 소프트웨어를 상기 AP 관리 장치로부터 취득하여 기억하는, 정보 처리 시스템.According to claim 13,
The information processing system according to claim 1 , wherein the cluster management device is communicatively connected to an AP management device that is an information processing device that performs version management of the AP software, and acquires and stores the AP software from the AP management device.
상기 AP 실행 장치의 각각은, 상기 AP 소프트웨어의 실행 시에 이용하는 데이터를 관리하는 데이터베이스와 통신 가능하게 접속하고,
상기 AP 실행 장치가, 상기 데이터베이스에 액세스함으로써, 자신에게 디플로이된 상기 AP 소프트웨어에 기술되어 있는 상기 데이터 지정 정보에 대응하는 데이터를 취득 가능한지의 여부를 검증하고,
취득 가능할 경우에 상기 데이터를 상기 데이터 리스트에 관리하는, 정보 처리 시스템.According to claim 1,
Each of the AP execution devices is communicatively connected to a database that manages data used when the AP software is executed;
verifies whether or not the AP execution device can acquire data corresponding to the data specifying information described in the AP software deployed thereto by accessing the database;
An information processing system that manages the data in the data list when it can be obtained.
상기 AP 실행 장치의 각각과 통신 가능하게 접속되고, 상기 데이터 리스트를 분산 처리 방식으로 갱신 관리하는 복수의 정보 처리 장치를 포함하는, 정보 처리 시스템.According to claim 16,
An information processing system including a plurality of information processing devices that are communicatively connected to each of the AP execution devices and update and manage the data list in a distributed processing method.
상기 AP 실행 장치의 각각은, 각각이 상기 데이터베이스에 접속하기 위해 필요한 정보인 DB 접속 정보를 개별적으로 관리하는, 정보 처리 시스템.According to claim 16,
Each of the AP execution devices individually manages DB access information, which is information necessary for each to access the database.
상기 AP 실행 장치의 각각이, 같은 처리 블록을 같은 순서로 실행하는 공통의 AP 소프트웨어를 기억하고,
상기 AP 소프트웨어는, 제1 상기 거점의 제1 상기 AP 실행 장치에서 실행된 상기 처리 블록의 처리를, 제2 상기 거점의 제2 상기 AP 실행 장치에 연계하기 위한 처리를 실현하는 처리 블록인 전송 처리 블록을 포함하고,
상기 제1 AP 실행 장치는, 상기 AP 소프트웨어의 처리 블록의 순차 실행에 있어서 제1 상기 전송 처리 블록에 도달하면, 연계 개시를 통지하는 메시지인 연계 개시 메시지를 상기 제2 AP 실행 장치에 송신하고,
상기 제2 AP 실행 장치는, 상기 연계 개시 메시지를 수신하면, 상기 제1 전송 처리 블록에 후속하는 처리 블록으로부터 순차 실행을 개시하고,
상기 복수의 AP 실행 장치의 각각에 있어서 이용 가능한 데이터를 나타내는 정보인 데이터 리스트를 관리하고,
상기 제1 AP 실행 장치가,
상기 AP 소프트웨어의 처리 블록의 순차 실행에 있어서 제1 상기 전송 처리 블록에 도달하면, 상기 데이터 리스트에 의거하여, 당해 제1 전송 처리 블록에 기술되어 있는, 상기 제2 거점에 있어서의 데이터를 지정하는 정보인 데이터 지정 정보에 대응하는 데이터를 이용 가능한 상기 AP 실행 장치를 상기 제2 AP 실행 장치로서 선출하고,
연계 개시를 통지하는 메시지인 연계 개시 메시지를, 선출한 상기 제2 AP 실행 장치에 송신하고,
상기 제2 AP 실행 장치가, 상기 연계 개시 메시지를 수신하면, 상기 제1 전송 처리 블록에 후속하는 처리 블록으로부터 순차 실행을 개시하는, 정보 처리 시스템의 제어 방법.It is provided at each of a plurality of bases and includes a plurality of AP execution devices that are information processing devices that execute AP software, which is software for realizing application functions, and the AP execution devices are communicatively connected to each other through a communication network. As a control method of the configured information processing system,
Each of the AP execution devices stores common AP software that executes the same processing blocks in the same order;
The AP software is a transmission process that is a processing block for realizing a process for linking the processing of the processing block executed by the first AP execution device of the first said base to the second said AP execution device of the second said base. contain blocks,
When the first transfer processing block is reached in the sequential execution of processing blocks of the AP software, the first AP execution device transmits an association start message, which is a message notifying an association start, to the second AP execution device;
Upon receiving the association initiation message, the second AP execution device initiates sequential execution from a processing block subsequent to the first transmission processing block;
Managing a data list, which is information indicating available data in each of the plurality of AP execution devices;
The first AP execution device,
Designating data in the second base described in the first transfer processing block based on the data list when the first transfer processing block is reached in sequential execution of the processing blocks of the AP software selecting the AP execution device capable of using data corresponding to data specifying information, which is information, as the second AP execution device;
sending an association start message, which is a message notifying association start, to the selected second AP execution device;
The control method of the information processing system, wherein the second AP execution device starts sequential execution from a processing block subsequent to the first transmission processing block when receiving the association start message.
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JPJP-P-2019-099564 | 2019-05-28 | ||
JP2019099564 | 2019-05-28 | ||
JP2019165080A JP7189104B2 (en) | 2019-05-28 | 2019-09-11 | Information processing system and control method for information processing system |
JPJP-P-2019-165080 | 2019-09-11 | ||
PCT/JP2020/007813 WO2020240954A1 (en) | 2019-05-28 | 2020-02-26 | Information processing system and control method for information processing system |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20210041056A KR20210041056A (en) | 2021-04-14 |
KR102523389B1 true KR102523389B1 (en) | 2023-04-20 |
Family
ID=73648014
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020217007071A KR102523389B1 (en) | 2019-05-28 | 2020-02-26 | Information processing system and control method of information processing system |
Country Status (4)
Country | Link |
---|---|
JP (1) | JP7189104B2 (en) |
KR (1) | KR102523389B1 (en) |
CN (1) | CN112673353A (en) |
BR (1) | BR112021004630A2 (en) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130080559A1 (en) * | 2011-09-23 | 2013-03-28 | Netapp, Inc. | Storage area network attached clustered storage system |
JP2014109800A (en) * | 2012-11-30 | 2014-06-12 | Fujitsu Ltd | Distribution processing method, information processing apparatus, and program |
US20140379100A1 (en) * | 2013-06-25 | 2014-12-25 | Fujitsu Limited | Method for requesting control and information processing apparatus for same |
US20170346690A1 (en) * | 2016-05-27 | 2017-11-30 | Intel Corporation | Methods, systems and apparatus to improve cluster efficiency |
US10148498B1 (en) * | 2016-03-30 | 2018-12-04 | EMC IP Holding Company LLC | Provisioning storage in a multi-site cloud computing environment |
Family Cites Families (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3860385B2 (en) * | 2000-03-23 | 2006-12-20 | 日本電信電話株式会社 | Dynamic linkage information takeover method, linkage process control device, and program recording medium thereof |
JP3780880B2 (en) * | 2001-07-05 | 2006-05-31 | ソニー株式会社 | Communication system, server device, client device, cooperative processing providing method, cooperative processing method, program, and recording medium |
JP4383757B2 (en) * | 2003-02-28 | 2009-12-16 | 日本電信電話株式会社 | Application process management method, distributed server system, and application process management program |
JP4663525B2 (en) * | 2006-01-06 | 2011-04-06 | 株式会社日立製作所 | Information processing method, information processing apparatus, and program |
JP2008250928A (en) * | 2007-03-30 | 2008-10-16 | Nec Corp | Management system, management method and management program for cooperating apparatus |
JP2010219630A (en) * | 2009-03-13 | 2010-09-30 | Canon Inc | Workflow execution system, workflow execution method, and program |
CN102770852B (en) * | 2010-02-18 | 2015-07-29 | 株式会社日立制作所 | Information communications processing system, method and network node |
JPWO2013076920A1 (en) * | 2011-11-25 | 2015-04-27 | パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America | Master device, cooperative service management system, and cooperative service management method |
US9098344B2 (en) | 2011-12-27 | 2015-08-04 | Microsoft Technology Licensing, Llc | Cloud-edge topologies |
JP5626233B2 (en) * | 2012-02-15 | 2014-11-19 | コニカミノルタ株式会社 | Information processing system, portable information terminal and program |
JP2014167685A (en) | 2013-02-28 | 2014-09-11 | Kddi Corp | Data processing system, data processing method and program |
JP5832481B2 (en) | 2013-06-12 | 2015-12-16 | 株式会社ソニー・コンピュータエンタテインメント | Information processing apparatus, information processing system, and information processing method |
US9639544B1 (en) * | 2013-10-28 | 2017-05-02 | Pivotal Software, Inc. | Table data persistence |
JP2016015580A (en) * | 2014-07-01 | 2016-01-28 | 株式会社リコー | Cooperative processing system and cooperative processing method |
WO2016174739A1 (en) * | 2015-04-28 | 2016-11-03 | 株式会社日立製作所 | Multicomputer system, management computer, and data linkage management method |
JP6665423B2 (en) * | 2015-05-14 | 2020-03-13 | 株式会社リコー | Information processing system, information processing apparatus, information processing method, and information processing program |
US9684543B1 (en) * | 2016-02-05 | 2017-06-20 | Sas Institute Inc. | Distributed data set storage, retrieval and analysis |
WO2017163447A1 (en) * | 2016-03-22 | 2017-09-28 | 三菱電機株式会社 | Information processing system, information processing device, and information processing method |
JP6826865B2 (en) * | 2016-11-07 | 2021-02-10 | 日本放送協会 | Terminal devices and programs |
JP6235108B1 (en) * | 2016-11-29 | 2017-11-22 | 株式会社 ヴァル研究所 | Information processing apparatus, application linkage method, and computer program |
JP6901290B2 (en) | 2016-12-01 | 2021-07-14 | エヌ・ティ・ティ・コミュニケーションズ株式会社 | Cloud relay device, cloud connection processing method, and program |
JP6861058B2 (en) * | 2017-03-14 | 2021-04-21 | 日本放送協会 | Terminal devices and programs |
JP6845477B2 (en) * | 2017-10-25 | 2021-03-17 | 株式会社 ヴァル研究所 | Information processing equipment and computer programs |
-
2019
- 2019-09-11 JP JP2019165080A patent/JP7189104B2/en active Active
-
2020
- 2020-02-26 KR KR1020217007071A patent/KR102523389B1/en active IP Right Grant
- 2020-02-26 BR BR112021004630-5A patent/BR112021004630A2/en unknown
- 2020-02-26 CN CN202080005057.4A patent/CN112673353A/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130080559A1 (en) * | 2011-09-23 | 2013-03-28 | Netapp, Inc. | Storage area network attached clustered storage system |
JP2014109800A (en) * | 2012-11-30 | 2014-06-12 | Fujitsu Ltd | Distribution processing method, information processing apparatus, and program |
US20140379100A1 (en) * | 2013-06-25 | 2014-12-25 | Fujitsu Limited | Method for requesting control and information processing apparatus for same |
US10148498B1 (en) * | 2016-03-30 | 2018-12-04 | EMC IP Holding Company LLC | Provisioning storage in a multi-site cloud computing environment |
US20170346690A1 (en) * | 2016-05-27 | 2017-11-30 | Intel Corporation | Methods, systems and apparatus to improve cluster efficiency |
Also Published As
Publication number | Publication date |
---|---|
BR112021004630A2 (en) | 2021-05-25 |
JP7189104B2 (en) | 2022-12-13 |
JP2020198068A (en) | 2020-12-10 |
KR20210041056A (en) | 2021-04-14 |
CN112673353A (en) | 2021-04-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109889551B (en) | Method for accessing intelligent hardware to Internet of things cloud platform | |
CN106790595B (en) | Docker container active load balancing device and method | |
US8584081B2 (en) | Server side application integration framework | |
CN110262902B (en) | Information processing method and system, medium, and computing device | |
CN111813570A (en) | Event-driven message interaction method for power Internet of things | |
US20040199550A1 (en) | Information management technique | |
CN110266815B (en) | Micro service network system based on block chain | |
CN101567861B (en) | Data synchronization method and application system between heterogeneous application systems | |
CN110691131A (en) | Micro-service framework system based on intelligent mobile terminal | |
CN111078238A (en) | Centralized processing method and device for application configuration in container environment | |
Schwan et al. | Autoflow: Autonomic information flows for critical information systems | |
CN115248692A (en) | Device and method for supporting cloud deployment of multiple deep learning framework models | |
CN102375894A (en) | Method for managing different types of file systems | |
CN114221690A (en) | Semantic model construction method for cloud edge cooperative system | |
CN102970325A (en) | File upload method and system | |
CN101001212B (en) | Multisystem message interaction managing and control system and method | |
KR102523389B1 (en) | Information processing system and control method of information processing system | |
Pantoja et al. | Exposing iot objects in the internet using the resource management architecture | |
US20030005106A1 (en) | Communication control apparatus and method | |
WO2020240954A1 (en) | Information processing system and control method for information processing system | |
US20040107244A1 (en) | Scalable and intelligent network platform for distributed system | |
CN111327447A (en) | Distributed system, arbitration method, node device and storage medium | |
CN114885012A (en) | System access method and system of Internet of things platform | |
CN114501347A (en) | Information interaction method, device and system between heterogeneous systems | |
CN113472638A (en) | Edge gateway control method, system, device, electronic equipment and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right |