KR20210041056A - 정보 처리 시스템, 및 정보 처리 시스템의 제어 방법 - Google Patents

정보 처리 시스템, 및 정보 처리 시스템의 제어 방법 Download PDF

Info

Publication number
KR20210041056A
KR20210041056A KR1020217007071A KR20217007071A KR20210041056A KR 20210041056 A KR20210041056 A KR 20210041056A KR 1020217007071 A KR1020217007071 A KR 1020217007071A KR 20217007071 A KR20217007071 A KR 20217007071A KR 20210041056 A KR20210041056 A KR 20210041056A
Authority
KR
South Korea
Prior art keywords
execution
information
software
execution device
processing block
Prior art date
Application number
KR1020217007071A
Other languages
English (en)
Other versions
KR102523389B1 (ko
Inventor
유 나카타
히로아키 고노우라
마사후미 기노시타
Original Assignee
가부시끼가이샤 히다치 세이사꾸쇼
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 가부시끼가이샤 히다치 세이사꾸쇼 filed Critical 가부시끼가이샤 히다치 세이사꾸쇼
Priority claimed from PCT/JP2020/007813 external-priority patent/WO2020240954A1/ja
Publication of KR20210041056A publication Critical patent/KR20210041056A/ko
Application granted granted Critical
Publication of KR102523389B1 publication Critical patent/KR102523389B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation 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/5038Allocation 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/102Program control for peripheral devices where the programme performs an interfacing function, e.g. device driver
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-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 전송 처리 블록에 후속하는 처리 블록으로부터 순차 실행을 개시한다.

Description

정보 처리 시스템, 및 정보 처리 시스템의 제어 방법
본 발명은, 정보 처리 시스템, 및 정보 처리 시스템의 제어 방법에 관한 것이다.
본 출원은, 2019년 5월 28일에 출원된 일본국 특허출원2019-099564호, 및 2019년 9월 11일에 출원된 일본국 특허출원2019-165080호에 의거하는 우선권을 주장하고, 그 개시 전체를 원용하여 본 출원에 도입하는 것이다.
특허문헌 1에는, 퍼스널 컴퓨터, 셀 전화, 스마트폰, 휴대 정보 단말 등의 복수의 에지 디바이스가, 각각 네트워크를 통해 클라우드와 통신 가능하게 접속되는 시스템에 있어서, 클라우드와 에지 디바이스간에 리얼타임으로 처리를 행하는 어플리케이션이, 에지 디바이스나 클라우드로부터 수집되는 리얼타임 피드에 의거하여 통지나 추장 등의 서비스를 제공하는 것이 기재되어 있다.
특허문헌 2에는, 클라우드 서비스를 이용하는 에지측의 장치에 있어서, 어플리케이션의 개발 용이성의 향상이나, 어플리케이션으로부터 각종 클라우드 서비스의 유연한 이용을 가능하게 하는 것을 목적으로 하여 구성된 클라우드 중계 장치에 대해서 기재되어 있다. 클라우드 중계 장치는, 클라우드 서비스 장치와 접속 가능한 클라우드 접속 처리부와, 클라우드 접속 처리부에 대응하는 유저 인터페이스부와, 클라우드 접속 처리부와 유저 인터페이스부 사이에서 데이터의 중계를 행하는 중계부를 구비한다.
일본국 특표2015-505404호 공보 일본국 특개2018-92565호 공보
저(低)지연으로 행해야 할 처리 등을 에지측에서 실행하고, 클라우드측에서는 에지측의 처리 내용의 관리 등을 행하는, 소위 에지 컴퓨팅이 주목받고 있다. 또한 에지 컴퓨팅과 같이 복수의 거점간에서 행해지는 처리를 실현하기 위한 소프트웨어를 개발할 기회가 증가하고 있다. 또한 클라우드나 에지의 어플리케이션이 공개하는 API(Application Program Interface)를 이용하여 클라우드측이나 에지측에서 제공되는 어플리케이션의 처리를 연계시키는 소프트웨어가 주목받고 있다.
이러한 복수의 거점간에서 처리를 연계하는 소프트웨어의 개발에 있어서는, 거점간의 통신 부하의 경감이나 시큐러티의 향상, 소프트웨어의 개발 부하의 경감 등을 도모하는 것이 요구된다. 또한 소프트웨어의 개발 방법은, 종래의 데이터의 관리(SoR: System of Record)를 중심으로 한 개발 방법으로부터, 고객을 중심으로 한 개발 방법(SoE: system of Engagement)으로 시프트하고 있어, 소프트웨어의 개발에 있어서는, 도메인측(에지측)의 상황을 숙지한 시스템의 발주측(도메인 엑스퍼트)의 참가가 중요해지고 있다.
특허문헌 1에서는, 개개의 에지 디바이스가 개별적으로 클라우드와의 사이에서 통신하는 구성이기 때문에, 클라우드 및 개개의 에지 디바이스의 각각에 대해서 개별적으로 소프트웨어를 구축할 필요가 있어, 시스템 전체의 개발 부담이 크고, 특히 클라우드와의 연계 처리에 익숙하지 않은 도메인 엑스퍼트에 의한 개발은 곤란하다. 또한 에지 디바이스마다 클라우드와의 사이에서 통신이 발생하기 때문에, 클라우드와 에지 디바이스 사이의 통신 부하나 시큐러티의 확보가 문제가 된다.
또한 특허문헌 2에 기재된 구성에서는, 에지측의 클라우드 중계 장치의 기능을 실현하는 소프트웨어를 개발할 필요가 있어, 각 거점의 클라우드 중계 장치에 대해서 개별적으로 소프트웨어를 개발할 필요가 있기 때문에 개발 부담이 크고, 특히 클라우드 중계 장치와 클라우드 사이의 연계 처리를 실현하는 소프트웨어의 개발은 도메인 엑스퍼트에게는 곤란하다.
본 발명은 이러한 배경에 의거하여 이루어진 것이며, 복수의 거점간에서 연계하여 행해지는 처리를 실현하는 소프트웨어를 효율적으로 개발하는 것이 가능한, 정보 처리 시스템, 및 정보 처리 시스템의 제어 방법을 제공하는 것을 목적으로 한다.
상기 목적을 달성하기 위한 본 발명의 하나는, 정보 처리 시스템으로서, 복수의 거점의 각각에 마련되고, 어플리케이션의 기능을 실현하는 소프트웨어인 AP 소프트웨어를 실행하는 정보 처리 장치인 복수의 AP 실행 장치를 포함하고, 상기 AP 실행 장치는 통신 네트워크를 통해 서로 통신 가능하게 접속되어 있으며, 상기 AP 실행 장치의 각각은, 같은 처리 블록을 같은 순서로 실행하는 공통의 AP 소프트웨어를 기억하고, 상기 AP 소프트웨어는, 제1 상기 거점의 제1 상기 AP 실행 장치에서 실행된 상기 처리 블록의 처리를, 제2 상기 거점의 제2 상기 AP 실행 장치에 연계하기 위한 처리를 실현하는 처리 블록인 전송 처리 블록을 포함하고, 상기 제1 AP 실행 장치는, 상기 AP 소프트웨어의 처리 블록의 순차 실행에 있어서 제1 상기 전송 처리 블록에 도달하면, 당해 제1 전송 처리 블록의 식별자를 포함하는, 연계 개시를 통지하는 메시지인 연계 개시 메시지를 상기 제2 AP 실행 장치에 송신하고, 상기 제2 AP 실행 장치는, 상기 연계 개시 메시지를 수신하면, 상기 제1 전송 처리 블록에 후속하는 처리 블록으로부터 순차 실행을 개시한다.
그 외, 본원이 개시하는 과제, 및 그 해결 방법은, 발명을 실시하기 위한 형태의 란, 및 도면에 의해 분명해진다.
본 발명에 의하면, 복수의 거점간에서 연계하여 행해지는 처리를 실현하는 소프트웨어를 효율적으로 개발할 수 있다.
도 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 실시형태의 전송 개시 메시지의 일례를 나타내는 도면.
이하, 실시형태에 대해 도면을 참조하면서 설명한다. 이하의 설명에 있어서, 동일하거나 또는 유사한 구성에 동일한 부호를 부여하여 중복된 설명을 생략할 경우가 있다. 또한 「어플리케이션 소프트웨어」를 「AP」라고 표기할 경우가 있다. 또한 「데이터베이스」를 「DB」라고 표기할 경우가 있다. 또한 이하의 설명에 있어서, 동종의 구성을 구별할 필요가 있을 경우, 구성을 총칭하는 부호 뒤에 괄호 쓰기로 식별자(숫자, 알파벳 등)를 표기할 경우가 있다.
[제1 실시형태]
도 1에 제1 실시형태로서 설명하는 정보 처리 시스템(1)의 개략적인 구성을 나타내고 있다. 동(同)도면에 나타내는 바와 같이, 정보 처리 시스템(1)은, 클라이언트 장치(2), AP 관리 장치(3), 클러스터 관리 장치(4), 및 복수의 거점(8)(1)∼(N)의 각각에 존재하는 하나 이상의 AP 실행 장치(10)를 포함한다. 이들 장치는, 어느 것이나 정보 처리 장치(컴퓨터)를 이용하여 구성되고, 통신 네트워크(5)를 통해 서로 통신 가능하게 접속되어 있다.
통신 네트워크(5)는, 이더넷(등록 상표)이나 TCP/IP 등의 소정의 통신 프로토콜에 따른 통신을 실현하는 통신 기반(Network Infrastructure)이며, 예를 들면, LAN(Local Area Network), WAN(Wide Area Network), 인터넷, 전용선, 공중 통신망 등이다.
클라이언트 장치(2)는, 소프트웨어 개발 기술자나 도메인 엑스퍼트 등의 유저에게, AP 실행 장치(10)에서 실행되는 어플리케이션 소프트웨어(이하, 「AP 소프트웨어」라고 칭함)의 편집 및 생성 환경(이하, 「소프트웨어 개발 환경」이라고 칭함)을 제공한다. 또, 본 실시형태에서는, 일례로서, 클라이언트 장치(2)는, 비주얼 프로그래밍 툴(이하, 「VP 툴」이라고 약기함)을 이용한 소프트웨어 개발 환경을 제공하는 것으로 하지만, 소프트웨어 개발 환경의 태양은 반드시 한정되지 않는다.
VP 툴을 이용한 소프트웨어 개발에 있어서는, 각종 처리가 표현되는 노드에, 용도나 환경, 그 밖의 상황에 대응한 정보를 프로퍼티값으로서 설정하고, 노드간을 선으로 연결함으로써 일련의 처리를 플로우로서 기술한다. 노드는, 일반적인 절차형 프로그래밍 언어에 있어서의 함수 또는 메소드에 상당한다. 유저는, VP 툴을 이용함으로써, 의도한 처리를 행하는 소프트웨어를 직감적으로 개발할 수 있다. VP 툴의 일례로서 Node-RED가 있다. Node-RED로 개발한 일련의 플로우는, JavaScript(등록 상표)를 베이스로 한 JSON(JavaScript Object Notation) 형식의 코드로 관리된다. 또한 다른 VP 툴의 예로서, Apache Nifi 등이 있다.
도 1에 있어서, AP 관리 장치(3)는, 클라이언트 장치(2)에 의해 생성된 AP 소프트웨어의 관리(기억)를 행한다. 예를 들면, AP 소프트웨어가 Node-RED에 의해 생성된 것일 경우, AP 관리 장치(3)는, AP 소프트웨어의 JSON 형식의 코드를 관리한다. AP 소프트웨어는, 컨테이너(AP 소프트웨어의 실행 모듈, 실행 환경에 관한 정보, 전개 방법이나 조작 방법에 관한 정보 등을 패키지화한 것)로 하여 AP 관리 장치(3)에 관리되는 것이어도 된다. 컨테이너의 일례로서 Docker(등록 상표)에 의한 것이 있다. AP 관리 장치(3)는, AP 소프트웨어의 버전 관리를 행하는 구조(GitHub(등록 상표), GitLab(등록 상표) 등)를 구비하고 있어도 된다.
거점(8)(1)∼(N)은, 예를 들면, 클라우드, 센서 데이터의 수집 등이 행해지는 현장(공장, 각종 작업 현장, 물류 창고, 오피스, 각종 설비(엘리베이터, 자동 개찰기, 각종 게이트, 철도 설비, 도로 설비, 센서 이용의 환경 계측 설비, 이동체(자동차, 열차, 항공기, 드론, 농업 기기 등), 농장, 데이터 센터 등이다.
클러스터 관리 장치(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)간에서의 클러스터 서비스를 실현한다.
각 거점(8)(1)∼(N)에는 하나 이상의 AP 실행 장치(10)가 존재한다. 각 거점(8)(1)∼(N)에 존재하는 AP 실행 장치(10)는, 같은 클러스터에 속해 있는 동일 또는 서로 다른 거점(8)의 다른 AP 실행 장치(10)와 연계하여 AP 소프트웨어를 실행할 수 있다.
도 2는, 클라이언트 장치(2)에 의해 생성된 AP 소프트웨어가 AP 실행 장치(10)에 제공(디플로이)되고, 각 AP 실행 장치(10)가 AP 소프트웨어를 실행할 때까지의 개략적인 흐름을 나타내는 도면이다.
동도면에 나타내는 바와 같이, 클라이언트 장치(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)에서 실행되는 것이 예정된 처리 블록이다.
계속해서, 클러스터 관리 장치(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)를 디플로이한다.
AP 실행 장치(10)에 디플로이된 AP 소프트웨어의 처리는, 예를 들면, 클러스터 관리 장치(4)가, AP 실행 장치(10)(1)의 하나에 AP 소프트웨어(7)의 실행 개시 명령을 송신함으로써 개시된다. 본 예에서는, 거점(8)(1)의 AP 실행 장치(10)(1)에 클러스터 관리 장치(4)로부터 실행 개시 명령이 송신되고, AP 실행 장치(10)(1)가 AP 소프트웨어의 실행을 개시(「처리 A」로부터 실행 개시)하는 것으로 한다.
「처리 A」가 종료되면, AP 실행 장치(10)(1)는, 계속해서 「처리 B」를 실행하고, 계속해서 「전송 처리」를 실행한다. 「전송 처리」는, 다른 AP 실행 장치(10)에 처리를 연계시키는(인계하는) 처리이다. 본 예에서는, 거점(8)(2)의 AP 실행 장치(10)(2)에 처리가 연계되고, 「처리 B」의 처리 결과가, AP 실행 장치(10)(2)의 「전송 처리」에 인계되고, AP 실행 장치(10)(2)의 「전송 처리」는, 후속하는 「처리 C」로부터 처리를 개시한다.
도 3에 AP 소프트웨어(7)의 구체예를 나타낸다. 예시하는 AP 소프트웨어(7)는, 에지 컴퓨팅에 의한, 기계 학습 모델(이하, 「학습 모델」이라고 칭함)을 이용한 예조 진단의 기능을 실현하는 소프트웨어이다.
동도면에 나타내는 바와 같이, 클라우드인 거점(8)(1)의 AP 실행 장치(10)(1)는, 에지인 거점(8)(2)의 AP 실행 장치(10)(2)가 예조 진단에 있어서 이용하는 하나 이상의 학습 모델(30)을 관리(기억)한다.
우선 AP 실행 장치(10)(1)가, 에지인 거점(8)(2)의 AP 실행 장치(10)(2)에 제공하는 학습 모델을 취득하고(S31), 취득한 학습 모델을 거점(8)(2)의 AP 실행 장치(10)에 전송한다(S32). S32의 처리는, 상술한 「전송 처리」에 상당한다.
거점(8)(2)의 AP 실행 장치(10)(2)는, 학습 모델을 수신하여 기억한다(S33). 계속해서 AP 실행 장치(10)(2)는 센서 데이터를 취득하고(S34), 취득한 센서 데이터를, 기억하고 있는 학습 모델에 적용하여 예조 진단을 행하고(S35), 예조 진단의 결과에 따른 처리(알러트(alert)의 출력 등)를 행한다(S36).
한편, AP 실행 장치(10)(2)는, 취득한 센서 데이터를 학습 데이터로 하여 기계 학습함으로써 학습 모델을 갱신하고(S37), 갱신이 끝난 학습 모델을 거점(8)(1)의 AP 실행 장치(10)(1)에 전송한다(S38). S33 및 S38은, 상술한 「전송 처리」에 상당한다.
클라우드의 AP 실행 장치(10)(1)는, 학습 모델을 수신하고(S39), 관리(기억)하고 있는 학습 모델(30)을 수신한 학습 모델의 내용으로 갱신한다(S40). S39의 처리는 상술한 「전송 처리」에 상당한다.
이상과 같이, 연계하여 처리를 실행하는 복수의 AP 실행 장치(10)의 각각에는, 공통의(같은) 구성을 갖는 AP 소프트웨어(7)가 제공(디플로이)된다. 따라서, AP 실행 장치(10)마다 다른 AP 소프트웨어(7)를 구축할 필요가 없고, AP 소프트웨어(7)는, 예를 들면, 클라우드와 거점(8)간의 처리에 정통(精通)해 있는 특정한 개발자가 구축하면 된다. 그 때문에, 각 거점(8)의 도메인 엑스퍼트가 개별적으로 AP 소프트웨어(7)를 구축할 필요가 없고, 복수의 거점(8)간에서 연계하여 처리를 실행하는 소프트웨어를 정보 처리 시스템(1) 전체적으로 효율적으로 개발할 수 있다.
또한 복수의 AP 실행 장치(10) 중 어느 것에도 공통의(같은) AP 소프트웨어(7)가 제공(디플로이)된다. 그 때문에, AP 소프트웨어(7)의 관리(보수) 부담이나 운용 부담이 적게 된다. 또한 AP 실행 장치(10)간의 통신은, 원칙적으로 전송 처리에서만 발생하므로 정보 처리 시스템(1) 전체적으로 통신 부하를 경감할 수 있고, 또한 특정한 처리 블록(전송 처리)에 집중하여 감시하면 되므로 시큐러티의 향상을 도모할 수 있다.
도 4에, 이상에 설명한 클라이언트 장치(2), AP 관리 장치(3), 클러스터 관리 장치(4), 및 AP 실행 장치(10)의 실현에 이용하는 정보 처리 장치(100)의 하드웨어의 일례를 나타낸다. 동도면에 나타내는 바와 같이, 예시하는 정보 처리 장치(100)는, 프로세서(11), 주기억 장치(12), 보조 기억 장치(13), 입력 장치(14), 출력 장치(15), 및 통신 장치(16)를 구비한다.
클라이언트 장치(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)로 실현하도록 해도 된다.
프로세서(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)에 읽어들여진다.
입력 장치(14)는, 유저로부터 정보를 접수하는 유저 인터페이스이며, 예를 들면, 키보드, 마우스, 카드 리더, 터치패널 등이다. 출력 장치(15)는, 정보를 출력(표시 출력, 음성 출력, 인자 출력 등)함으로써 유저에게 정보를 제공하는 유저 인터페이스이며, 예를 들면, 각종 정보를 가시화하는 표시 장치(LCD(Liquid Crystal Display), 그래픽 카드 등)나 음성 출력 장치(스피커), 인자 장치 등이다. 통신 장치(16)는, 통신 네트워크(5)를 통해 다른 장치와 통신하는 통신 인터페이스이며, 예를 들면, NIC(Network Interface Card), 무선 통신 모듈, USB(Universal Serial Interface) 모듈, 시리얼 통신 모듈 등이다. 통신 장치(16)는, 통신 가능하게 접속하는 다른 장치로부터 정보를 수신하는 입력 장치로서 기능시킬 수도 있다. 또한 통신 장치(16)는, 통신 가능하게 접속하는 다른 장치에 정보를 송신하는 출력 장치로서 기능시킬 수도 있다.
클라이언트 장치(2), AP 관리 장치(3), 클러스터 관리 장치(4), 및 AP 실행 장치(10)의 기능은, 프로세서(11)가, 주기억 장치(12)에 저장되어 있는 프로그램을 판독하여 실행함으로써 실현된다. 또한 상기의 프로그램은, 예를 들면, 기록 매체에 기록하여 배포할 수 있다.
클라이언트 장치(2), AP 관리 장치(3), 클러스터 관리 장치(4), 및 AP 실행 장치(10)는, 상기의 기능에 더하여, 예를 들면, 오퍼레이팅 시스템, 파일 시스템, 디바이스 드라이버, DBMS(DataBase Management System) 등의 다른 기능을 더 구비하고 있어도 된다. 클라이언트 장치(2), AP 관리 장치(3), 클러스터 관리 장치(4), 및 AP 실행 장치(10)는, 각종 정보(데이터)를, 예를 들면, 데이터베이스의 테이블이나 파일로서 기억한다.
도 5에 클라이언트 장치(2)가 구비하는 주된 기능을 나타내고 있다. 동도면에 나타내는 바와 같이, 클라이언트 장치(2)는, 기억부(205), AP 소프트웨어 편집부(210), AP 소프트웨어 전송부(220), 속성 정보 취득 제시부(230), 및 처리 요구 송신부(240)의 각 기능을 구비한다. 또, 클라이언트 장치(2)는, 소프트웨어 개발 기술자나 도메인 엑스퍼트, 클러스터의 관리자 등의 유저에 의해 조작된다.
상기 기능 중, 기억부(205)는, AP 소프트웨어(7) 및 속성 정보(252)를 기억한다.
AP 소프트웨어 편집부(210)는, VP 툴을 이용한 AP 소프트웨어(7)의 개발 환경을 유저에게 제공하고, AP 소프트웨어(7)의 생성을 행한다.
AP 소프트웨어 전송부(220)는, AP 소프트웨어 편집부(210)에 의해 생성된 AP 소프트웨어(7)를 AP 관리 장치(3) 및 클러스터 관리 장치(4)에 전송한다.
속성 정보 취득 제시부(230)는, 후술하는 속성 정보의 취득 요구를 클러스터 관리 장치(4)에 송신하고, 클러스터 관리 장치(4)로부터 보내져 오는 속성 정보를 수신하여 유저에게 제시한다. 속성 정보에 대해서는 후술한다.
처리 요구 송신부(240)는, 클러스터 관리 장치(4)에, 후술하는 AP 프로세스(800)의 생성 지시나 AP 소프트웨어(7)의 실행 개시 지시 등의 처리 요구를 클러스터 관리 장치(4)에 송신한다.
도 6에 AP 관리 장치(3)가 구비하는 주된 기능을 나타내고 있다. 동도면에 나타내는 바와 같이, AP 관리 장치(3)는, 기억부(305), AP 소프트웨어 수신부(310), 및 AP 소프트웨어 관리부(520)를 구비한다.
AP 소프트웨어 수신부(310)는, 클라이언트 장치(2)로부터 통신 네트워크(5)를 통해 보내져 오는 AP 소프트웨어(7)를 수신한다. AP 소프트웨어 수신부(310)가 수신한 AP 소프트웨어는 기억부(305)가 기억한다. AP 소프트웨어 관리부(520)는, AP 소프트웨어(7)의 버전 관리를 행한다.
도 7에 클러스터 관리 장치(4)가 구비하는 주된 기능을 나타내고 있다. 동도면에 나타내는 바와 같이, 클러스터 관리 장치(4)는, 기억부(405), 처리 요구 접수부(410), 및 클러스터 관리부(420)를 구비한다.
기억부(405)는, AP 실행 장치 정보(451), 클러스터 관리 정보(452), 및 AP 소프트웨어(7)를 기억한다. AP 실행 장치 정보(451)는, AP 실행 장치(10)에 관한 각종 정보를 포함한다. 클러스터 관리 정보(452)는, 클러스터의 구성이나 클러스터의 가동 상황에 관한 정보를 포함한다. 클러스터 관리 정보(452)의 내용은, 클러스터 관리부(420) 및 프로세스간 정보 공유부(423)가 관리한다.
처리 요구 접수부(410)는, 클라이언트 장치(2)로부터 처리의 실행 요구(속성 정보의 제공 요구, AP 소프트웨어(7)의 실행 개시 요구, AP 소프트웨어(7)나 AP 실행 장치 정보(451)의 설정(등록/변경/삭제) 요구 등)을 접수한다. 이와 같이 클러스터 관리 장치(4)는, 유저로부터의 요구를 접수하는 유저 인터페이스(유저와의 접점)로서도 기능한다.
클러스터 관리부(420)는, AP 실행 장치 정보 관리부(421), 속성 정보 관리부(422), 및 프로세스간 정보 공유부(423)를 포함한다.
이 중 AP 실행 장치 정보 관리부(421)는, 클러스터를 구성하는 AP 실행 장치(10)에 관한 정보 중, AP 실행 장치(10)에 있어서 생성되는 프로세스(AP 소프트웨어(7)를 실행함으로써 생성되는 프로세스. 이하, 「AP 프로세스」라고 칭함)에 관한 정보를 관리한다. 상기 정보는, 예를 들면, AP 프로세스가 동작하는 AP 실행 장치(10)의 네트워크 어드레스(IP 어드레스 등)나 AP 프로세스와 통신하기 위한 포트 번호 등이다.
속성 정보 관리부(422)는, AP 프로세스가 상술한 「전송 처리」를 행할 때에 전송처의 AP 실행 장치(10)를 특정하기 위해 필요한 정보(이하, 「속성 정보」라고 칭함)를 관리한다. 속성 정보의 상세에 대해서는 후술한다.
프로세스간 정보 공유부(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)가 정상으로 기능하고 있는지의 여부를 리얼타임으로 파악한다.
프로세스간 정보 공유부(423)는, 예를 들면, 에지측의 각 거점(8)(1)∼(N)에 존재하는 정보 처리 장치를 통신 가능하게 접속하여 구성되는 분산 처리 시스템에 의해 실현해도 된다. 그렇게 함으로써, 클러스터 관리 장치(4)와 같은 특정한 정보 처리 장치에의 부하의 집중을 방지함과 함께, 각 거점(8)(1)∼(N)에 있어서의 처리의 고속화를 도모할 수 있다. 상기 분산 처리 시스템은, 예를 들면, Apache 소프트웨어 재단(Apache Software Foundation)이 제공하는 ZooKeeper를 이용하여 실현할 수 있다.
도 8에 AP 실행 장치(10)가 구비하는 주된 기능을 나타내고 있다. 동도면에 나타내는 바와 같이, AP 실행 장치(10)는, 기억부(105), 센서 데이터 취득부(110), 및 프로세스 실행 관리부(120)를 구비한다.
센서 데이터 취득부(110)는, 당해 AP 실행 장치(10)가 존재하는 거점(8)에 마련되어 있는 센서 장치 등으로부터 보내져 오는 센서 데이터를 수신한다. 센서 데이터 취득부(110)가 수신한 센서 데이터는, 기억부(105)가 센서 데이터(152)로서 기억한다. 또, 이하에서는, 이와 같이 AP 실행 장치(10)(AP 프로세스(800))가 처리 대상으로 하는 데이터가 센서 데이터일 경우를 예로서 설명하지만, AP 실행 장치(10)(AP 프로세스(800))가 처리 대상으로 하는 데이터의 종류는 반드시 한정되지 않고, AP 실행 장치(10)(AP 프로세스(800))가 처리 대상으로 하는 데이터는 센서 데이터 이외의 데이터여도 된다.
프로세스 실행 관리부(120)는, AP 프로세스(800)(Docker(등록 상표) 컨테이너의 프로세스 등)의 관리(AP 프로세스의 생성이나 소멸, AP 프로세스의 상태 감시 등)를 행한다.
도 9는, AP 실행 장치(10)가 생성하는 AP 프로세스(800)에 의해 실현되는 주된 기능을 개념적으로 나타낸 것이다. 동도면에 나타내는 바와 같이, AP 프로세스(800)는, AP 소프트웨어 수신부(811), 프로세스 실행 제어부(812), 및 생존 통지 송신부(813)를 구비한다. 이들 기능의 일부는, AP 실행 장치(10)가 구비하는 오퍼레이팅 시스템이나 프로세스 실행 관리부(120)에 의해 실현되는 것이어도 된다.
AP 소프트웨어 수신부(811)는, 클러스터 관리 장치(4)의 프로세스간 정보 공유부(423)로부터 AP 소프트웨어(7)를 수신한다. 기억부(105)는, AP 소프트웨어 수신부(811)가 수신한 AP 소프트웨어(7)를 기억한다. 이에 따라 AP 실행 장치(10)(AP 프로세스(800))에 AP 소프트웨어(7)가 디플로이된다.
프로세스 실행 제어부(812)는, AP 소프트웨어(7)의 실행 환경을 제공한다. 예를 들면, AP 소프트웨어(7)가 Node-RED에 의해 생성된 것일 경우, 프로세스 실행 제어부(812)는, AP 소프트웨어(7)를 실행하기 위한 Node-RED의 실행 환경을 제공한다. 또한 프로세스 실행 제어부(812)는, AP 소프트웨어(7)의 실행 제어를 행한다.
프로세스 실행 제어부(812)는, AP 소프트웨어 처리 실행부(8121) 및 메시지 전송부(8122)를 갖는다. 이 중 AP 소프트웨어 처리 실행부(8121)는, AP 소프트웨어(7)의 플로우 제어(처리 블록의 순차 실행 제어)를 행한다. 메시지 전송부(8122)는, 상술한 「전송 처리」에 있어서, AP 프로세스(800)간에서의 처리의 연계(인계)에 필요한 정보(이하, 「메시지」라고 칭함)를 다른 AP 프로세스(800)와의 사이에서 송신 또는 수신한다.
생존 통지 송신부(813)는, 프로세스간 정보 공유부(423)와 생존 통지(하트 비트)를 수시로(예를 들면 정기적으로) 송수신한다.
<처리 설명>
계속해서, 정보 처리 시스템(1)에 있어서 행해지는 각종 처리에 대해서 순서대로 설명한다.
도 10은, 클라이언트 장치(2)로부터 AP 관리 장치(3) 및 클러스터 관리 장치(4)에 AP 소프트웨어(7)가 등록(기억)될 때에 행해지는 처리(이하, AP 소프트웨어 등록 시퀀스 S1000이라고 칭함)를 설명하는 시퀀스도이다.
우선 클라이언트 장치(2)는, AP 관리 장치(3)에 AP 소프트웨어(7)와 AP 소프트웨어(7)의 등록 요구를 송신한다(S1011). AP 관리 장치(3)는, 클라이언트 장치(2)로부터 상기 등록 요구를 수신하면, 상기 등록 요구와 함께 수신한 AP 소프트웨어(7)를 관리 대상으로서 등록(기억)한다(S1012).
또한 클라이언트 장치(2)는, 클러스터 관리 장치(4)에 AP 소프트웨어(7)를 송신한다. 클러스터 관리 장치(4)의 처리 요구 접수부(410)는, 클라이언트 장치(2)로부터 보내져 온 상기 AP 소프트웨어(7)를 수신한다(S1013).
클러스터 관리 장치(4)의 처리 요구 접수부(410)는, 수신한 AP 소프트웨어(7)를 자신의 프로세스간 정보 공유부(423)에 송신한다(S1014). 프로세스간 정보 공유부(423)는, AP 소프트웨어(7)를 수신하여 관리 대상으로서 등록(기억)한다(S1015).
또, 다른 처리 순서로서, 처리 요구 접수부(410)가, AP 소프트웨어(7)의 수신 후에, 프로세스간 정보 공유부(423)와 함께 AP 관리 장치(3)에 AP 소프트웨어(7)를 송신하고, AP 관리 장치(3)가 AP 소프트웨어(7)를 등록하도록 해도 된다. 이 처리 순서의 경우, 클라이언트 장치(2)가 AP 소프트웨어 등록 요구를 송신하는 횟수를 1회로 억제할 수 있다.
도 11은, 클러스터 관리 장치(4)가 관리하는 클러스터에 새로운 AP 실행 장치(10)를 추가하는 절차를 설명하는 플로우 차트이다.
우선 AP 실행 장치(10)의 관리자 등이, AP 실행 장치(10)를 통신 네트워크(5)에 접속한다(S1111).
계속해서, 클러스터 관리 장치(4)의 관리자 등이, 새롭게 통신 네트워크(5)에 접속된 상기의 AP 실행 장치(10)의 정보를 AP 실행 장치 정보(451)로서 등록(기억)한다(S1112). 또, 새롭게 등록된 AP 실행 장치 정보(451)는, 프로세스간 정보 공유부(423)에도 통지(공유)되고, 당해 AP 실행 장치(10)가 속하는 클러스터의 각 AP 실행 장치(10)에 공유된다.
도 12는, AP 실행 장치 정보(451)의 일례이다. 예시하는 AP 실행 장치 정보(451)는, JSON 형식의 데이터로 기술되어 있다. AP 실행 장치 정보(451)는, 통신 관련 정보, 상술한 속성 정보, 및 인증 정보를 포함한다.
이 중 통신 관련 정보는, 같은 클러스터에 속하는 AP 실행 장치(10)(AP 프로세스(800))간에서 AP 소프트웨어의 처리를 연계하여 행할 때, 각 AP 실행 장치(10)(AP 프로세스(800))간에서 통신을 행하기 위해 필요한 정보(예를 들면, AP 실행 장치(10)의 IP 어드레스, AP 프로세스(800)의 포트 번호 등)이다. 동도면에서는 「0002」행째에 기술되어 있는 정보가 통신 관련 정보에 상당한다.
또한 속성 정보는, AP 프로세스가 상술한 「전송 처리」를 행할 때에 전송처의 AP 실행 장치(10)를 특정하기 위해 필요한 정보이며, 예를 들면, AP 실행 장치(10)가 설치되어 있는 거점(8)이나 AP 실행 장치(10)를 관리하는 조직을 특정하는 정보, AP 실행 장치(10)의 명칭, AP 실행 장치(10)의 구성(프로세서나 메모리의 정보)을 나타내는 정보 등이다. 또, AP 실행 장치(10)가 가상 머신을 제공할 경우, 속성 정보에는 가상 머신에 관한 정보가 포함된다. 동도면에서는 「0003」∼「0019」행에 기술되어 있는 정보가 속성 정보에 상당한다.
또한 인증 정보는, AP 실행 장치(10)의 AP 프로세스(800)나 AP 프로세스(800)에 의해 실현되는 기능에 액세스(통신, 이용 등)할 때에 필요해지는 정보(유저 ID, 패스워드) 등이다. 동도면에서는 「0020」∼「0021」행에 기술되어 있는 정보가 인증 정보에 상당한다.
도 13은, 도 11의 S1112에 있어서, 클러스터 관리 장치(4)가 클라이언트 장치(2)로부터 AP 실행 장치 정보를 접수했을 때에 행하는 처리(이하, 「AP 실행 장치 정보 접수 시퀀스 S1300」이라고 칭함)를 설명하는 시퀀스도이다.
우선 처리 요구 접수부(410)가, 클라이언트 장치(2)로부터 AP 실행 장치 정보를 수신하고(S1311), 수신한 AP 실행 장치 정보를 클러스터 관리부(420)에 송신하고, 클러스터 관리부(420)(AP 실행 장치 정보 관리부(421), 프로세스간 정보 공유부(423))가 AP 실행 장치 정보를 수신한다(S1312).
클러스터 관리부(420)의 AP 실행 장치 정보 관리부(421)는, 수신한 AP 실행 장치 정보를 AP 실행 장치 정보(451)로서 기억한다(S1313). 또한 클러스터 관리부(420)의 프로세스간 정보 공유부(423)는, 수신한 AP 실행 장치 정보(451)를 관리 대상으로서 기억한다(S1314).
또, 다른 처리 순서로서, AP 실행 장치 정보가 등록(S1313)된 후에, AP 실행 장치 정보 관리부(421)가 AP 실행 장치 정보를 프로세스간 정보 공유부(423)에 송신하고(S1312), 프로세스간 정보 공유부(423)가 AP 실행 장치 정보(451)를 기억(S1314)하도록 해도 된다.
도 14는, 클러스터 관리 장치(4)가, 클라이언트 장치(2)로부터 속성 정보의 변경 요구를 접수했을 때에 행하는 처리(이하, 「속성 정보 변경 시퀀스 S1400」이라고 칭함)를 설명하는 시퀀스도이다.
우선 처리 요구 접수부(410)가, 클라이언트 장치(2)로부터 속성 정보의 변경 정보를 수신하고(S1411), 수신한 상기 변경 정보를 클러스터 관리부(420)에 송신하고, 클러스터 관리부(420)(AP 실행 장치 정보 관리부(421), 프로세스간 정보 공유부(423))가 상기 변경 정보를 수신한다(S1412). 또, 상기 변경 정보의 접수에 있어서, 처리 요구 접수부(410)가, 상기 변경 정보의 내용을 검사(변경 정보에 부정문자가 포함되어 있지 않은지, 변경 정보에 포함되어 있는 AP 실행 장치(10)의 식별자에 중복은 없는지 등을 검사)하고, 속성 정보가 부정한 내용으로 클러스터 관리 장치(4)에 기억되지 않도록 해도 된다. 이와 같이 처리 요구 접수부(410)가 변경 정보의 내용을 검사함으로써 트러블의 발생을 미연에 방지할 수 있다.
계속해서, AP 실행 장치 정보 관리부(421)가, 수신한 상기 변경 정보를 AP 실행 장치 정보(451)에 반영한다(S1413). 또한 프로세스간 정보 공유부(423)가, 보내져 온 상기 변경 정보를, 자신이 기억하고 있는 AP 실행 장치 정보에 반영한다(S1414). 또, AP 실행 장치 정보(451)의 내용과, 프로세스간 정보 공유부(423)가 기억하고 있는 AP 실행 장치 정보의 내용은 동기하고 있을 필요가 있기 때문에, S1413에서 상기 변경 정보가 AP 실행 장치 정보(451)에 반영된 것이 확인된 후에, 프로세스간 정보 공유부(423)가 기억하고 있는 AP 실행 장치 정보의 내용에 반영하는(S1414) 것이 바람직하다.
도 15는, 속성 정보의 변경 정보의 일례이다. 예시하는 변경 정보는 JSON 형식의 데이터로 기술되어 있다. 예시하는 변경 정보는, 통신 관련 정보(「0002」행째) 및 속성 정보(「0003」∼「0019」행)를 포함하지만, 인증 정보는 포함하지 않는다. 또, 변경 정보가 통신 관련 정보를 포함하는 것은, 당해 변경 정보의 반영의 대상이 되는 AP 실행 장치 정보를 특정할 필요가 있기 때문이다.
도 16은, 클러스터 관리 장치(4)가 클라이언트 장치(2)로부터 속성 정보의 취득 요구를 접수했을 때에 행하는 처리(이하, 「속성 정보 제공 시퀀스 S1600」이라고 칭함)를 설명하는 시퀀스도이다. 또, 유저는, 예를 들면, AP 소프트웨어의 편집에 있어서 당해 처리에 의해 제공되는 속성 정보를 참조한다.
우선 처리 요구 접수부(410)가, 클라이언트 장치(2)로부터 속성 정보의 취득 요구를 접수한다(S1611). 상기 취득 요구는, 특정한 AP 실행 장치(10)의 속성 정보를 지정하는 것이어도 되고, 클러스터 관리 장치(4)가 관리(기억)하고 있는 복수의 속성 정보를 지정하는 것이어도 된다.
처리 요구 접수부(410)는, 상기 취득 요구를 수신하면, 클러스터 관리부(420)의 속성 정보 관리부(422)에, 상기 취득 요구에서 지정된 속성 정보의 제공 요구를 송신한다(S1612).
속성 정보 관리부(422)는, 상기 제공 요구를 수신하면, 당해 제공 요구에서 지정된 속성 정보를 처리 요구 접수부(410)에 송신한다(S1613).
처리 요구 접수부(410)는, 속성 정보 관리부(422)로부터 속성 정보를 수신하면, 수신한 속성 정보를 클라이언트 장치(2)에 송신한다(S1614).
도 17은, 클러스터 관리 장치(4)가 클라이언트 장치(2)로부터 AP 프로세스(800)의 생성 지시를 수신했을 때에 행하는 처리(이하, 「AP 소프트웨어 실행 준비 시퀀스 S1700」이라고 칭함)를 설명하는 시퀀스도이다. AP 소프트웨어 실행 준비 시퀀스 S1700은, AP 실행 장치(10)가 AP 소프트웨어(7)를 실행하기 위한 준비 처리이다.
우선 클라이언트 장치(2)로부터 클러스터 관리 장치(4)의 처리 요구 접수부(410)에 AP 프로세스(800)의 생성 지시가 송신된다(S1711).
처리 요구 접수부(410)는, 상기 생성 지시를 수신하면, AP 프로세스의 생성 지시를, 당해 생성 지시의 대상이 되고 있는 AP 프로세스(800)를 연계하여 실행시킬 예정의 복수의 AP 실행 장치(10)(같은 클러스터에 속하는 AP 실행 장치(10). 본 예에서는 3개의 AP 실행 장치(10)(1)∼(3)가 같은 클러스터에 속해 있는 것으로 함)에 송신한다(S1712).
AP 실행 장치(10)의 프로세스 실행 관리부(120)는, 상기 생성 지시를 수신하면(S1713), AP 프로세스(800)를 생성한다(S1713, S1714).
기동한 AP 프로세스(800)는, 프로세스간 정보 공유부(423)에 AP 소프트웨어(7)의 취득 요구를 송신한다(S1715). 프로세스간 정보 공유부(423)는, 상기 취득 요구를 수신하면, 요구받은 AP 소프트웨어(7)를 요구원인 AP 프로세스(800)에 송신하고, AP 프로세스(800)가 상기 AP 소프트웨어(7)를 수신하여 기억한다(S1716). 이에 따라 AP 실행 장치(10)(AP 프로세스(800))에 AP 소프트웨어(7)가 디플로이된다.
계속해서, AP 프로세스(800)는, 프로세스간 정보 공유부(423)에 클러스터(AP 소프트웨어(7)를 연계하여 처리하는 AP 실행 장치(10)가 소속하는 클러스터)에의 참가 등록 요구를 송신한다(S1717). 프로세스간 정보 공유부(423)는, 상기 참가 등록 요구를 수신하면, 클러스터 관리 정보(452)를 갱신하여 당해 AP 프로세스(800)를 상기 클러스터에 등록한다(S1718).
계속해서, AP 프로세스(800)는, 상기 소정의 클러스터의 정보(당해 클러스터에 속해 있는 AP 프로세스(800)의 정보(일람 정보 등), 당해 클러스터에 속해 있는 AP 프로세스(800)가 존재하는 AP 실행 장치(10)의 속성 정보 등)의 제공 요구를 프로세스간 정보 공유부(423)에 송신한다(S1719).
프로세스간 정보 공유부(423)는, 상기 제공 요구를 수신하면, 당해의 정보를 기억부(405)로부터 취득하고, 취득한 정보를 AP 프로세스(800)에 송신한다(S1720).
도 18은, 클러스터에 새로운 AP 프로세스(800)가 참가할 때에 행해지는, 당해 클러스터에 소속하는 AP 실행 장치(10)(본 예에서는 3개의 AP 실행 장치(10)(1)∼(3)가 속해 있는 것으로 함)간에서의 정보 공유에 관한 처리(이하, 「클러스터 내 정보 공유 시퀀스(AP 프로세스 기동 시) S1800」이라고 칭함)를 설명하는 시퀀스도이다.
어떤 클러스터에 속하는 AP 실행 장치(10)(1)에 있어서 새롭게 AP 프로세스(800)(1)가 기동하면, 상술한 바와 같이 AP 프로세스(800)(1)가 당해 클러스터에의 참가 등록 요구를 송신한다(S1811).
프로세스간 정보 공유부(423)는, 상기 참가 등록 요구를 수신하면, 클러스터 관리 정보(452)를 갱신하여 당해 AP 프로세스(800)(1)를 상기 클러스터에 등록한다(S1812).
계속해서, 프로세스간 정보 공유부(423)는, 당해 클러스터에 속하는 다른 AP 실행 장치(10)(2),(3)에, AP 프로세스(800)(1)가 존재하는 AP 실행 장치(10)(1)의 AP 실행 장치 정보(통신 정보, 속성 정보, 및 인증 정보를 포함함)를 송신하고, 다른 AP 실행 장치(10)(2),(3)는, 상기 AP 실행 장치 정보를 수신하여 기억한다(S1813).
도 19는, AP 프로세스(800)가 소멸했을 때에 행해지는, 당해 클러스터에 소속하는 AP 실행 장치(10)(본 예에서는 3개의 AP 실행 장치(10)(1)∼(3)가 속해 있는 것으로 함)간에서의 정보 공유에 관한 처리(이하, 「클러스터 내 정보 공유 시퀀스(AP 프로세스 소멸 시) S1900」이라고 칭함)를 설명하는 시퀀스도이다. 또, AP 프로세스(800)의 소멸 이유로서, 예를 들면, AP 실행 장치(10)나 통신 네트워크(5)의 장해, 유저의 의도적인 소멸 조작의 실시 등이 있다.
프로세스간 정보 공유부(423)는, AP 프로세스(800)로부터 보내져 오는 생존 통지를 리얼타임으로 감시하고 있다(S1911). 프로세스간 정보 공유부(423)는, 어떤 AP 프로세스(800)(1)의 생존 통지가 두절된 것을 검지하면(S1912), 클러스터 관리 정보(452)를 갱신하여 당해 AP 프로세스(800)(1)의 현재 당해 AP 프로세스(800)(1)가 속해 있는 클러스터에의 참가를 무효화한다(S1913).
계속해서, 프로세스간 정보 공유부(423)는, AP 프로세스(800)(1)가 상기 클러스터로부터 이탈한 것을 당해 클러스터에 속하는 다른 AP 프로세스(800)(2),(3)에 통지한다(S1914). 다른 AP 프로세스(800)(2),(3)는, 상기 통지를 수신하면, 각각이 기억하고 있는, 당해 클러스터에의 참가 상황에 관한 정보를 갱신하고, AP 프로세스(800)(1)의 당해 클러스터에의 참가를 무효화한다(S1915).
또, 이상에 설명한, AP 소프트웨어 실행 준비 시퀀스 S1700, 클러스터 내 정보 공유 시퀀스(AP 프로세스 기동 시) S1800, 및 클러스터 내 정보 공유 시퀀스(AP 프로세스 소멸 시) S1900에 의해, 같은 클러스터에 속하는 AP 실행 장치(10)(AP 프로세스(800))간에서, 클러스터에 관한 정보의 동기가 상시 유지된다.
도 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에 예시하는 구성인 것으로 한다.
도 20에 나타내는 바와 같이, 우선 AP 프로세스(800)(1)의 AP 소프트웨어 처리 실행부(8121)(1)가, 클러스터 관리 장치(4)로부터의 실행 개시 지시를 받아 AP 소프트웨어(7)의 실행을 개시(「처리 A」로부터의 순차 실행을 개시)한다(S2011, S2012).
「처리 B」의 실행을 거쳐 처리가 「전송 처리 a」에 도달하면(S2013), AP 소프트웨어 처리 실행부(8121)(1)는, AP 프로세스(800)(1)의 메시지 전송부(8122)(1)에, AP 프로세스(800)(2)에 처리를 연계(인계)하기 위해 필요한 정보를 포함하는 메시지(이하, 「전송 개시 메시지」라고 칭함)를 송신한다(S2014).
도 22에 전송 개시 메시지의 일례를 나타낸다. 동도면에 나타내는 바와 같이, 전송 개시 메시지는, 수신처가 되는 AP 실행 장치(10)를 지정하는 정보(「0002」행째의 기술. 이하, 「수신처 장치 지정 정보」라고 칭함), 「전송 처리 a」의 식별자(「0003」행째의 기술. 이하, 「처리 블록 ID」라고 칭함), 당해 메시지의 종별(종류)을 나타내는 정보(「0004」행째의 기술. 이하, 「전송 종별」이라고 칭함), 및 연계처(인계처)의 처리 블록에 건네주는 정보(「0005」∼「0007」행째의 기술. 이하, 「연계 정보」라고 칭함)를 포함한다.
본 예에서는, 수신처 장치 지정 정보로서 「edge_siteA」가 기술되어 있다. 이것은 거점(8)(2)에 존재하는 AP 실행 장치(10)(2)를 수신처로서 지정해야 할 것을 지정하고 있다. 또한 전송 종별로서 「start」가 지정되어 있다. 이것은 당해 메시지가 전송 개시 메시지인 것을 나타내고 있다. 연계 정보는, 예를 들면, AP 소프트웨어(7)가 도 3에 예시하는 것일 경우는 학습 모델(30)(파라미터)이다.
도 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)의 포트 번호)를 취득한다.
계속해서, 메시지 전송부(8122)(1)는, 선출한 AP 실행 장치(10)(2)(AP 프로세스(800)(2))에, 연계 개시를 통지하는 메시지(이하, 「연계 개시 메시지」라고 칭함)를 송신한다(S2016).
도 23에 연계 개시 메시지의 일례를 나타낸다. 동도면에 나타내는 바와 같이, 연계 개시 메시지는, 송신원의 AP 실행 장치(10)(1)를 나타내는 정보(「0002」행째의 기술. 이하, 「송신원 정보」라고 칭함), 「전송 처리 a」의 식별자(「0003」행째의 기술. 이하, 「처리 블록 ID」라고 칭함), 당해 메시지의 종별(종류)을 나타내는 정보(「0004」행째의 기술. 이하, 「전송 종별」이라고 칭함), 연계처(인계처)의 처리 블록에 건네주는 정보(「0005」∼「0007」행째의 기술. 이하, 「연계 정보」라고 칭함)를 포함한다. 또, 송신원 정보는, 연계처인 AP 프로세스(800)(2)가 다시 AP 프로세스(800)(1)에 처리를 인계할 때에 필요해지는 정보이다.
도 20으로 돌아가, 연계처의 AP 실행 장치(10)(2)의 AP 프로세스(800)(2)의 메시지 전송부(8122)(2)는, 연계 개시 메시지를 수신하면, 수신한 연계 개시 메시지를 당해 AP 프로세스(800)(2)의 AP 소프트웨어 처리 실행부(8121)(2)에 통지(송신)한다(S2017).
AP 소프트웨어 처리 실행부(8121)(2)는, 연계 개시 메시지를 수신하면, 연계 개시 메시지의 「연계 정보」의 내용을 입력으로 하여 「처리 C」로부터 처리를 개시한다(S2018, S2019). 또, AP 소프트웨어 처리 실행부(8121)(2)는, 연계 개시 메시지의 「처리 블록 ID」에 「전송 처리 a」의 식별자가 설정되어 있으므로, 「전송 처리 a」에 후속하는 「처리 C」로부터 처리를 개시한다.
「처리 D」의 실행을 거쳐 처리가 「전송 처리 b」에 도달하면(S2020), 계속해서 AP 소프트웨어 처리 실행부(8121)(2)는, AP 프로세스(800)(2)의 메시지 전송부(8122)(2)에, AP 프로세스(800)(1)에의 처리의 연계(인계)를 지시하는 메시지(이하, 「전송 종료 메시지」라고 칭함)를 통지(송신)한다(S2021).
메시지 전송부(8122)(2)는, 전송 종료 메시지를 수신하면, AP 실행 장치(10)(1)의 AP 프로세스(800)(1)에, 연계 종료를 통지하는 메시지(이하, 「연계 종료 메시지」라고 칭함)를 송신한다(S2022).
도 24에 연계 종료 메시지의 일례를 나타낸다. 동도면에 나타내는 바와 같이, 연계 종료 메시지는, 연계 개시 메시지의 송신원인 AP 실행 장치(10)(1)를 나타내는 정보(「0002」행째의 기술. 이하, 「송신원 정보」라고 칭함), 「전송 처리 a」의 식별자(「0003」행째의 기술. 이하, 「처리 블록 ID」라고 칭함), 당해 메시지의 종별(종류)을 나타내는 정보(「0004」행째의 기술. 이하, 「전송 종별」이라고 칭함), 연계처(인계처)의 처리 블록에 건네주는 정보(「0005」∼「0007」행째의 기술. 이하, 「연계 정보」라고 칭함)를 포함한다. 또, 연계 종료 메시지에 있어서의 송신원 정보는, 연계 개시 메시지의 송신원 정보와 같다. 또한 연계 정보에는, 예를 들면, AP 소프트웨어(7)가 도 3에 예시한 것일 경우, 센서 데이터에 의해 갱신된 학습 모델(30)(파라미터)이 설정된다.
도 20으로 돌아가, AP 프로세스(800)(1)의 메시지 전송부(8122)(1)는, 연계 종료 메시지를 수신하면, 수신한 연계 종료 메시지의 내용을 AP 소프트웨어 처리 실행부(8121)(1)에 통지(송신)한다(S2023). AP 소프트웨어 처리 실행부(8121)(1)는, 상기 통지를 받으면, 연계 종료 메시지의 내용에 의거하여 다음에 실행해야 할 처리 블록을 특정(본 예에서는 「처리 E」라고 특정)하고, 연계 종료 메시지의 「연계 정보」를 입력으로 하여, 특정한 처리 블록(「처리 E」)으로부터 처리를 개시한다. 또, AP 소프트웨어 처리 실행부(8121)(1)는, 연계 종료 메시지의 「처리 블록 ID」에 「전송 처리 a」의 식별자가 설정되고, 「전송 종별」에 연계 종료를 의미하는 「end」가 설정되어 있으므로, 「전송 처리 b」에 후속하는 「처리 E」로부터 처리를 개시한다.
이상과 같이, 「전송 처리」를 통해, 각 거점(8)의 AP 실행 장치(10)(AP 프로세스(800))간에서 처리가 연계되고, 각 거점(8)의 AP 실행 장치(10)에 디플로이되어 있는 같은(공통의) AP 소프트웨어(7)에 의해 처리가 실행된다.
이상 상세히 설명한 바와 같이, 본 실시형태의 정보 처리 시스템(1)에 있어서는, 연계하여 처리를 실행하는 복수의 AP 실행 장치(10)의 각각에는, 공통의(같은) 구성을 갖는 AP 소프트웨어(7)가 제공(디플로이)되므로, AP 실행 장치(10)마다 다른 AP 소프트웨어(7)를 구축할 필요가 없어, 복수의 거점(8)간에서 연계하여 처리를 실행하는 소프트웨어를 정보 처리 시스템(1) 전체적으로 효율적으로 개발할 수 있다. 또한 유저가 설정 가능한 AP 실행 장치 정보(451)에 있어서 AP 소프트웨어(7)를 실행시키는 AP 실행 장치(10)를 지정할 수 있기 때문에, 유저는 AP 소프트웨어(7)의 실행 환경을 용이하며 또한 유연하게 선택할 수 있다.
또한 복수의 AP 실행 장치(10) 중 어느 것에도 공통의(같은) AP 소프트웨어(7)가 제공(디플로이)되므로, AP 소프트웨어(7)의 관리(보수) 부담이나 운용 부담이 적게 된다. 또한 정보 처리 시스템(1) 전체적으로 통신 부하를 경감할 수 있고, 시큐러티의 향상을 도모할 수도 있다.
[제2 실시형태]
도 10에 나타낸 바와 같이, 제1 실시형태에서는, 클라이언트 장치(2)로부터 클러스터 관리 장치(4)에 AP 소프트웨어가 직접 제공되고 있었지만, 버전 관리를 포함하는 AP 소프트웨어의 관리를 AP 관리 장치(3)에서 행하고, 클러스터 관리 장치(4)가 AP 관리 장치(3)로부터 AP 소프트웨어의 제공을 받도록 해도 된다. 이하, 제1 실시형태와 상이한 부분을 중심으로 해서 설명한다.
도 25는, 제2 실시형태의 AP 관리 장치(3)의 주된 기능을 설명하는 도면이다. 동도면에 나타내는 바와 같이, 제2 실시형태의 AP 관리 장치(3)는, 제1 실시형태의 AP 관리 장치(3)가 구비하는 기능에 더하여, AP 소프트웨어 제공부(530)를 더 구비한다. AP 소프트웨어 제공부(530)는, 클러스터 관리 장치(4)로부터의 요구에 따라, 지정된 버전의 AP 소프트웨어(7)를 클라이언트 장치(4)에 송신한다.
도 26은, 제2 실시형태의 클러스터 관리 장치(4)의 주된 기능을 설명하는 도면이다. 동도면에 나타내는 바와 같이, 제2 실시형태의 클러스터 관리 장치(4)는, 제1 실시형태의 클러스터 관리 장치(4)가 구비하는 기능에 더하여, AP 소프트웨어 취득부(430)를 더 구비한다. AP 소프트웨어 취득부(430)는, AP 관리 장치(3)로부터의 소정 버전의 AP 소프트웨어(7)의 취득과, 취득한 AP 소프트웨어(7)의 프로세스간 정보 공유부(423)에의 반영을 행한다.
도 27은, 제2 실시형태의 클러스터 관리 장치(4)의 처리 요구 접수부(410)가 클라이언트 장치(2)로부터 AP 소프트웨어의 반영 요구를 수신했을 때에 행하는 처리의 흐름(이하, 「AP 소프트웨어 반영 시퀀스 S700」이라고 칭함)을 설명하는 시퀀스도이다.
제1 실시형태와 마찬가지로, 클라이언트 장치(2)로부터 AP 관리 장치(3)에 AP 소프트웨어(7)가 송신되고(S2711), AP 관리 장치(3)는 보내져 온 AP 소프트웨어(7)를 수신하여 관리 대상으로서 등록(기억)한다(S2712).
클러스터 관리 장치(4)의 처리 요구 접수부(410)는, 클라이언트 장치(2)로부터 AP 소프트웨어의 반영 요구를 수신하면(S2713), 수신한 반영 요구를 AP 소프트웨어 취득부(430)에 통지한다(S2714).
AP 소프트웨어 취득부(430)는, 상기 반영 요구를 수신하면 AP 소프트웨어의 취득 요구를 AP 관리 장치(3)에 송신하여(S2715) AP 관리 장치(3)로부터 AP 소프트웨어(7)를 취득하고(S2716), 취득한 AP 소프트웨어(7)를 프로세스간 정보 공유부(423)에 송신한다(S2717).
프로세스간 정보 공유부(423)는, AP 소프트웨어(7)를 수신하고, 수신한 AP 소프트웨어(7)를 관리 대상으로서 등록(기억)한다(S1018).
이와 같이 버전 관리를 포함하는 AP 소프트웨어의 관리를 AP 관리 장치(3)가 행하는 구성일 경우에는, 클러스터 관리 장치(4)가 AP 관리 장치(3)로부터 AP 소프트웨어의 제공을 받도록 해도 된다.
[제3 실시형태]
도 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 실시형태와 상이한 부분을 중심으로 해서 설명한다.
도 28은, 제3 실시형태의 정보 처리 시스템(1)의 개략적인 구성을 나타내는 도면이다. 동도면에 나타내는 바와 같이, 제3 실시형태의 정보 처리 시스템(1)은, 제1 실시형태의 정보 처리 시스템(1)이 구비하는 구성에 더하여, 각 거점(8)의 각각에, 각 거점(8)에 있어서 수집된 데이터를 관리하는 데이터베이스(2801)를 구비한다. 데이터베이스(2801)는, 예를 들면, DBMS에 의해 실현되는 릴레이셔널 데이터베이스이다. 각 거점(8)의 데이터베이스(2801)(1)∼(N)는, 각 거점(8)에 존재하는 AP 실행 장치(10)(1)∼(N)와 통신 가능하게 접속되어 있다.
도 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)에 액세스하기 위한 인증 정보 등이 있다.
데이터 정보 관리부(130)는, 데이터 리스트(153)나 DB 접속 정보(154)를 편집(등록, 변경, 삭제 등)하기 위한 유저 인터페이스를 제공한다. 각 거점(8)의 유저(데이터 관리자 등)는, 데이터 정보 관리부(130)를 통해 데이터 리스트(153)나 DB 접속 정보(154)를 편집할 수 있다. DB 접속 정보(154)는, 정보의 외부 유출 방지 등의 관점에서 각 AP 실행 장치(10)에 있어서 개별적으로 관리되고, 클러스터 관리 장치(4)에는 원칙적으로 송신되지 않는다. 데이터 리스트(153)는, 통신 네트워크(5)를 통해 클러스터 관리 장치(4)에도 송신된다.
도 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)에 데이터 지정 정보를 기술할 수 있다.
도 31에 데이터 리스트(453)의 일례를 나타낸다. 예시하는 데이터 리스트(453)는, AP 실행 장치 ID(4531), 데이터명(4532), 및 설명(4533)의 각 항목(칼럼)을 갖는 하나 이상의 레코드를 포함한다. AP 실행 장치 ID(4531)에는, AP 실행 장치(10)의 식별자(이하, 「AP 실행 장치 ID」라고 칭함)가 설정된다. 데이터명(4532)에는, 데이터 지정 정보(본 예에서는 데이터명)가 설정된다. 설명(4533)에는, 당해 데이터를 설명하는 정보(AP 소프트웨어(7)의 개발자 등의 사람이 참조하는 정보)가 설정된다. 또, 데이터 리스트(453)에, 각 데이터의 포맷이나 샘플 데이터가 설정되는 항목(칼럼)을 더 마련해도 된다. 또한 예시하는 데이터 리스트(453)는, 릴레이셔널 데이터베이스 형식의 포맷으로 기술한 것이지만, 데이터 리스트(453)의 포맷은 반드시 한정되지 않는다.
도 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행째에는, 동시에 복수의 데이터명(데이터 지정 정보)을 기술할 수 있다.
3209행째의 「db_connector.get(data[0])」은, 데이터베이스(2801)의 데이터에 액세스하는 함수이다. 당해 함수가 실행됨으로써 데이터베이스(2801)로부터 데이터의 값이 취득된다. 3211행째에서는, 3209행째에서 취득한 값을 이용한 처리가 행해진다. 또, 상기 함수는, 데이터베이스(2801)의 종류(이하, 「DB 종별」이라고 칭함)에 의존하지 않는 범용적인 기술 형식으로 기술된다. 이에 따라 AP 소프트웨어(7)의 개발자는, DB 종별을 의식하지 않고 효율적으로 AP 소프트웨어(7)를 개발할 수 있다.
도 33에 DB 접속 정보(154)의 일례를 나타낸다. DB 접속 정보(154)에는, AP 실행 장치(10)가 데이터베이스(2801)에 액세스하기 위해 필요한 정보(DB 접속 정보)가 관리된다. 예시하는 DB 접속 정보(154)는, 데이터명(1541), DB 종별(1542), 접속처(1543), 인증 정보(1544) 등의 각 항목을 포함하는 하나 이상의 레코드로 구성된다.
데이터명(1541)에는, 상술한 데이터 지정 정보가 설정된다. DB 종별(1542)에는, 당해 데이터가 저장되어 있는 데이터베이스(2801)의 DB 종별을 나타내는 정보가 설정된다. 접속처(1543)에는, 데이터베이스(2801)에 액세스할 때에 이용되는 접속 정보(IP 어드레스, 포트 번호 등)가 설정된다. 인증 정보(1544)에는, 데이터베이스(2801)에 액세스할 때에 필요해지는 인증 정보(유저 ID, 패스워드 등)가 설정된다.
또, 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)의 개발 효율의 향상을 도모할 수 있다.
도 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이라고 칭함)를 행한다.
도 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).
계속해서, DB 접속 확인 실행부(8123)는, 취득한 DB 접속 정보(154)를 이용하여 데이터베이스(2801)에 액세스하고, 데이터베이스(2801)에 액세스 가능한지의 여부를 확인(예를 들면, ping 커맨드가 데이터베이스(2801)에 도달하는지의 여부를 확인)한다(S3506∼3507).
계속해서, DB 접속 확인 실행부(8123)는, 액세스처의 데이터베이스(2801)의 데이터 지정 정보에 대응하는 데이터를 이용 가능한지의 여부를 확인(실제로 당해 데이터의 값을 취득할 수 있는지의 여부)한다(S3508∼3509). 데이터 지정 정보에 대응하는 데이터가 이용 가능할 경우, DB 접속 확인 실행부(8123)는, 자신을 포함하는 AP 프로세스(800)에 있어서 당해 데이터가 이용 가능한 것(즉, 당해 데이터를 이용하는 처리(예를 들면, 도 32의 3206∼3212행에 기술되어 있는 처리)를 실행 가능한 것)을, 프로세스간 정보 공유부(423)에 통지한다(S3510). 한편, 데이터 지정 정보에 대응하는 데이터가 이용 가능하지 않을 경우, DB 접속 확인 실행부(8123)는, 자신을 포함하는 AP 프로세스(800)에 있어서 당해 데이터를 이용할 수 없는 것(즉, 당해 데이터를 이용하는 처리를 실행할 수 없는 것)을 프로세스간 정보 공유부(423)에 통지한다(S3510).
프로세스간 정보 공유부(423)는, 이상의 통지를 수신함으로써 데이터 리스트(453)를 갱신하고, 갱신 후의 데이터 리스트(453)의 내용을 각 AP 실행 장치(10)나 클러스터 관리 장치(4)에 제공한다. 이에 따라, AP 프로세스(800)의 메시지 전송부(8122)는, 자신을 포함하는 AP 프로세스(800) 이외의 다른 AP 프로세스(800)(AP 실행 장치(10)) 중, 어느 거점(8)의 AP 프로세스(800)(AP 실행 장치(10))가 어느 데이터를 이용 가능한지를 알 수 있다.
그런데, 이상에서는, AP 소프트웨어(7)가 디플로이된(S1716) 것을 계기로 하여 AP 실행 장치(10)가 데이터베이스(2801)의 데이터를 실제로 이용 가능한지의 여부를 확인할 경우를 예시했지만, 상기 확인은, 예를 들면, 데이터베이스(2801)의 내용이 갱신(데이터의 등록, 편집, 삭제)되었을 경우나 데이터베이스(2801)가 존재하지 않게 되었을 경우에 행해도 된다.
도 36은, 제3 실시형태의 AP 소프트웨어 실행 시퀀스 S2000을 설명하는 시퀀스도이다. 제3 실시형태의 AP 소프트웨어 실행 시퀀스 S2000은, 제1 실시형태의 AP 소프트웨어 실행 시퀀스 S2000과, S2014에서 송신되는 전송 개시 메시지의 내용 및 S2015의 처리의 내용이 서로 다르다.
동도면에 나타내는 바와 같이, AP 소프트웨어(7)에 기술되어 있는 처리의 실행이 개시되고, 거점(8)의 데이터를 이용하는 처리(예를 들면, 도 32의 3206∼3212행째의 처리)에 도달하면(S3601), 제1 실시형태와 마찬가지로, AP 소프트웨어 처리 실행부(8121)(1)로부터 메시지 전송부(8122)(1)에 전송 개시 메시지가 송신된다(S3602). 단, 제1 실시형태와 달리, 송신되는 전송 개시 메시지에는, 전송처의 거점(3)의 속성 정보가 아니고, 이후의 처리 블록의 실행에 있어서 이용되는 데이터를 지정하는 데이터 지정 정보(데이터명 등)가 기술되어 있다.
계속해서, 메시지 전송부(8122)(1)는, 데이터 지정 정보에 대응하는 데이터를 이용 가능한 AP 실행 장치(10)를 선출한다(S3603). 이 처리는, 상술한 바와 같이, 메시지 전송부(8122)(1)가, 프로세스간 정보 공유부(423)로부터 제공되는 데이터 리스트(453)를 참조함으로써 행해진다. 그 후의 AP 소프트웨어 실행 시퀀스 S2000의 각 처리는 제1 실시형태와 마찬가지이다.
도 37은, 도 26의 S3602에서 송신되는 전송 개시 메시지의 일례이다. 제1 실시형태와 달리, 예시하는 전송 개시 메시지에는, 거점(8)의 속성 정보를 나타내는 정보가 아니고, 이후의 처리 블록에서 이용되는 데이터의 데이터 지정 정보(데이터명)가 기술되어 있다(3702∼3704행). 또, 복수의 데이터를 이용하는 처리에도 대응할 수 있도록, 전송 개시 메시지에는, 리스트 형식으로 복수의 데이터 지정 정보를 기술하는 것도 가능하다.
이상에 설명한 바와 같이, 제3 실시형태의 정보 처리 시스템(1)에 의하면, 연계에 있어서 AP 소프트웨어(7)에 기술되어 있는 데이터 지정 정보(데이터명 등)를 이용 가능한 AP 실행 장치(10)가 자동적으로 선택되고, 선택된 AP 실행 장치(10)에 연계 개시 메시지가 송신된다. 그 때문에, 개발자는 어느 거점(8)의 AP 실행 장치(10)가 연계 가능한지의 여부를 파악해 둘 필요가 없어, 효율적으로 AP 소프트웨어(7)를 개발할 수 있고, 특히 다수의 거점(8)이 광범위하게 존재할 경우에는 엄청난 효과가 기대된다. 또한 AP 소프트웨어(7)의 개발자는, 각 거점(8)에 있어서의 DB 접속 정보를 관리할 필요가 없기 때문에 거점(8)마다의 환경을 상시 파악하고 있을 필요가 없어, AP 소프트웨어(7)의 개발이나 보수를 위한 AP 소프트웨어(7)의 개발자의 정보의 관리 부하가 경감된다.
이상, 본 발명의 일 실시형태에 대해서 설명했지만, 본 발명은 상기의 실시형태에 한정되는 것이 아니고, 그 요지를 일탈하지 않는 범위에서 각종 변경 가능한 것은 물론이다. 예를 들면, 상기의 실시형태는 본 발명을 이해하기 쉽게 설명하기 위해 상세히 설명한 것이며, 반드시 설명한 모든 구성을 구비하는 것에 한정되는 것은 아니다. 또한 상기 실시형태의 구성의 일부에 대해서, 다른 구성의 추가나 삭제, 치환을 하는 것이 가능하다.
또한 상기의 각 구성, 기능부, 처리부, 처리 수단 등은, 그들의 일부 또는 전부를, 예를 들면, 집적 회로로 설계하는 등에 의해 하드웨어로 실현해도 된다. 또한 상기의 각 구성, 기능 등은, 프로세서가 각각의 기능을 실현하는 프로그램을 해석하고, 실행함으로써 소프트웨어로 실현해도 된다. 각 기능을 실현하는 프로그램, 테이블, 파일 등의 정보는, 메모리나 하드디스크, SSD(Solid State Drive) 등의 기록 장치, IC 카드, SD 카드, DVD 등의 기록 매체에 둘 수 있다.
또한 상기의 각 도면에 있어서, 제어선이나 정보선은 설명상 필요하다고 생각되는 것을 나타내고 있으며, 반드시 실장(實裝)상의 모든 제어선이나 정보선을 나타내고 있다고는 할 수 없다. 예를 들면, 실제로는 거의 모든 구성이 상호 접속되어 있다고 생각해도 된다.
또한 이상에 설명한 각 정보 처리 장치의 각종 기능부, 각종 처리부, 각종 데이터베이스의 배치 형태는 일례에 지나지 않는다. 각종 기능부, 각종 처리부, 각종 데이터베이스의 배치 형태는, 이들 장치가 구비하는 하드웨어나 소프트웨어의 성능, 처리 효율, 통신 효율 등의 관점에서 최적의 배치 형태로 변경할 수 있다.
또한 상술한 각종 데이터를 저장하는 데이터베이스의 구성(스키마(Schema) 등)은, 리소스의 효율적인 이용, 처리 효율 향상, 액세스 효율 향상, 검색 효율 향상 등의 관점에서 유연하게 변경할 수 있다.
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 접속 확인 실행부

Claims (20)

  1. 복수의 거점의 각각에 마련되고, 어플리케이션의 기능을 실현하는 소프트웨어인 AP 소프트웨어를 실행하는 정보 처리 장치인 복수의 AP 실행 장치를 포함하고,
    상기 AP 실행 장치는 통신 네트워크를 통해 서로 통신 가능하게 접속되어 있고,
    상기 AP 실행 장치의 각각은, 같은 처리 블록을 같은 순서로 실행하는 공통의 AP 소프트웨어를 기억하고,
    상기 AP 소프트웨어는, 제1 상기 거점의 제1 상기 AP 실행 장치에서 실행된 상기 처리 블록의 처리를, 제2 상기 거점의 제2 상기 AP 실행 장치에 연계하기 위한 처리를 실현하는 처리 블록인 전송 처리 블록을 포함하고,
    상기 제1 AP 실행 장치는, 상기 AP 소프트웨어의 처리 블록의 순차 실행에 있어서 제1 상기 전송 처리 블록에 도달하면, 연계 개시를 통지하는 메시지인 연계 개시 메시지를 상기 제2 AP 실행 장치에 송신하고,
    상기 제2 AP 실행 장치는, 상기 연계 개시 메시지를 수신하면, 상기 제1 전송 처리 블록에 후속하는 처리 블록으로부터 순차 실행을 개시하는, 정보 처리 시스템.
  2. 제1항에 있어서,
    상기 연계 개시 메시지는, 상기 제1 전송 처리 블록 직전의 처리 블록까지의 실행 결과를 포함하고,
    상기 제2 AP 실행 장치는, 상기 실행 결과를 상기 제1 전송 처리 블록에 후속하는 처리 블록에 입력하는, 정보 처리 시스템.
  3. 제1항에 있어서,
    상기 제1 AP 실행 장치는, 상기 AP 소프트웨어의 처리 블록의 순차 실행에 있어서 제1 상기 전송 처리 블록에 도달하면, 당해 제1 전송 처리 블록의 식별자를 포함하는, 연계 개시를 통지하는 메시지인 연계 개시 메시지를 상기 제2 AP 실행 장치에 송신하고,
    상기 제2 AP 실행 장치는, 상기 제1 전송 처리 블록에 후속하는 처리 블록의 순차 실행에 있어서 제2 상기 전송 처리 블록에 도달하면, 상기 제1 전송 처리 블록의 식별자를 포함하는, 연계 종료를 통지하는 메시지인 연계 종료 메시지를 상기 제1 AP 실행 장치에 송신하고,
    상기 제1 AP 실행 장치는, 상기 연계 개시 메시지를 수신하면, 상기 제2 전송 처리 블록에 후속하는 처리 블록으로부터 순차 실행을 개시하는, 정보 처리 시스템.
  4. 제3항에 있어서,
    상기 연계 종료 메시지는, 상기 제2 전송 처리 블록 직전의 처리 블록까지의 실행 결과를 포함하고,
    상기 제1 AP 실행 장치는, 상기 실행 결과를 상기 제2 전송 처리 블록에 후속하는 처리 블록에 입력하는, 정보 처리 시스템.
  5. 제1항에 있어서,
    복수의 상기 AP 실행 장치는, 같은 상기 AP 소프트웨어를 연계하여 실행하는 클러스터를 구성하고,
    상기 복수의 AP 실행 장치의 각각과 통신 가능하게 접속하는 정보 처리 장치인 클러스터 관리 장치를 구비하고,
    상기 클러스터 관리 장치는, 상기 클러스터의 각각에 속하는 상기 AP 실행 장치를 나타내는 정보인 AP 실행 장치 정보를 기억하고, 상기 복수의 AP 실행 장치의 각각에 상기 AP 실행 장치 정보를 송신하는, 정보 처리 시스템.
  6. 제5항에 있어서,
    상기 AP 실행 장치 정보는, 상기 AP 실행 장치의 상기 통신 네트워크에 있어서의 소재(所在)를 나타내는 정보인 통신 정보와, 상기 AP 소프트웨어에 기술되는, 상기 AP 실행 장치의 소재를 특정하는 정보인 속성 정보를 대응지은 정보를 포함하는, 정보 처리 시스템.
  7. 제6항에 있어서,
    상기 AP 소프트웨어는, 연계처가 되는 상기 제2 AP 실행 장치를 지정하는 상기 속성 정보의 기술(記述)을 포함하고, 상기 AP 실행 장치는, 상기 기술과 상기 AP 실행 장치 정보를 대조함으로써 연계처의 상기 AP 실행 장치의 상기 통신 네트워크에 있어서의 소재를 특정하는, 정보 처리 시스템.
  8. 제6항에 있어서,
    상기 클러스터 관리 장치는, 유저가 조작하는 정보 처리 장치인 클라이언트 장치와 통신 가능하게 접속하고, 상기 클라이언트 장치를 통해 유저로부터 상기 AP 실행 장치 정보의 설정을 접수하는, 정보 처리 시스템.
  9. 제8항에 있어서,
    상기 클러스터 관리 장치는, 유저로부터 접수한 상기 AP 실행 장치 정보의 내용의 오류를 검사하는, 정보 처리 시스템.
  10. 제8항에 있어서,
    상기 클러스터 관리 장치는, 기억하고 있는 상기 AP 실행 장치 정보를 상기 클라이언트 장치에 송신하는, 정보 처리 시스템.
  11. 제6항에 있어서,
    상기 클러스터 관리 장치는, 새로운 상기 AP 실행 장치의 상기 클러스터에의 참가 등록을 접수하고, 접수한 상기 AP 실행 장치의 상기 AP 실행 장치 정보를 상기 클러스터에 속하는 다른 상기 AP 실행 장치에 송신하는, 정보 처리 시스템.
  12. 제11항에 있어서,
    상기 클러스터 관리 장치는, 어떤 상기 클러스터에 속하는 상기 AP 실행 장치에 있어서 생성되는 상기 AP 소프트웨어를 실행하는 프로세스인 AP 프로세스의 생존 확인을 상기 통신 네트워크를 통해 행하고, 하나의 상기 AP 실행 장치의 상기 AP 프로세스의 생존을 확인할 수 없게 되면, 당해 AP 실행 장치를 당해 클러스터로부터 이탈시킴과 함께, 당해 AP 실행 장치가 상기 클러스터로부터 이탈했다는 취지를 다른 상기 AP 실행 장치에 통지하는, 정보 처리 시스템.
  13. 제6항에 있어서,
    상기 클러스터 관리 장치는,
    유저가 조작하는 정보 처리 장치인 클라이언트 장치와 통신 가능하게 접속하고,
    상기 클라이언트 장치로부터 상기 AP 소프트웨어를 수신하여 기억하고,
    상기 AP 실행 장치로부터 보내져 오는 상기 AP 소프트웨어의 취득 요구에 따라 상기 AP 소프트웨어를 상기 AP 실행 장치에 송신하는, 정보 처리 시스템.
  14. 제13항에 있어서,
    상기 클러스터 관리 장치는, 상기 AP 소프트웨어의 버전 관리를 행하는 정보 처리 장치인 AP 관리 장치와 통신 가능하게 접속하고, 상기 AP 소프트웨어를 상기 AP 관리 장치로부터 취득하여 기억하는, 정보 처리 시스템.
  15. 제1항에 있어서,
    상기 복수의 AP 실행 장치의 각각에 있어서 이용 가능한 데이터를 나타내는 정보인 데이터 리스트를 관리하고,
    상기 제1 AP 실행 장치는,
    상기 AP 소프트웨어의 처리 블록의 순차 실행에 있어서 제1 상기 전송 처리 블록에 도달하면, 상기 데이터 리스트에 의거하여, 당해 제1 전송 처리 블록에 기술되어 있는, 상기 제2 거점에 있어서의 데이터를 지정하는 정보인 데이터 지정 정보에 대응하는 데이터를 이용 가능한 상기 AP 실행 장치를 상기 제2 AP 실행 장치로서 선출하고,
    연계 개시를 통지하는 메시지인 연계 개시 메시지를, 선출한 상기 제2 AP 실행 장치에 송신하고,
    상기 제2 AP 실행 장치는, 상기 연계 개시 메시지를 수신하면, 상기 제1 전송 처리 블록에 후속하는 처리 블록으로부터 순차 실행을 개시하는, 정보 처리 시스템.
  16. 제15항에 있어서,
    상기 AP 실행 장치의 각각은, 상기 AP 소프트웨어의 실행 시에 이용하는 데이터를 관리하는 데이터베이스와 통신 가능하게 접속하고,
    상기 AP 실행 장치가, 상기 데이터베이스에 액세스함으로써, 자신에게 디플로이된 상기 AP 소프트웨어에 기술되어 있는 상기 데이터 지정 정보에 대응하는 데이터를 취득 가능한지의 여부를 검증하고,
    취득 가능할 경우에 상기 데이터를 상기 데이터 리스트에 관리하는, 정보 처리 시스템.
  17. 제16항에 있어서,
    상기 AP 실행 장치의 각각과 통신 가능하게 접속되고, 상기 데이터 리스트를 분산 처리 방식으로 갱신 관리하는 복수의 정보 처리 장치를 포함하는, 정보 처리 시스템.
  18. 제16항에 있어서,
    상기 AP 실행 장치의 각각은, 각각이 상기 데이터베이스에 접속하기 위해 필요한 정보인 DB 접속 정보를 개별적으로 관리하는, 정보 처리 시스템.
  19. 복수의 거점의 각각에 마련되고, 어플리케이션의 기능을 실현하는 소프트웨어인 AP 소프트웨어를 실행하는 정보 처리 장치인 복수의 AP 실행 장치를 포함하고, 상기 AP 실행 장치는 통신 네트워크를 통해 서로 통신 가능하게 접속되어 구성되는 정보 처리 시스템의 제어 방법으로서,
    상기 AP 실행 장치의 각각이, 같은 처리 블록을 같은 순서로 실행하는 공통의 AP 소프트웨어를 기억하고,
    상기 AP 소프트웨어는, 제1 상기 거점의 제1 상기 AP 실행 장치에서 실행된 상기 처리 블록의 처리를, 제2 상기 거점의 제2 상기 AP 실행 장치에 연계하기 위한 처리를 실현하는 처리 블록인 전송 처리 블록을 포함하고,
    상기 제1 AP 실행 장치는, 상기 AP 소프트웨어의 처리 블록의 순차 실행에 있어서 제1 상기 전송 처리 블록에 도달하면, 연계 개시를 통지하는 메시지인 연계 개시 메시지를 상기 제2 AP 실행 장치에 송신하고,
    상기 제2 AP 실행 장치는, 상기 연계 개시 메시지를 수신하면, 상기 제1 전송 처리 블록에 후속하는 처리 블록으로부터 순차 실행을 개시하는, 정보 처리 시스템의 제어 방법.
  20. 제19항에 있어서,
    상기 복수의 AP 실행 장치의 각각에 있어서 이용 가능한 데이터를 나타내는 정보인 데이터 리스트를 관리하고,
    상기 제1 AP 실행 장치가,
    상기 AP 소프트웨어의 처리 블록의 순차 실행에 있어서 제1 상기 전송 처리 블록에 도달하면, 상기 데이터 리스트에 의거하여, 당해 제1 전송 처리 블록에 기술되어 있는, 상기 제2 거점에 있어서의 데이터를 지정하는 정보인 데이터 지정 정보에 대응하는 데이터를 이용 가능한 상기 AP 실행 장치를 상기 제2 AP 실행 장치로서 선출하고,
    연계 개시를 통지하는 메시지인 연계 개시 메시지를, 선출한 상기 제2 AP 실행 장치에 송신하고,
    상기 제2 AP 실행 장치가, 상기 연계 개시 메시지를 수신하면, 상기 제1 전송 처리 블록에 후속하는 처리 블록으로부터 순차 실행을 개시하는, 정보 처리 시스템의 제어 방법.
KR1020217007071A 2019-05-28 2020-02-26 정보 처리 시스템, 및 정보 처리 시스템의 제어 방법 KR102523389B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
JPJP-P-2019-099564 2019-05-28
JP2019099564 2019-05-28
JPJP-P-2019-165080 2019-09-11
JP2019165080A JP7189104B2 (ja) 2019-05-28 2019-09-11 情報処理システム、及び情報処理システムの制御方法
PCT/JP2020/007813 WO2020240954A1 (ja) 2019-05-28 2020-02-26 情報処理システム、及び情報処理システムの制御方法

Publications (2)

Publication Number Publication Date
KR20210041056A true KR20210041056A (ko) 2021-04-14
KR102523389B1 KR102523389B1 (ko) 2023-04-20

Family

ID=73648014

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020217007071A KR102523389B1 (ko) 2019-05-28 2020-02-26 정보 처리 시스템, 및 정보 처리 시스템의 제어 방법

Country Status (4)

Country Link
JP (1) JP7189104B2 (ko)
KR (1) KR102523389B1 (ko)
CN (1) CN112673353A (ko)
BR (1) BR112021004630A2 (ko)

Citations (8)

* Cited by examiner, † Cited by third party
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 (ja) * 2012-11-30 2014-06-12 Fujitsu Ltd 分散処理方法、情報処理装置、及びプログラム
US20140379100A1 (en) * 2013-06-25 2014-12-25 Fujitsu Limited Method for requesting control and information processing apparatus for same
JP2015505404A (ja) 2011-12-27 2015-02-19 マイクロソフト コーポレーション クラウド・エッジ・トポロジー
US9639544B1 (en) * 2013-10-28 2017-05-02 Pivotal Software, Inc. Table data persistence
US20170346690A1 (en) * 2016-05-27 2017-11-30 Intel Corporation Methods, systems and apparatus to improve cluster efficiency
JP2018092565A (ja) 2016-12-01 2018-06-14 エヌ・ティ・ティ・コミュニケーションズ株式会社 クラウド中継装置、クラウド接続処理方法、及びプログラム
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 (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3860385B2 (ja) * 2000-03-23 2006-12-20 日本電信電話株式会社 動的連携情報引継ぎ方法,連携プロセス制御装置およびそのプログラム記録媒体
JP3780880B2 (ja) * 2001-07-05 2006-05-31 ソニー株式会社 通信システム、サーバ装置、クライアント装置、連携処理提供方法、連携処理方法、プログラムおよび記録媒体
JP4383757B2 (ja) * 2003-02-28 2009-12-16 日本電信電話株式会社 アプリケーションプロセス管理方法、分散サーバシステム及びアプリケーションプロセス管理プログラム
JP4663525B2 (ja) * 2006-01-06 2011-04-06 株式会社日立製作所 情報処理方法、情報処理装置、及びプログラム
JP2008250928A (ja) * 2007-03-30 2008-10-16 Nec Corp 機器連携管理システム、連携管理方法、および連携管理プログラム
JP2010219630A (ja) * 2009-03-13 2010-09-30 Canon Inc ワークフロー実行システム、ワークフロー実行方法、及びプログラム
JP5544006B2 (ja) * 2010-02-18 2014-07-09 株式会社日立製作所 情報通信処理システム
CN103229522A (zh) * 2011-11-25 2013-07-31 松下电器产业株式会社 主机设备、协作服务管理系统以及协作服务管理方法
JP5626233B2 (ja) * 2012-02-15 2014-11-19 コニカミノルタ株式会社 情報処理システム、携帯情報端末およびプログラム
JP2014167685A (ja) 2013-02-28 2014-09-11 Kddi Corp データ処理システム、データ処理方法およびプログラム
JP5832481B2 (ja) 2013-06-12 2015-12-16 株式会社ソニー・コンピュータエンタテインメント 情報処理装置、情報処理システム、および情報処理方法
JP2016015580A (ja) * 2014-07-01 2016-01-28 株式会社リコー 連携処理システム、及び連携処理方法
WO2016174739A1 (ja) * 2015-04-28 2016-11-03 株式会社日立製作所 複合計算機システム、管理計算機、およびデータ連携管理方法
JP6665423B2 (ja) * 2015-05-14 2020-03-13 株式会社リコー 情報処理システム、情報処理装置、情報処理方法、および情報処理プログラム
US9684543B1 (en) * 2016-02-05 2017-06-20 Sas Institute Inc. Distributed data set storage, retrieval and analysis
CN108885563B (zh) * 2016-03-22 2021-09-14 三菱电机株式会社 信息处理系统、信息处理装置和信息处理方法
JP6826865B2 (ja) * 2016-11-07 2021-02-10 日本放送協会 端末装置及びプログラム
JP6235108B1 (ja) * 2016-11-29 2017-11-22 株式会社 ヴァル研究所 情報処理装置、アプリ連携方法およびコンピュータプログラム
JP6861058B2 (ja) * 2017-03-14 2021-04-21 日本放送協会 端末装置及びプログラム
JP6845477B2 (ja) * 2017-10-25 2021-03-17 株式会社 ヴァル研究所 情報処理装置およびコンピュータプログラム

Patent Citations (8)

* Cited by examiner, † Cited by third party
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
JP2015505404A (ja) 2011-12-27 2015-02-19 マイクロソフト コーポレーション クラウド・エッジ・トポロジー
JP2014109800A (ja) * 2012-11-30 2014-06-12 Fujitsu Ltd 分散処理方法、情報処理装置、及びプログラム
US20140379100A1 (en) * 2013-06-25 2014-12-25 Fujitsu Limited Method for requesting control and information processing apparatus for same
US9639544B1 (en) * 2013-10-28 2017-05-02 Pivotal Software, Inc. Table data persistence
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
JP2018092565A (ja) 2016-12-01 2018-06-14 エヌ・ティ・ティ・コミュニケーションズ株式会社 クラウド中継装置、クラウド接続処理方法、及びプログラム

Also Published As

Publication number Publication date
JP2020198068A (ja) 2020-12-10
BR112021004630A2 (pt) 2021-05-25
JP7189104B2 (ja) 2022-12-13
KR102523389B1 (ko) 2023-04-20
CN112673353A (zh) 2021-04-16

Similar Documents

Publication Publication Date Title
CN109889551B (zh) 一种智能硬件接入的物联网云平台的方法
CN108270855B (zh) 一种物联网平台接入设备的方法
CN105577780B (zh) 一种基于微服务的高校教学云平台
US8584081B2 (en) Server side application integration framework
CN102089984B (zh) 模块化转码流水线
US20130318061A1 (en) Sharing business data across networked applications
CN109684054A (zh) 信息处理方法及装置、电子设备及存储器
CN111813570A (zh) 一种电力物联网的事件驱动型消息交互方法
CN107193669A (zh) 基于混合云或大规模集群的维护接口的系统和设计方法
CN108198473B (zh) 一种基于云计算技术的虚拟实验系统
KR20140065764A (ko) 기능 확장이 가능한 협업 스크린 시스템 및 협업 방법
CN106685706A (zh) 一种基于Zookeeper的配置更新方法及系统
CN111651418B (zh) 一种文档内容下载方法、装置、计算机设备和存储介质
Schwan et al. Autoflow: Autonomic information flows for critical information systems
CN115022304B (zh) 基于rpa和ai实现ia的跨平台文件处理方法、装置和系统
CN101739603B (zh) 集中共享型的数字城管应用平台系统和实现方法
CN114221690A (zh) 用于云边协同系统的语义模型构建方法
CN114265703A (zh) 云服务器跨区域算力调度方法、系统及设备
CN102375894A (zh) 一种管理不同类型文件系统的方法
CN115248692A (zh) 一种支持多种深度学习框架模型云端部署的装置及方法
CN101001212B (zh) 多系统消息交互管控系统及方法
CN113556387A (zh) 边缘网关控制方法及系统、装置、电子设备、存储介质
KR20210041056A (ko) 정보 처리 시스템, 및 정보 처리 시스템의 제어 방법
CN115102999B (zh) DevOps系统、服务提供方法、存储介质和电子装置
WO2020240954A1 (ja) 情報処理システム、及び情報処理システムの制御方法

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right