JP7118726B2 - workflow engine framework - Google Patents
workflow engine framework Download PDFInfo
- Publication number
- JP7118726B2 JP7118726B2 JP2018087438A JP2018087438A JP7118726B2 JP 7118726 B2 JP7118726 B2 JP 7118726B2 JP 2018087438 A JP2018087438 A JP 2018087438A JP 2018087438 A JP2018087438 A JP 2018087438A JP 7118726 B2 JP7118726 B2 JP 7118726B2
- Authority
- JP
- Japan
- Prior art keywords
- engine
- workflow
- domain
- component
- data
- Prior art date
- Legal status (The legal status 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 status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
-
- 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/22—Microcontrol or microprogram arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Business, Economics & Management (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Entrepreneurship & Innovation (AREA)
- Data Mining & Analysis (AREA)
- Strategic Management (AREA)
- Human Resources & Organizations (AREA)
- General Engineering & Computer Science (AREA)
- Marketing (AREA)
- Medical Informatics (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Computing Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Economics (AREA)
- Evolutionary Computation (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Stored Programmes (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Description
本発明はワークフローおよびフレームワーク技術に関するものであって、具体的には、多様な業務ドメインまたは目的ドメインのワークフローを処理するために、動的エンジンコンポーネントの有機的な構成を通じて単一ドメイン適応型の、ひいてはクロスドメイン適応型のワークフロー実行プラットフォームを作ることができる、ワークフローエンジンフレームワークに関するものである。 TECHNICAL FIELD The present invention relates to workflow and framework technology, and more specifically, to process workflows of diverse business domains or objective domains, through organic composition of dynamic engine components, a single domain adaptive system. , and thus a workflow engine framework that can create a cross-domain adaptive workflow execution platform.
ワークフロー技術とは、文書、情報、タスクなどを一連の業務手続き規則による処理のために、あるユーザー(アプリケーション)から他のユーザーに伝達するビジネスプロセスの自動化技術を意味する。特にデータ基盤サービスワークフロー生成手続きは次のとおりである。まず、データソースとそのデータソース収集方法を決定する。収集されたデータの処理方法を決定して分析方法を決定する(例えば、機械学習、予測、知識推論などによる分析)。分析された結果をサービスするための方法を決定する。この該当ワークフローを実行するために必要なエンジンを構成し、エンジン間の連係方法を定義することによってワークフロー生成手続きが完了する。 Workflow technology means business process automation technology that transfers documents, information, tasks, etc. from one user (application) to another user for processing according to a set of business procedure rules. In particular, the data infrastructure service workflow generation procedure is as follows. First, determine the data sources and how the data sources are collected. Determining how to process the data collected to determine how to analyze it (e.g., analysis through machine learning, prediction, knowledge inference, etc.). Decide how to service the analyzed results. The workflow generation procedure is completed by configuring the engines necessary to execute this relevant workflow and defining how the engines will work together.
最近、多様な事物に人工知能を付与するいわゆる知能型事物インターネットが注目されている。特に、多数の異種事物インターネット領域を包括する知能型インターネットの応用(例えば、スマートシティ)のためには、異種の事物知能領域を統制および管理、制御できるシステムが必要である。また、多様な業務ドメイン(例えば、エネルギー、ヘルス、交通・教育・電力プラン卜など)を知能的に処理しなければならない問題が発生する可能性がある。一つの業務ドメイン内においても、データの発生とアクションが起きるデバイスから、データを処理し伝達、即刻的な分析、判断するエッジ(edge)と複雑な分析と応用が起きるクラウド(cloud)まで、多様な目的ドメインが存在し得る。また、業務ドメインや目的ドメイン内でも、空間の分類による空間ドメイン、時間の分類による時間ドメインが存在し得る。その他にデータ処理ドメイン、学習ドメイン、予測ドメイン、サービスドメインなど、多様な方法ドメインが存在し得る。したがって、このような複雑な多種の多階層ドメイン(以下、クロスドメイン)を効果的に統制し管理、制御するための一元化された方法およびシステムが必要である。 Recently, the so-called intelligent internet of things, which imparts artificial intelligence to various things, has attracted attention. In particular, for intelligent Internet applications (such as smart cities) that include a large number of heterogeneous Internet-of-things domains, a system capable of controlling, managing, and controlling heterogeneous intelligence-of-things domains is required. In addition, problems may occur that require intelligent processing of various business domains (eg, energy, health, transportation, education, power plants, etc.). Within a single business domain, there are various devices that generate and act on data, the edge that processes, transmits, analyzes, and judges data, and the cloud that performs complex analysis and applications. target domains can exist. Moreover, even within the business domain and the purpose domain, there may exist a spatial domain based on spatial classification and a temporal domain based on temporal classification. In addition, there may be various method domains such as data processing domain, learning domain, prediction domain, and service domain. Accordingly, there is a need for a centralized method and system for effectively governing, managing and controlling such complex multi-layered domains (hereafter referred to as cross-domains).
一方、事物インターネットを通じて収集されるビッグデータに含まれたインサイトを素早く抽出してビジネスとつなぎ合わせるために、事物インターネットデータからインサイトを抽出し分析して、迅速かつ正確な意志決定を支援するための多様な技術が開発されている。このためには、リアルタイムアナリティクスのためのストリーム処理技術とリアルタイム予測/分析のためのプラットフォーム技術の裏付けが必ず必要である。 On the other hand, in order to quickly extract insights contained in big data collected through the Internet of Things and connect them to business, we extract and analyze insights from Internet of Things data to support quick and accurate decision making. Various techniques have been developed for this purpose. This will definitely require the backing of stream processing technology for real-time analytics and platform technology for real-time prediction/analysis.
また、最近急浮上している機械学習技術をIoTビッグデータ分析に活用してワークフローを設計する必要性が大きくなりつつあり、また多様な目的と分野のIoTドメインが生成するにつれて、これらを有機的に統合してよりインサイトのある分析やサービスを可能にする、一元化されたプラットフォーム技術が必要となっている。しかし、従来のワークフロー技術では、デバイス、データ、ドメインにより異なる特性を有するIoTビッグデータと機械学習を結合するには限界がある。 In addition, there is a growing need to design workflows by utilizing machine learning technology, which has recently emerged rapidly, for IoT big data analysis. There is a need for a centralized platform technology that can be integrated into multiple systems to enable more insightful analysis and services. However, conventional workflow technology has limitations in combining IoT big data and machine learning, which have different characteristics depending on devices, data, and domains.
前述した限界と問題点の克服のために、エンジンコンポーネントの有機的な構成を通じて各ドメインの目的に合うワークフローを生成して実行することができ、容易に他のドメインに適用して他のドメインに適合した(ドメイン適応型の)ワークフローを生成し実行することができ、特にクロスドメインに対応するために統合的に制御および管理できる一元化されたシステムが必要である。 In order to overcome the limitations and problems mentioned above, it is possible to generate and execute a workflow that meets the purpose of each domain through the organic configuration of engine components, and can be easily applied to other domains. There is a need for a centralized system that can generate and execute adapted (domain-adaptive) workflows and that can be controlled and managed in an integrated manner, especially for cross-domain coverage.
したがって、本発明は動的エンジンコンポーネントの有機的な構成を通じて目的に合う、ドメイン適応型の、ひいてはクロスドメイン適応型のワークフロー実行プラットフォームを作るためのワークフローエンジンフレームワークを提案しようとする。 Accordingly, the present invention seeks to propose a workflow engine framework for creating a fit-for-purpose, domain-adaptive and even cross-domain-adaptive workflow execution platform through the organic composition of dynamic engine components.
前記課題を解決するための本発明の一側面によると、ユーザーによって定義されたワークフローの実行に必要なワークフロー属性明細コンポーネントとエンジンコンポーネントが含まれた資源を管理する資源管理部;属性明細コンポーネントを組み立て、ワークフローの実行に必要なエンジンコンポーネントを動的に組み合わせてワークフロー明細にしたがって必要なエンジンコンポーネントコンテナを構成してエンジンを生成するシステム構成部;ワークフロー属性明細に定義された方式により前記システム構成部によって生成される一つ以上のエンジンを駆動して実行を制御するシステム制御部を含む、ワークフローエンジンフレームワークが提供される。 According to one aspect of the present invention for solving the above problems, a resource manager for managing resources including a workflow attribute specification component and an engine component necessary for executing a workflow defined by a user; assembling an attribute specification component , a system component that dynamically combines engine components necessary for workflow execution and configures necessary engine component containers according to the workflow specification to generate an engine; A workflow engine framework is provided that includes a system controller that drives and controls the execution of one or more generated engines.
また、本発明の他の側面によると、前記ワークフローエンジンフレームワークが二以上の異なる単一ドメインにそれぞれ割り当てられ、これら単一ドメインワークフローエンジンフレームワークとネットワークに連結されて、ユーザーが定義したクロスドメインワークフローによりクロスドメインに含まれた各単一ドメインに必要なエンジンを配布する単一ドメインを決定するクロスドメイン融合システムが含まれる、クロスドメイン適応型ワークフローエンジンフレームワークが提供される。 According to another aspect of the present invention, the workflow engine frameworks are respectively assigned to two or more different single domains, and are networked with these single domain workflow engine frameworks to provide user-defined cross-domain workflows. A cross-domain adaptive workflow engine framework is provided that includes a cross-domain fusion system that determines a single domain that distributes the required engine to each single domain included in the cross-domain by the workflow.
エンジンコンポーネントの有機的な構成を通じて、各ドメインが解決しようとする分野と目的に合うワークフローを生成して実行することができ、容易に他のドメインに適用して他のドメインに適合したワークフローを生成して実行することができる。すなわち、多様な業務ドメインまたは目的ドメインで類似する問題の解決のための実行プラットフォームを容易に構成することができるように、エンジンコンポーネントを動的にリサイクルできるドメイン適応型ワークフローエンジンフレームワークを容易に構成することができる。また、クロスドメイン知識融合ブレインをさらに含むことによって、クロスドメイン適応型ワークフローエンジンフレームワークを構成することができる。ひいては、IoT、ビッグデータ、機械学習を結合して分析する大容量データのリアルタイム分析サービスにおいて、特定の問題の解決のために開発した機械学習モデルおよびビッグデータ分析モデルをコンポーネントを具現して管理することができる。 Through the organic composition of engine components, it is possible to generate and execute workflows that match the field and purpose that each domain tries to solve, and easily apply to other domains to generate workflows that are suitable for other domains. can be run as That is, easily configure a domain-adaptive workflow engine framework that can dynamically recycle engine components so that an execution platform for solving similar problems in various business domains or target domains can be easily configured. can do. Also, by further including a cross-domain knowledge fusion brain, a cross-domain adaptive workflow engine framework can be constructed. In addition, in the real-time analysis service for large amounts of data that combines and analyzes IoT, big data, and machine learning, implement and manage the machine learning model and big data analysis model developed to solve specific problems as components. be able to.
多様な人工知能サービスやアプリケーションが要求される環境で応用別に個別のソリューションを開発せず、追加に必要なコンポーネントを開発して追加に搭載するか既開発されて搭載されたコンポーネントをリサイクルすることによって、新しいワークフローを満足するワークフロー実行エンジンセットを構成/実行できるフレームワークを具現することができる。 In an environment where various artificial intelligence services and applications are required, by developing and installing additional necessary components instead of developing individual solutions for each application, or by recycling already developed and installed components , a framework that can construct/execute a workflow execution engine set that satisfies a new workflow.
図1は、本発明のワークフローエンジンフレームワークの一実施形態を示す構成図である。本発明のワークフローエンジンフレームワーク10は基本として、-実行する作業(ワークフロー)の構造と明細を作成するシステム定義編集機70、-ユーザーがシステム定義編集機70を通じて作成するワークフロー明細(=エンジン明細。すなわち、ワークフローを構成する一つ以上のエンジンで構成された明細)の各エンジンコンポーネントを定義するための属性に関連した属性明細コンポーネントとワークフローの実行を遂行するエンジンを構成するエンジン構成品と言えるエンジンコンポーネント、そして、既に作成されたワークフロー明細インスタンスなどの資源を管理する資源管理部20、-ワークフロー属性明細を組み立て、ワークフローの実行に必要なエンジンコンポーネントを動的に組み合わせて構成し、ワークフローを遂行するエンジンインスタンス32(以下、「エンジン」と混用される)を構成するシステム構成部30、-前記システム構成部30により生成されたエンジン(インスタンス)32、-資源管理部20、システム構成部30、エンジン32の実行を制御するシステム制御部40を含む。
FIG. 1 is a configuration diagram showing one embodiment of the workflow engine framework of the present invention. The
ワークフローエンジンフレームワーク10において、ユーザーは所望するシステムを作るために一つ以上のエンジンで構成されるワークフローを定義する。ここで、ワークフローは一つ以上のエンジンに対する定義で構成されるが、この「エンジンに対する定義」は、エンジンコンポーネントを入れるためのエンジンコンポーネントコンテナとエンジンコンポーネントコンテナに入るエンジンコンポーネントの組み合わせを意味する。エンジンコンポーネントコンテナは一つ以上の入力器(reader)コンポーネント、出力器(writer)コンポーネント、実行器(runner)コンポーネント、処理器(operator)コンポーネント、制御器(controller)コンポーネントの組み合わせで作ることができる。これら一つ以上の入力器コンポーネント、出力器コンポーネント、実行器コンポーネント、処理器コンポーネント、制御器コンポーネントは、それぞれコンポーネントの性質を決定する属性を定義するための属性明細コンポーネントと、コンポーネントの実際の具現体に該当する実行コンポーネントの組み合わせで作られる。一例として、実行コンポーネントは、Java、C++などのクラスに該当するものであり、属性明細コンポーネントはクラスの生成子に含まれ得る生成子パラメーターまたは生成子パラメーターが入れられるクラスに該当する。このような方式で生成された実行システムの定義に該当する一つ以上のエンジンに対するワークフローを定義することによって動的に実行エンジンを構成して、多様な目的の業務ドメインに必要なワークフローシステムを作ることができる。
In the
図2は、図1のシステムの具体的な構成および追加可能な構成要素を示している。 FIG. 2 shows a specific configuration of the system of FIG. 1 and possible additional components.
前記システム構成部30により動的に生成されたエンジンコンポーネントの組み合わせで構成されたエンジン32がエンジンインスタンス(結果として完成されて実行されたエンジン)の形態で保存される実行インスタンス部50;資源管理部20で管理される属性明細コンポーネント62とエンジンコンポーネント64が物理的にまたは仮想的に保存される空間であるコンポーネント部60;そして、システム定義編集機70からワークフロー明細の入力を受けてシステム構成部30に伝達する役割をするフロントエンド77がさらに含まれ得る。
An
フロントエンド77はクライアントから要請を受けて処理をするためのプロセスの実行を媒介する役割を遂行し、ユーザー管理や保存所管理などの多様な要請に対応する役割を遂行する。フロントエンド77の例えば一般的なアプリケーションサーバー、ウェブ基盤のREST APIを提供するウェブアプリケーションサーバー、または一般的なソケット通信基盤の受信者(listener)モジュールを含んだシステムであり得る。場合によっては、フロントエンド77はシステム定義編集機70またはフレームワーク10を構成しているバックエンドと異なるネットワーク上で実行されることも可能である。
The
図1、図2のワークフローエンジンフレームワーク10の本格的な説明に先立って、フレームワーク10で実行システムを駆動するための一連の作業明細を定義するワークフローを作成し、これをフレームワーク10で駆動するように指示するためにフロントエンド77に要請する役割を遂行するシステム定義編集機70について先に説明する。
Prior to a full-fledged explanation of the
システム定義編集機70は所望の業務に対する細部ドメインを定義し、各ドメインに対して処理すべき作業の構造(ワークフロー構造)を定義し、この構造に合うようにエンジンコンポーネントを選定してワークフローの実行流れを定義し、各エンジンコンポーネントの具体的な明細を作成する機能を遂行する。このために、フレームワーク(特に、資源管理部20)から属性明細コンポーネントとエンジンコンポーネントを照会することができる。
The
ここで「作業の構造」は、例えば、特定の事物インターネットプラットフォームからのデータ収集、データ処理、学習などの過程であり、これらを順次処理することはワークフローの実行流れに該当し得る。「コンポーネントの明細」とは、データをいずれから持ってきてどのような処理過程を経、いずれに送り出すかに対する作業を遂行するために、いずれのデバイスから収集するのか、連結方法は何であるか、データを受けてメモリーに置くのか保存所に入れるのか、メモリー情報は何であるか、保存所の位置はどこであるのかなど、各要素コンポーネントに対する具体的な定義事項を意味する。 Here, the 'work structure' is, for example, the process of data collection, data processing, learning, etc. from a specific Internet of Things platform, and the sequential processing of these may correspond to the workflow execution flow. 'Component details' refers to which device the data is collected from, what the connection method is, in order to perform the work of which data is brought from, what processing process is passed, and where it is sent. It means specific definition items for each element component, such as whether data is received and stored in memory or stored, what is the memory information, and where is the location of the storage.
ユーザー(データ科学者、モデル開発者、ビジネス開発者など)は、システム定義編集機70を通じて、ワークフローを構成するエンジンコンポーネント64とそのエンジンコンポーネントの特性を決定するパラメーターを定義できる属性明細コンポーネント62を規約に沿って定義し、またコンポーネントと属性明細のペアを定義し、編集することができる。
A user (data scientist, model developer, business developer, etc.), through the
図3は、システム定義編集機70の構成を説明するためのGUI画面71の例示図である。このGUI画面71を説明することによって、システム定義編集機70の構成および作用に対する説明を代替する。
FIG. 3 is an exemplary diagram of a
GUI画面71には、機能メニュー72、エンジン類型選択部73、コンポーネント選択部74、コンポーネント属性照会/編集部75、ワークフローインスタンス保存/照会部76が含まれる。
The
機能メニュー72は、システム定義編集機70の各種機能を選択するメニューであって、例えばNew(ワークフロー新規作成)、Open(保存されたワークフローの読み込み)、Save(ワークフロー保存)、Run(ワークフローの実行)、Result(実行結果を見る)、Help(ヘルプ)等の機能を選択するメニューで構成され得る。
The
エンジン類型選択部73は、各種のエンジンの類型を提示し、ユーザーがこれらのうち必要なものを選択することができるようにする。エンジンの類型としては、例えば、リアルタイムストリーム処理エンジン、配置分析エンジン、要求型(on-demand)データ処理エンジン、評価エンジン、配置データ積載エンジン、ストリーム機械学習予測エンジン、要求型(on-demand)融合サービングエンジンなどがある。 The engine type selection unit 73 presents various types of engines so that the user can select a desired engine type. Engine types include, for example, real-time stream processing engine, deployment analysis engine, on-demand data processing engine, evaluation engine, deployment data loading engine, stream machine learning prediction engine, on-demand fusion Serving engine, etc.
コンポーネント選択部74は、ユーザーがコンポーネントタイプと各タイプ別エンジンコンポーネントを選択することができるように、コンポーネントタイプ別に多様なエンジンコンポーネント目録を提供する。下記の表1はコンポーネント選択部74で提示されるコンポーネントタイプとエンジンコンポーネント目録の例示である。
The
コンポーネント属性選択/編集部75は、コンポーネント選択部74で選択されたエンジンコンポーネントの属性(Properties)が提示され、ユーザーは属性を照会してこれを選択および編集することができる。
The component attribute selection/
ワークフローインスタンス選択部76は、既製作されたワークフローが保存された目録が表示される。これらのうちリサイクルを所望するワークフローを選択して再編集をするか、そのままフレームワーク10に実行要請をすることができる。リサイクルの単位はワークフロー全体であってもよく、またはワークフローに含まれた単一エンジン別に再活用して編集や実行に活用してもよい。
The workflow
このようなシステム定義編集機70でワークフロー明細ファイルが作成されると、これは図1に示したフレームワーク10のシステム構成部30に提出される。このとき、フロントエンド77がワークフロー明細の入力を受けてシステム構成部30に伝達する役割をすることができる。
When a workflow specification file is created by the
再び図1と図2に参照すると、フレームワーク10の資源管理部20はワークフローの実行に必要なコンポーネントを管理する機能を遂行する。資源管理部20は、具体的には図2に示したように、-ワークフローインスタンスのコンポーネント特性または属性を決定する属性明細が含まれた属性明細コンポーネント62とその目録を管理(アップデートを含む)する属性明細コンポーネント管理部22、-実行のためのコンポーネント(エンジンコンポーネント)とその目録を管理(アップデートを含む)するエンジンコンポーネント管理部24を含む。
Referring again to FIGS. 1 and 2,
また、既に作成されて保存されたワークフロー明細インスタンスを管理するワークフロー明細インスタンス管理部26をさらに含むことができる。このワークフロー明細インスタンス管理部26は、システム定義編集機70の要請により(例えば、図3のワークフローインスタンス選択部76を通じて)、ワークフロー明細インスタンスを後で活用できるように保管および管理する。
In addition, it can further include a workflow
また、図1でシステム構成部30は、作成されたワークフローの実行に必要なコンポーネントを生成する機能を遂行する。システム構成部30はフロントエンド77から渡されたワークフロースペック(明細)により必要なエンジンコンポーネントコンテナ32を構成してエンジンインスタンスを生成する。
Also, in FIG. 1, the
図2を参照して詳察すると、システム構成部30は、-システム定義編集機70から受信した実行プラットフォーム構成ワークフロー明細を属性明細コンポーネントにバインディングして一連の属性明細コンポーネントを生成するワークフロー属性明細組立部34、-組み立てた属性明細コンポーネント62から、定義されたエンジンコンポーネント情報を抽出して属性明細コンポーネント62とエンジンコンポーネント64をバインディングする過程を通じて、一連のエンジンコンポーネントを構成してワークフロー実行プラットフォームを構成するワークフロー構成部36を含む。
With particular reference to FIG. 2, the
ワークフロー属性明細組立部34は、実行プラットフォームを構成するためのワークフロー明細を属性明細コンポーネント62にバインディングして一連の属性明細コンポーネントインスタンスを生成する。ワークフロー属性明細組立部34により生成される属性明細コンポーネント62の例えば、GoogleのProtobufメッセージ客体、ScalaのCase Class、JavaのProperty客体などが挙げられる。
The workflow
ワークフロー構成部36は、ワークフローを構成するエンジンコンポーネント64とこのエンジンコンポーネント64の特性を決定するパラメーターを定義した属性明細コンポーネント62をバインディングし、バインディング過程を通じて生成したエンジンコンポーネントのインスタンスをエンジンコンテナにバインディングすることによって、ワークフローを実行するための一連のエンジンインスタンスが含まれるワークフロー実行インスタンス部50を動的に構成する。ワークフロー実行インスタンス部50には、ワークフロー構成部36により動的に生成された一つ以上のエンジン32が作られて実行される。一つのワークフローを実行するために生成されたこれらのエンジン32は、一つの独立したプログラムパッケージとして同じコンピューティングマシンまたはネットワークに連結されたコンピューティングマシン上に配布されて実行されるか、仮想マシン単位でパッケージングされて異なる物理的コンピューティングマシンに配布され得る。
The
図1と図2のシステム制御部40は、前記システム構成部30が生成したエンジンインスタンス32を処理手続きに合うように駆動し、また駆動されたエンジンインスタンス32を終了させる役割を遂行するなど、本発明のフレームワークの核心役割を遂行するモジュールである。また、ワークフロー属性明細に定義された方式によりワークフロー実行インスタンス部50内に作られる一つ以上のエンジン32を駆動して実行を制御する。換言すると、システム制御部40がワークフロー実行インスタンス部50にワークフローの実行要請をすると、ワークフローが実行される。これによって、所望するいかなるドメインに対してもユーザーによって作成されたワークフローが達成しようとする目的を達成することができる。
The
例えばシステム制御部40は、多数の異なる類型をデータ出発地(source)と終着地(destination)とする一つ以上のエンジン32が、互いにパイプライン方式で実行されるように制御することができる。または多数の異なる類型をデータ出発地と終着地とする一つ以上のエンジンが、同時に実行されるように制御することができる。多様な類型のエンジン構成については詳細に後述する。
For example, the
図4は、システム定義編集機70で作成されたワークフロー明細からエンジン32を構成する手続きを図示する。
FIG. 4 illustrates the procedure for configuring the
まず、システム構成部30のワークフロー構成部36は、ワークフロー明細の入力を受けて(340)、これから、エンジンを構成するエンジンコンポーネントに対する属性明細が入れられる一連の属性明細コンポーネントインスタンスを生成する(342)。この時、使用される属性明細コンポーネント62は、GoogleのProtobufメッセージやScalaのCase Class、その他、プログラム言語上で値を入れることができる「Class」であり得る。
First, the
生成した属性明細コンポーネントインスタンスをエンジンコンポーネント64の生成子パラメーターと指定してエンジンコンポーネントインスタンスを生成する(344)。
The generated attribute specification component instance is designated as the generator parameter of the
エンジンを構成する制御器、入力器、実行器、出力器、単位処理器を含むエンジンインスタンスが生成されると、これらをエンジンコンポーネントコンテナインスタンス生成子パラメータとして、エンジンコンポーネントコンテナ31に動的バインディングしてエンジンインスタンスを生成する過程(346)を通じてエンジンインスタンスを生成する。ワークフロー上のすべてのエンジンの定義に対してエンジンインスタンス32が生成され、生成されたエンジンインスタンスはワークフロー実行インスタンス部50で実行及び管理される。
When an engine instance including a controller, an input device, an executor, an output device, and a unit processor that constitute the engine is generated, these are dynamically bound to the engine component container 31 as engine component container instance generator parameters. An engine instance is created through the process of creating an engine instance (346). An
このような図4の手続きでもって、ワークフロー実行インスタンスを動的に構成する。ここで一つのエンジンは仮想マシンの形態で定義され構成され得る。 A workflow execution instance is dynamically configured with such a procedure of FIG. Here, one engine can be defined and configured in the form of a virtual machine.
図5~図10は図1で言及したワークフロー構成部36により構成されるワークフロー実行インスタンスの例示として、多様なエンジン32構成の方式を図示する。
FIGS. 5-10 illustrate
図5に示した基本的なエンジン32は、一つ以上のデータ出発地(source)からデータを持ってくる入力器(reader)322、内部で処理したデータを一つ以上のデータ終着地に出力する一つ以上の出力器(writer)324、入力したデータを処理するための別途の実行プログラムまたはプラットフォームを実行したりセッションを管理する実行器(runner)326、このようなデータを入力器を通じて入力して実行器上で処理し、これを出力するための一連の制御を担当する制御器(controller)328で構成される。
The
前記コントローラ(制御器)328は、前記入力器322、出力器324、実行器326、および下記の単位処理器323を利用した一連の処理過程を制御する機能を遂行する。入力器322にデータソース(出発地)からデータを読み込むとの入力要請をし、実行器326に入力器を通じて読み込んだデータを処理フレームワークを駆動して処理して出力器に送るとの処理要請をし、出力器324に処理完了したデータをデータ終着地に書き込ませるとの出力要請をする。
The
エンジン32の入力器322は、インメモリーバッファーやキャッシュ、ファイルシステム、メッセージングシステム、データベース、ネットワークドライバーのうちいずれか一つのタイプのデータ保存所(図示しない)からデータを読み込む機能を遂行する。同様に、出力器324はインメモリーバッファーやキャッシュ、ファイルシステム、メッセージングシステム、データベース、ネットワークドライバーのうちいずれか一つのタイプのデータ保存所(図示しない)にデータを書き込む機能を遂行する。単位処理器323は、データを受けて加工して送りだす機能を遂行する。例えば、データマイニングで言及している精製/統合/縮小/変換方法に含まれた多様なデータ処理機能の具現体であり得る。実行器326はデータを処理するために必要なすべてのプログラムや外部プラットフォーム/フレームワークであり得、ビッグデータ処理のためのSpark、ディープランニング分析のためのCaffe、Tensorflwのようなディープランニングプラットフォーム、Jenaのような知識処理エンジンのうち一つと連動したり、これを実行するためのコネクターや制御器、セッション管理器などであり得る。
Input 322 of
一方、制御器328は、図5、6のように、入力器322、一つ以上の単位処理器323a~c、出力器324の順でノードが構成される場合に、データを順次パイプライニングして次のノードに伝達する方式で実行するように制御する順次処理方式、それぞれのノードが同時に実行されるようにする同時処理方式、この二つを結合した同時/順次処理方式などを利用して制御することができる。
On the other hand, as shown in FIGS. 5 and 6, the
図6は、図5の基本的なエンジン32を構成する方式のうち、入力されたデータを制御器328により処理する一連の過程を、一つ以上の連続した単位処理器(unit operator)323a-cを利用して順次パイプライン方式でデータ処理をして、出力器324まで伝達するように構成されたエンジンを図示する。制御器328は、入力器322にデータ出発地からデータを読み込むとの入力要請をし、実行器326にデータ処理のためのフレームワークを駆動して入力器を通じて読み込んだデータを処理するように処理器実行要請をし、各単位処理器323a-cにパイプライン処理実行要請をし、出力器324に処理完了したデータをデータ終着地に書き込ませるとの出力要請をする。図6の構成方法によると、多様な単位処理器を組み合わせて活用して多様なドメインの目的に合う処理を容易に遂行できる。単位処理器323a-cは、一般的なデータマイニングの技法に該当する、精製、縮小、統合、変換のための方法の具現体であり得る。
FIG. 6 illustrates a series of processes for processing input data by a
図7は、図6に例示したデータ処理エンジンの具体的な実施形態を示す。データを処理するためのSparkフレームワークを実行し、ファイルやJDBC、Kafkaなどからデータを読み込む入力器(Reader)を通じてデータを読み込んで特定のコラムを削除(remove)する単位処理器(operator)と、併合(concatenation)および欠測値インピュテーション(imputation)単位処理器、正規化(scaling)単位処理器、精製(filter)単位処理器、ピボット(pivot)単位処理器を通じてファイル、JDBC、Kafkaなどに出力する出力器(writer)を含むデータ処理エンジンを構成することができる。 FIG. 7 shows a specific embodiment of the data processing engine illustrated in FIG. A unit processor that executes the Spark framework for processing data, reads data through a reader that reads data from a file, JDBC, Kafka, etc., and removes a specific column; Through concatenation and missing value imputation unit processors, scaling unit processors, filter unit processors, pivot unit processors to files, JDBC, Kafka, etc. A data processing engine can be configured that includes a writer for output.
図8は、図6の制御器328が単位処理器323a~cを駆動する他の方式のエンジンであって、入力器322からデータを受けて一連の単位処理器が順次パイプライニングによるデータを処理する方式と共に、一つ以上の単位処理器が駆動されて同時処理を実行するように制御する方式のエンジン構成を図示する。
FIG. 8 shows another type of engine in which the
以上で説明した多様な構成のエンジン32の他の実施形態として、実行器326を、CaffeまたはTensorflowのようなディープランニングフレームワーク、SparkまたはHadoop MapReduceのようなビッグデータ処理フレームワーク、RまたはPythonのような分析フレームワークなどの多様な処理フレームワークやソフトウェアプログラムと連動するようにまたはこれらを含むように構成することができる。
Other embodiments of the various configurations of
さらに他の実施形態として、前記説明したエンジン32を、同一システム内の多様なデータ経路をデータ出発地および終着地として使用する入力器と出力器を搭載するように構成することができる。すなわち、インメモリーバッファー/キャッシュ、ファイルシステム、メッセージングシステム、データベース、ネットワークなどの多様な論理的ドライバー概念のソース(同一システムに含まれる)をデータ出発地および終着地と定義し、これらからデータの入力を受け、これらにデータを出力するように入力器と出力器を構成してエンジンを構成することができる。
In yet another embodiment, the
さらに他の実施形態として、前記説明したエンジン32を、異なるシステムまたはネットワークに存在するデータ経路をそれぞれデータ出発地と終着地として使用するエンジンを構成することができる。このために、入力器と出力器に対する設定に、ネットワークアドレス情報やホスト情報、遠隔ドライバー情報を含ませることができる。異なるデータ出発地と終着地を入力器と出力器に別個で使うことによって、エンジンをデータ出発地と終着地間でのストリーム処理エンジンやデータ経路上のフィルターのように活用できるのである。
In yet another embodiment, the
図9は、多数のワークフロー実行エンジン32a~cが構成される場合に、一つのエンジンの出力器から出力されるデータの終着地が他のエンジンの入力器のデータ出発地にパイプライン方式で伝達されるようにデータ伝達経路338が使用される実施形態を図示する。ここでデータ伝達経路338は例えばKafkaであり得る。図9のような構成を利用することによって、複数の異なる用途のワークフロー処理をするエンジン32a~cが協力して複雑なワークフローを実行することが可能である。
FIG. 9 shows that when multiple
また、図9において、一つ以上のエンジン32a~cは互いに異なる物理的環境(例えば、ネットワーク、クラスターなど)に置かれ得、異なる種類の実行器で構成することが可能である。例えば、最初のエンジン32aはデータを処理する実行器を連動し、二番目のエンジン32bはディープランニングフレームワークを連動するという場合、前記データ伝達経路338により異なる環境で複雑な問題を解決するための一つのワークフローを実行することが可能である。この時、それぞれのエンジンは、同時実行、一つずつ順次的実行、または特定の時点による個別的実行のいずれも可能である。
Also, in FIG. 9, one or more of the
図10は、一つ以上のエンジン32a~cが異なる類型のデータ伝達経路(例えば、ファイルシステム伝達経路340とネットワークストリーム伝達経路342)をデータ出発地および終着地別にパイプライニング処理する方式でワークフローの実行システムを構成した例を図示する。この場合、各エンジン内の入力器と出力器は複数で構成される。ここでファイルシステム伝達経路340は、バッチ伝達経路を意味し、ネットワークストリーム伝達経路342はリアルタイム伝達経路を意味する。図10の方式によって、リアルタイム処理とバッチ処理が同時に可能なラムダアーキテクチャーのような構造のワークフローシステムを構成することができる。
FIG. 10 illustrates a workflow in which at least one
以上で説明した本発明のフレームワークの構成および作用に対する理解を助けるために、具体的なワークフローサービスシナリオを紹介する。 A specific workflow service scenario is introduced to aid understanding of the structure and operation of the framework of the present invention described above.
図11は、IoTおよび人工知能基盤の照度/温度制御ワークフローサービスシナリオの説明図である。ワークフローエンジンフレームワーク10は、建物内の温度センサ81からの温度センシング値を受信して、フレームワーク10内に生成されたエンジンを通じて所定のワークフローを実行してスマート電球82を制御して最適照度の調節を遂行し、スマートシステム冷暖房機83を制御して最適温度の調節を遂行する。
FIG. 11 is an explanatory diagram of an IoT and artificial intelligence-based illuminance/temperature control workflow service scenario. The
「80」は、温度センサ81から流入するデータを入力として、予測モデルによって未来、例えば今後1時間後の温度の変化を予測し、予測温度に適合した照度の設定とエアコン温度の制御設定値を推論して、これをスマート電球82の照度調節とスマートシステム冷暖房機83の温度設定値として伝送する照度および温度制御人工知能サービスを示している。
"80" uses the data from the
図12は、ディープランニング基盤の交通速度モニタリングサービスシナリオの説明図である。本発明のワークフローエンジンフレームワーク10は、特定の地域の交通現場に構築されている交通速度センサ(シミュレーター)84から速度情報の伝送を受けて、フレームワーク10内に生成されたエンジンを通じて所定のワークフローを実行して実行データを該当地域に構築されている交通速度予測知能サービス85に提供して、運行中の車両のダッシュボード87またはスマートフォンの画面88を通じてモニタリングするようにすることができる。車両87またはスマートフォン88を通じてモニタリングされる内容は、「86」のように例えば特定の地域の地図に表示される交通速度情報である。
FIG. 12 is an explanatory diagram of a deep learning-based traffic speed monitoring service scenario. The
図13は図11のワークフローエンジンフレームワーク10の内部構成を説明する。ワークフローエンジンフレームワーク10で生成されたエンジンにインヂェスチャン(Ingestion)/データ/予測エンジン52とサービングエンジン53が含まれている。
FIG. 13 explains the internal configuration of the
インヂェスチャン/データ/予測エンジン52の構成要素は次のとおりである。
522:ウェブサービスポートを開いて入ってくるデータを読み込むストリーム入力器
338:ストリームデータを読み込んで一定の個数になると入力器522、オペレーター523a~f、出力器524を順次処理するようにするコントローラ(制御器)
523a:データのうち温度値が位置したコラムを抽出するオペレーター(処理器)
523b:特定値の範囲に値を正規化するオペレーター
523c:コラムを列に、または列をコラムに変換するオペレーター
523d:伝達された値を指定された機械学習モデルを利用して予測/判断するオペレーター
523e:逆正規化のために特定値の範囲に値を還元するオペレーター
523f:予測結果で生成された複数の値のうちラベル値が含まれた特定のコラムを抽出するオペレーター
524:最終値をストリームエンジン(例えば、Kafka)で書き込む出力器
526:オペレーターが実行され得るようにする環境を提供する実行器
サービングエンジン53の構成要素は次のとおりである。
5 3 2 :ストリームエンジンから必要な時ごとに値を読み込む入力器
538:Rest Runner536で実行中のウェブサーバー上の特定のウェブポートを通じて要請がきた時に入力器342を通じてインヂェスチャン(Ingestion)/データ/予測エンジン52の処理結果値を読み込んでデータベースを参照して最適値を検索して応答するように、一連の流れを制御するコントローラ
The components of the ingestion/data/
522: A stream input device that opens a web service port and reads incoming data 338: A controller that sequentially processes the
523a: An operator (processor) that extracts the column in which the temperature value is located in the data
523b: An operator that normalizes values to a specified
532: An input device that reads values from the stream engine whenever necessary 538: Ingestion/data through an
温度センサ81の温度センシング値がREST信号でインヂェスチャン/データ/予測エンジン52に入力され、システム定義編集機70を通じて設計された多数の処理器を経て処理され、出力された予測結果値は保存所から読み込まれてサービングエンジン53に伝達されて温度センサ81の温度センシング値に応じてスマート電球82が制御されて自動照度調節をするようになる。
The temperature sensing value of the
図14は、クライアントやユーザーに対するサービスを提供するエンジンであって、知能サービスを提供するためのサービングエンジンの構成例示を示している。入力器322、多数のパイプライン処理器323a~c、出力器324、実行器326、制御器328の構成要素は、図8で説明された内容と類似している。ただし、図14のサービングエンジンは、図11および図13のワークフローサービスにおけるサービスの実行をサービスする機能のために構成される。図14に各コンポーネントと連動する外部システム、Spark、Tensoflow、Jena(time)、REST Server、Jena(space)、Jena(domain-specific)が表示されている。
FIG. 14 shows an exemplary configuration of a serving engine for providing intelligent services, which is an engine for providing services to clients and users. The components of
サービングエンジンの制御器は、Sparkのような実行器で構成されたエンジンから処理したデータを読み込むかテンソルフローのようなディープランニングフレームワークを実行器で構成したエンジンから処理したデータを読み込む入力器と、その値を利用してオントロジー基盤推論を遂行する処理器と、その結果をRESTインターフェースを通じてサービスする実行器でエンジンを構成することによって、知能的サービスを提供することができる。 The controller of the serving engine is an input device that reads processed data from an engine configured with an executor such as Spark or an engine configured with a deep running framework such as tensorflow. , and an engine that performs ontology-based inference using its values and an executor that serves the result through a REST interface, thereby providing intelligent services.
図15は図12のワークフローエンジンフレームワーク10の内部構成を説明する。ワークフローエンジンフレームワーク10で生成されたエンジンに、1382個のLinkの交通センサ84から5分単位で時間/速度/TRVがリアルタイムで伝送されると、これを読み込んでTensorflow RNN動作のためのLink別24時間シリーズ(time series)データを前処理し伝送するデータエンジン54と、Tensorflow RNN動作のためのLink別24 time seriesを受信して15分後の予測値を出力する予測エンジン55が含まれている。
FIG. 15 explains the internal configuration of the
データエンジン54には、図5~8と類似するように、入力器542、制御器548、実行器546、処理器543a~fが含まれる。予測エンジン55の場合にも図5~8と類似するように入力器552と制御器558が含まれるが、実行器の代わりに、RNN(循環神経網)基盤の予測を遂行するテンソルフロー(Tensorflow)555が含まれる。
図16は、以上で説明した多数の単一ドメイン適応型ワークフローエンジンフレームワーク10をネットワークを通じて協力的に連結して、クロスドメイン適応型のワークフローエンジンフレームワークシステムを動的構成するための方法を図示する。図1のワークフロー構成の対象がクロスドメインに該当する場合に、一つ以上の単一ドメイン適応型ワークフローエンジンフレームワーク10を総括的に管理して制御するためのクロスドメイン融合システム10’をさらに含み、クロスドメイン適応型ワークフローエンジンフレームワークを具現することができる。
FIG. 16 illustrates a method for cooperatively linking multiple single-domain adaptive
クロスドメイン融合システム10’は基本として、図1または図2の単一ドメインワークフローエンジンフレームワーク10と類似する構成および機能を有し、多様なドメインを統合して階層化する役割をすることによって、クロスドメインワークフローの実行に関連する資源を管理し、各ドメインにクロスドメインワークフローの一部をワークフローとして割り当て、これを各ドメインのフレームワーク上で実行させるシステムである。したがって、クロスドメイン融合システム10’は、クロスドメイン資源管理部20’、クロスドメインシステム構成部30’、クロスドメインシステム制御部40’を含む。
The cross-domain fusion system 10' basically has a configuration and functions similar to the single domain
前述した概念のシステム定義編集機70’を利用してユーザーがワークフローを定義して、データ収集はいずれのセンサーから取得するのか、モデルはいずれを選択するのか、エンジンを生成して適切なところに配布することなどの要請が入れられたワークフロー明細を作成すると、クロスドメイン融合システム10’はシステム定義編集機70’で定義されたワークフローにより、該当するドメインに必要なエンジンを配布するドメインを決定する。この時、エンジン配布決定の基準は例えば、特定エンジンの使用がいずれのドメインに最適であるか、このエンジンの実行のための構成品が該当ドメインに存在するのか、ネットワークの負荷、性能、ネットワーク内の距離などを考慮する。 Using the system definition editor 70' of the concept described above, the user defines the workflow, which sensor to collect data from, which model to select, and the engine is generated and placed in an appropriate place. When a workflow specification containing a request for distribution is created, the cross-domain fusion system 10' determines a domain to distribute the engine required for the relevant domain according to the workflow defined by the system definition editor 70'. . At this time, the criteria for determining engine distribution are, for example, which domain is most suitable for using a particular engine, whether components for executing this engine exist in the relevant domain, network load, performance, network Consider the distance between
クロスドメイン資源管理部20’は、多数の単一ドメインワークフローエンジンフレームワーク10(図1または図2参照)の資源管理部20から周期的にワークフロー資源の報告を受け、これらを更新して管理することを遂行する。例えば、ワークフロー資源は、ワークフローの実行のためのコンポーネント資源、ネットワーク連結情報、ハードウェア資源情報、仮想マシンの仕様情報、組織の構成情報、組織の使用可能デバイス情報、使用可能状態のうち一つ以上であり得る。また、クロスドメイン資源管理部20’は、各ドメインから受けた資源情報を通じて使用できるコンポーネントとハードウェア、ネットワーク情報、ドメイン内のデバイス情報などを周期的に更新して維持する。資源管理部20’が管理する資源は例えば、各ドメイン別エンジンコンポーネント目録、費用算定のための資料、ドメイン間の信頼度などである。
The cross-domain resource manager 20' periodically receives workflow resource reports from the
クロスドメインシステム構成部30’は、システム定義編集機70’から受けたクロスドメインワークフローインスタンス明細を処理するために、クロスドメイン資源管理部20’から使用可能な資源がある位置と連結方法などを参照して、一つのクロスドメインワークフローインスタンス明細を多数の単一ドメインワークフロー明細に分割し、各単一ドメインワークフローエンジンフレームワーク10に配布する。各ドメインのワークフローエンジンフレームワーク10は各自のドメインに割り当てられたエンジンを動的に構成する。
The cross-domain system configuration unit 30' refers to the location and connection method of available resources from the cross-domain resource management unit 20' in order to process the cross-domain workflow instance specification received from the system definition editor 70'. Then, one cross-domain workflow instance specification is divided into multiple single-domain workflow specification and distributed to each single-domain
クロスドメインシステム制御部40’は、一つ以上の単一ドメインワークフローエンジンフレームワーク10によって生成されたそれぞれのワークフロー実行システム、すなわち、ドメインに配布された一つ以上のエンジンの実行の開始、終了などの制御のために、それぞれ単一ドメインワークフローエンジンフレームワーク10上のシステム制御部40に実行の制御を要請することによって、クロスドメイン上にワークフロー実行システムを駆動し終了することを遂行する。
The cross-domain system control unit 40' controls each workflow execution system generated by one or more single domain
各ドメインのワークフローエンジンフレームワーク10は、各自のドメインに割り当てられたエンジンを動的に構成した後、クロスドメインシステム制御部40の実行要請によってエンジンを駆動して処理を遂行する。このとき、エンジン間のデータの伝達は、図10で言及した通り、ネットワークドライバーを通じて直接遂行されてもよく、分散メッセージキューのようなメッセージングシステム、その他の分散ファイルシステムなどの多様なデータ経路のうち一つ以上を利用して伝達してもよい。各単一ドメインワークフローエンジンフレームワーク10のシステム制御部40は、エンジンの進行状況や完了などの信号を再びクロスドメイン融合システム10’のクロスドメインシステム制御部40’に伝達する。
The
クロスドメイン資源管理部20’は各ドメインから受けた資源情報、すなわち、使用できるコンポーネントとハードウェア、ネットワーク情報、ドメイン内のデバイス情報などを各単一ドメインワークフローフレームワーク10に要請して最新の資源情報を維持する。また、クロスドメインシステム構成部30’はクロスドメインワークフローを遂行するにおいて、一つ以上のドメインワークフローエンジンフレームワーク10に最適なエンジンワークフローを配置するために、クロスドメインワークフローを一つ以上のドメインワークフローに分割する。このために、クロスドメインシステム構成部30’は、クロスドメイン資源管理部20’に各単一ドメインワークフローエンジンフレームワーク10に対する最新の資源情報を要請して、図17の段階260による最適なエンジンの配布政策にしたがって各単一ドメインワークフローエンジンフレームワーク10上で構成されるべきエンジンを決定する過程を通じて、前記一つ以上のドメインワークフローに分割する作業を完成する。次いで、クロスドメインシステム構成部30’は、分割された各ドメインワークフローを各単一ドメインワークフローエンジンフレームワーク10に送り、一つ以上のドメイン上にクロスドメインワークフローを遂行(perform)するためのエンジンを実行(execute)できるシステムを動的に構成する。
The cross-domain resource manager 20' requests resource information received from each domain, that is, usable components and hardware, network information, device information within the domain, etc., from each single-
各単一ドメインワークフローエンジンフレームワーク10は、自分が有する資源の目録をクロスドメイン融合システム10’に登録し、周期的に更新を要請する。ここで資源の目録はワークフローの実行のためのコンポーネント資源目録であり得、ネットワーク連結情報、ハードウェア資源情報、仮想マシンの仕様情報、組織の構成情報、組織の使用可能デバイス情報、使用可能状態などがさらに該当し得る。
Each single domain
図17は、図16のクロスドメイン融合システム10’でワークフロー明細を受けてこれを効果的に配布して実行するための実行手続きを図示する。この時のワークフローは、解決しようとする問題や応用により単一ドメインまたはクロスドメイン適応型ワークフローであり得る。 FIG. 17 illustrates execution procedures for receiving workflow specifications and effectively distributing and executing them in the cross-domain fusion system 10' of FIG. The workflow at this time can be a single-domain or cross-domain adaptive workflow depending on the problem or application to be solved.
まず、システム定義編集機70’でワークフロー生成手続きによって一連のワークフローを決定し、これを構成するエンジンを作るためのエンジンコンポーネントコンテナ群が含まれたワークフロー明細を定義する(100)。クロスドメイン融合システム10’がシステム定義編集機70’からワークフロー明細を受けると、ワークフロー明細に設定されたエンジンコンポーネントコンテナをいずれのドメインに配布するのか配布位置を決定し、配布する過程(200)に進行する。ワークフロー上で必要とするエンジンに対する明細がドメインに配布されると、単一ドメインに対するまたはクロスドメインに対するワークフローを実行するためのすべての準備が完了し、最後に該当ワークフローを実行する(300)。 First, the system definition editing machine 70' determines a series of workflows by a workflow generation procedure, and defines workflow specifications including engine component container groups for creating an engine that constitutes the workflows (100). When the cross-domain fusion system 10' receives the workflow specification from the system definition editor 70', the distribution position is determined to which domain the engine component container set in the workflow specification is to be distributed, and in the process of distribution (200). proceed. When the specifications for the engines required on the workflow are distributed to the domains, all preparations for executing the workflow for a single domain or for cross-domains are completed, and finally the corresponding workflow is executed (300).
クロスドメイン融合システム10’でクロスドメインシステム構成部30’が各エンジンコンポーネントコンテナの配布位置を決定し、配布する過程(200)を具体的に説明すると次のとおりである。 The process (200) in which the cross-domain system configuration unit 30' determines the distribution position of each engine component container in the cross-domain fusion system 10' and distributes it will now be described in detail.
まず、各エンジンに必要なデータの最初出発地(エンジンが収集しなければならないデータの位置。例えば、特定のDB、センサ位置など)と最終到着地(例えば、他のエンジンに対するデータ出発地、または保存所位置)が同一ドメインに存在するのか把握する(210)。この時、データの出発地と到着地は事物インターネット機器やデータベースのような構造化されたデータ保存所、ファイルシステムなどであり得、ウェブサービス終端になってもよい。 First, the initial departure point of the data required for each engine (the location of the data that the engine must collect. For example, a specific DB, sensor location, etc.) and the final arrival point (for example, the data departure point for other engines, or storage location) exists in the same domain (210). At this time, the origin and destination of data can be an Internet of Things device, a structured data repository such as a database, a file system, etc., and can be a web service endpoint.
データの出発地と到着地が同一ドメインに存在すると、該当ドメイン内の資源を利用して最初のデータの出発地から最終到着地までの一連のエンジン構成が可能であるかを資源管理部を照会して判断する(220)。もし、エンジン構成が可能であれば(例えば、該当ドメインの資源レジストリにエンジン構成が可能なエンジンコンポーネントがすべて存在する場合)、該当ドメインにエンジンを動的に構成するようにエンジン明細を配布して(230)ワークフローが実行され得るようにする。 If the origin and destination of data exist in the same domain, inquire the resource management unit whether it is possible to configure a series of engines from the origin of the first data to the final destination using resources within the domain. (220). If engine configuration is possible (for example, if there are all engine components that can be configured in the resource registry of the domain), distribute the engine specification to the domain to dynamically configure the engine. (230) Allow the workflow to run.
再び(210)段階に戻って、前記エンジンのデータ出発地と到着地が同一ドメインに属さない場合に、または段階(220)で該当ドメイン内の資源を利用してエンジンコンポーネントコンテナの構成が可能であるか判断した結果、構成不可と判断されると、同一のコンポーネント構成が可能な他のドメインを検索して(資源管理部を検索)、代替可能な候補ドメイン群を決定する段階(240)に進行する。 Returning to step (210), if the engine data origin and destination do not belong to the same domain, or in step (220), an engine component container can be configured using resources within the corresponding domain. If it is determined that the configuration is not possible as a result of determining whether the proceed.
候補ドメイン群が決定されると、それらのうち代替ドメインを決定するために費用算定を遂行する(250)。この時、費用はネットワークトポロジー上の距離、ネットワーク処理量、予想遅延時間などのようなネットワーク伝達費用の算定額、使用できるコンピューティング資源の量、ドメイン間の信頼度のうち一つ以上を組み合わせて計算することができる。 Once the candidate domains are determined, cost estimation is performed 250 to determine alternate domains among them. At this time, the cost is a combination of one or more of the distance on the network topology, the amount of network processing, the estimated amount of network transmission cost such as expected delay time, the amount of available computing resources, and the reliability between domains. can be calculated.
次に、計算した費用をもって配布ドメインの選定政策を適用して配布しなければならない最適なドメインを選定する(260)。この時、ドメイン選定政策は、各ドメインの資源に対して同一比率または同一量で配分されるようにする公正配分政策、エネルギー効率性を考慮した最適エネルギー政策、ドメイン別に優先順位をつけて配分する優先順位政策などであり得る。費用、政策の段階の順序は非順序的である。 Next, the optimal domain to be distributed is selected by applying the distribution domain selection policy with the calculated cost (260). At this time, the domain selection policy includes a fair allocation policy that allocates the resources of each domain in the same ratio or the same amount, an optimal energy policy that considers energy efficiency, and a priority allocation for each domain. It can be a priority policy and so on. The sequence of cost and policy stages is non-sequential.
ワークフロー上で必要とするすべてのエンジンに対する明細が該当ドメインに配布されると(230)、該当ドメインまたはクロスドメインに対するワークフローを実行するためのすべての準備が完了したのであり、最終的にワークフローを実行する(300)。クロスドメイン融合システム10’にあるシステム制御部40’の実行指示がコントロールチャネルを通じて各単一ドメインフレームワーク10のシステム制御部40構成部30に伝達されて実行される。
When the specifications for all engines required for the workflow are distributed to the relevant domain (230), all preparations for executing the workflow for the relevant domain or cross-domain are completed, and the workflow is finally executed. (300). An execution instruction of the system controller 40' in the cross-domain fusion system 10' is transmitted to the
図16と図17のクロスドメイン適応型ワークフローエンジンフレームワークに対する理解のために、具体的な関連シナリオとシステム構成を説明するための図面(図18~20)を通じてより詳しく説明する。 For better understanding of the cross-domain adaptive workflow engine framework of FIGS. 16 and 17, a more detailed description will be given through drawings (FIGS. 18-20) for describing specific related scenarios and system configurations.
図18は、スマートシティを達成するためのシナリオを説明するためのものである。まず、スマートシティは、最適な(スマート)公共エネルギーの需給制御と公共交通制御、そして、その他の分野の最適制御を通じて達成することができる。そのうち、最適な公共エネルギーの需給制御は、公共エネルギー需給政策により最適な公共エネルギー需要制御と供給制御を通じて達成することができる。ここでスマート公共エネルギー需要制御は、最適な街路灯制御と霧制御(例えば、霧除去装置の制御)、その他の最適な公共装置制御を通じて達成することができる。このうち、最適な街路灯制御は、予測された道路別交通量、予測された気象状態による最適な道路交通制御政策を参照して達成することができる。道路別交通量予測は、道路別交通量をモニタリング結果を参照して予測に活用して達成することが可能である。 FIG. 18 is for explaining a scenario for achieving a smart city. First, a smart city can be achieved through optimal (smart) public energy supply and demand control, public transport control, and other areas of optimal control. Among them, optimal public energy supply and demand control can be achieved through optimal public energy demand control and supply control according to public energy supply and demand policy. Here, smart public energy demand control can be achieved through optimal street light control and fog control (eg, control of fog eliminators), and other optimal utility device control. Among them, the optimum street light control can be achieved by referring to the optimum road traffic control policy according to the predicted traffic volume of each road and the predicted weather conditions. Traffic volume forecast by road can be achieved by referring to the monitoring results of traffic volume by road and using it for forecasting.
図19は、図18のスマートシティを達成するために構成したクロスドメインワークフローエンジンフレームワークの一実施形態を図示する。 FIG. 19 illustrates one embodiment of a cross-domain workflow engine framework configured to achieve the smart city of FIG.
まず、道路交通量モニタリングは、多様な交通センサーからセンシングデータを収集するエンジンと、この収集エンジンが収集したセンシング情報を読み込んで、総計、平均のような交通量統計のためのオペレーション処理をする交通量統計処理エンジンと、外部の要請に対して交通量統計処理結果を応答する交通量統計サービングエンジンで構成された道路交通量モニタリングワークフロー91を通じて、エンジンフレームワークで実行することによって目的とするシステムを構成することができる。
First, road traffic volume monitoring consists of an engine that collects sensing data from various traffic sensors, and a traffic volume that reads the sensing information collected by this collection engine and performs operation processing for traffic volume statistics such as totals and averages. Through the road
次いで、道路別交通量予測は、前記道路交通量モニタリングワークフロー91の交通センサ情報収集エンジンと収集されたセンシング情報を予測に必要な入力データの形態で処理し、処理したデータを読み込んで機械学習基盤の予測を実行する交通量予測エンジンと、予測結果を外部の要請により応答する交通量予測サービングエンジンで構成された道路別交通量予測ワークフロー92を定義し実行することによって、目的とするシステムを動的に構成することができる。
Next, the traffic volume prediction by road processes the traffic sensor information collection engine of the road traffic
気象予測は、気象情報を収集して適切に処理する気象情報収集エンジンと、機械学習モデル基盤で気象を予測する気象予測エンジンと、気象予測結果をサービスするための気象予測サービングエンジンで構成された気象予測ワークフロー93を定義し実行することによって、目的とするシステムを構成することができる。
The weather forecast consists of a weather information collection engine that collects and appropriately processes weather information, a weather forecast engine that forecasts weather based on machine learning models, and a weather forecast serving engine that serves weather forecast results. By defining and executing a
道路交通制御政策は、特定の状況に該当するコンテクストを入力として、規則に基づいた推論または推薦(recommendation)オペレーションを通じて知識ベースや機械学習などを利用して最適な道路交通制御政策を抽出状況別道路交通制御推薦エンジンを含む道路交通制御ワークフロー90を定義し実行することによって、目的を達成するためのシステムを構成することができる。
The road traffic control policy uses the context corresponding to a specific situation as an input, and extracts the optimal road traffic control policy using knowledge base and machine learning through rule-based inference or recommendation operation Roads by situation By defining and executing a road
スマート街路灯制御は、前述した交通量予測サービングエンジンと気象予測サービングエンジンに、それぞれ道路格別交通量予測結果と気象予測結果を質疑するためのオペレーションとその結果を前記状況別道路交通制御推薦エンジンに提供して、必要な道路交通制御を推論して得るためのオペレーションを含んで外部の要請に応答するスマート街路灯制御推薦エンジンを生成するスマート街路灯制御ワークフロー94を定義し実行することによって、目的を達成するためのシステムを構成することができる。
The smart street light control is an operation for interrogating the traffic volume forecast result and the weather forecast result for each road to the traffic forecast serving engine and the weather forecast serving engine, respectively, and the result to the situation-based road traffic control recommendation engine. By defining and executing a smart street
その他に説明していない図18に図示されたシナリオは、前記と類似する方法でそれぞれのワークフローを構成することによって、それぞれの目的を達成するシステムを動的に構成することができる。 The scenarios illustrated in FIG. 18, which are not otherwise discussed, can be dynamically configured to achieve their respective objectives by configuring their respective workflows in a manner similar to that described above.
図20は、図19に示したシナリオのうち、スマート街路灯制御のためのワークフロー94構成でスマート街路灯制御推薦エンジン構成の一実施形態を例示する。スマート街路灯制御推薦エンジンは、外部の要請に応答するためのRESTful Server325を駆動するためのRunnerコンポーネント326と、RESTfulサーバー325で要請が入ってきた時に気象予測結果を照会するオペレーターを通じて気象予測エンジン93’に質疑して予測する結果を持ってくるオペレーター323aと、交通量予測エンジン92’に質疑することによって今後道路別交通量予測結果を質疑して持ってくるオペレーター323c、各オペレーターが取得した結果を受けて状況情報を生成し、生成した状況情報を利用して状況別道路交通制御推薦エンジン90’に質疑することによって状況に合う道路別交通制御を得、そのうち街路灯制御政策を抽出してREST Server325に伝達するオペレーター323bとこれらRunner326とOperatorとの間の論理の流れ関係を制御するController328で構成することができる。
FIG. 20 illustrates one embodiment of the smart street light control recommendation engine configuration in the
再び図17のクロスドメインワークフローの実行手続きに戻って、一連のワークフローの実行のための必要エンジンコンポーネントコンテナ群の決定(100)を遂行した後、各エンジンコンポーネントコンテナに対する配布位置決定および配布のための手続き(200)のうち、代替候補ドメイン決定のための基準となる費用算定(250)および最適な候補ドメイン決定(260)について各シナリオ別に補充説明する。 Returning again to the cross-domain workflow execution procedure in FIG. Of the procedure (200), the cost calculation (250) and optimal candidate domain determination (260), which serve as criteria for determining alternative candidate domains, will be additionally explained for each scenario.
道路交通制御ワークフロー90での状況別道路交通制御推薦エンジンの場合に、その推薦結果が街路灯制御推薦と直結されるため、ドメイン間の信頼度優先の加重値政策によるエンジン配布が遂行される。
In the case of the traffic control recommendation engine for each situation in the road
道路交通量モニタリングワークフロー91でのセンシングデータ収集エンジン、交通量統計処理エンジン、交通量統計サービングエンジンについては、リアルタイムモニタリングのためにエンジン配布時にネットワーク伝達費用と使用可能コンピューティング資源優先の加重値政策によりエンジンを配布する。
For the sensing data collection engine, the traffic statistics processing engine, and the traffic statistics serving engine in the road
道路別交通量予測ワークフロー92の道路交通量モニタリングワークフローの交通量予測エンジンと交通量予測サービングエンジンは、収集エンジンの収集結果を利用して予測を遂行しなければならないため、収集エンジンが配布されたドメインとのネットワーク費用を優先としてエンジンを配布する。
The traffic prediction engine and the traffic prediction serving engine of the road traffic monitoring workflow of the traffic prediction workflow by
気象予測ワークフロー93において、気象情報はセキュリティー上重要な情報ではないため、使用できるコンピューティング資源を優先してエンジンを配布する。
In the
スマート街路灯制御推薦エンジンが含まれたスマート街路灯制御ワークフロー94では、それぞれの質疑対象エンジンが他のドメインに配布されており、重要な情報を含んでいるため、ドメイン間の信頼度優先の加重値政策によりエンジンを配布する。
In the smart street
以上の構成およびプロセスを通じて、事物インターネット、ビッグデータ、機械学習を結合して分析する大容量データのリアルタイム分析サービスなどにおいて、特定の問題の解決のために開発した機械学習モデルおよびビッグデータ分析モデルをコンポーネントを具現して管理することができる。また、多様な業務や目的ドメインで類似する問題の解決のための実行プラットフォームを容易に構成することができるように、前記コンポーネントを動的にリサイクルできる単一ドメインまたはクロスドメイン適応型ワークフローエンジンフレームワークを具現することができる。 Through the above configuration and process, the machine learning model and big data analysis model developed to solve specific problems in the Internet of Things, big data, real-time analysis service for large amounts of data that analyzes by combining machine learning, etc. Components can be implemented and managed. Also, a single-domain or cross-domain adaptive workflow engine framework that can dynamically recycle said components so that execution platforms for solving similar problems in diverse business and target domains can be easily configured. can be embodied.
Claims (20)
前記属性明細コンポーネントを組み立てること、および、ワークフロー明細にしたがって必要なエンジンコンポーネントコンテナを構成するために前記ワークフローの実行に必要な前記エンジンコンポーネントを組み合わせることによって、エンジンを生成するシステム構成部、
前記システム構成部によって生成される一つ以上のエンジンをワークフロー属性明細に定義された方式により駆動して前記実行を制御するシステム制御部を含む、ワークフローエンジンフレームワーク。 a resource management unit that manages resources including a workflow attribute detail component and an engine component required to execute the workflow ;
a system component that generates an engine by assembling the attribute specification components and combining the engine components required for execution of the workflow to construct the required engine component containers according to the workflow specification ;
A workflow engine framework including a system controller that drives one or more engines generated by the system component in a manner defined in a workflow attribute specification to control the execution.
ワークフローインスタンスのコンポーネント属性を決定する属性明細が含まれた属性明細コンポーネントを管理する属性明細コンポーネント管理部、
実行のためのエンジンコンポーネントを管理するエンジンコンポーネント管理部を含む、請求項1に記載のワークフローエンジンフレームワーク。 the resource manager is an attribute description component manager that manages an attribute description component that includes an attribute description that determines component attributes of a workflow instance;
2. The workflow engine framework of claim 1, comprising an engine component manager that manages engine components for execution.
既に作成されて保存されたワークフロー明細インスタンスを管理するワークフロー明細インスタンス管理部をさらに含む、請求項3に記載のワークフローエンジンフレームワーク。 4. The workflow engine framework of claim 3, wherein the resource manager further comprises: a workflow description instance manager that manages previously created and saved workflow description instances.
ワークフロー明細を属性明細コンポーネントにバインディングして属性明細コンポーネントを生成するワークフロー属性明細組立部、
組み立てた属性明細コンポーネントから、定義されたエンジンコンポーネント情報を抽出して属性明細コンポーネントとエンジンコンポーネントをバインディングする過程を通じてエンジンを構成してワークフロー実行プラットフォームを構成するワークフロー構成部を含む、請求項1に記載のワークフローエンジンフレームワーク。 the system component includes: a workflow attribute detail assembler that binds workflow specifications to attribute detail components to generate attribute detail components;
2. The workflow configuration part of claim 1, which configures the engine and configures the workflow execution platform through a process of extracting defined engine component information from the assembled attribute detail component and binding the attribute detail component and the engine component. workflow engine framework.
ワークフローを構成するエンジンコンポーネントとこのエンジンコンポーネントの特性を決定するパラメーターを定義する属性明細コンポーネントの規約に沿ってエンジンコンポーネントと属性明細コンポーネントをバインディングして、ワークフローを実行するためのエンジンが保存されるワークフロー実行インスタンス部をさらに含む、請求項5に記載のワークフローエンジンフレームワーク。 The workflow configuration unit is an engine for executing the workflow by binding the engine component and the attribute detail component in accordance with the rules of the engine component that configures the workflow and the attribute detail component that defines the parameters that determine the characteristics of this engine component. 6. The workflow engine framework of claim 5, further comprising a workflow execution instance portion in which is stored.
各種エンジンの類型を提示してユーザーがこれらのうち必要なものを選択することができるようにするエンジン類型選択部、
ユーザーがコンポーネントタイプと各タイプ別エンジンコンポーネントを選択することができるように、コンポーネントタイプ別に多様なエンジンコンポーネント目録を提供するコンポーネント選択部、
コンポーネント選択部で選択されたエンジンコンポーネントの属性が提示され、ユーザーは属性を照会してこれを選択および編集することができるようにするコンポーネント属性選択/編集部を含む、請求項1に記載のワークフローエンジンフレームワーク。 The workflow specification is defined by the system definition editor and submitted to the system configuration unit, and the system definition editor presents various types of engines and allows the user to select the necessary engine from among them. engine type selector,
a component selection unit that provides various engine component lists by component type so that the user can select the component type and the engine component for each type;
2. The workflow of claim 1, including a component attribute selector/editor for presenting attributes of engine components selected by the component selector and allowing a user to query, select and edit the attributes. engine framework.
一つ以上のデータ出発地からデータを持ってくる入力器、
前記入力器からデータを受けて処理する一つ以上の単位処理器、
内部で処理したデータを一つ以上のデータ終着地に出力する一つ以上の出力器、
入力したデータを処理するための別途の実行プログラムまたはプラットフォームを実行したりセッションを管理する実行器、
このようなデータを入力器を通じて入力して実行器上で処理し、これを出力するための一連の制御を担当する制御器を含む、請求項1に記載のワークフローエンジンフレームワーク。 The engine is
an input device that brings in data from one or more data origins;
one or more unit processors for receiving and processing data from the input device;
one or more output devices for outputting internally processed data to one or more data destinations;
An executor that executes a separate execution program or platform for processing input data and manages sessions;
2. The workflow engine framework according to claim 1, comprising a controller responsible for a series of controls for inputting such data through an input device, processing it on an executor, and outputting it.
前記入力器、単位処理器、出力器の順でノードが構成される場合に、データを順次パイプライニングして次のノードに伝達する方式で実行するように制御する順次処理方式、それぞれのノードが同時に実行されるようにする同時処理方式、この二つを結合した同時/順次処理方式のうちいずれか一つで制御を実行する、請求項8に記載のワークフローエンジンフレームワーク。 The controller is
A sequential processing method in which when the nodes are configured in the order of the input device, the unit processor, and the output device, the data is pipelined sequentially and controlled to be executed in a method of transmitting to the next node, each node 9. The workflow engine framework according to claim 8, wherein control is executed in one of a simultaneous processing method that allows the processes to be executed simultaneously, and a simultaneous/sequential processing method that combines the two.
一つ以上の単位処理器が前記入力器からデータを受けて順次パイプライニングによるデータを処理すると共に、一つ以上の単位処理器が駆動されて同時処理を実行するように制御する、請求項8に記載のワークフローエンジンフレームワーク。 The controller controls such that one or more unit processors receive data from the input device and sequentially process the data through pipelining, and the one or more unit processors are driven to perform simultaneous processing. 9. The workflow engine framework of claim 8.
この場合、多数のエンジン間パイプライン方式で伝達されるようにデータ伝達経路が使用される、請求項8に記載のワークフローエンジンフレームワーク。 the workflow engine framework includes one or more of the workflow execution engines;
9. The workflow engine framework of claim 8, wherein data communication paths are used to communicate in a multi-engine pipeline fashion in this case.
前記単一ドメインワークフローエンジンフレームワークと連結されて、定義したクロスドメインワークフローによりクロスドメインに含まれた各単一ドメインに必要なエンジンを配布する単一ドメインを決定するクロスドメイン融合システム(10’)を含む、クロスドメイン適応型ワークフローエンジンフレームワーク。 A resource management unit that manages resources including workflow attribute specification components necessary for workflow execution and engine components ; assembling the attribute specification components and configuring necessary engine component containers according to the workflow specifications . a system component that generates an engine by combining the engine components necessary for execution of the workflow in order to create an engine; one or more engines generated by the system component in a manner defined in a workflow attribute specification ; a single domain workflow engine framework including system controls that drive and control said execution;
A cross-domain fusion system (10') coupled with the single-domain workflow engine framework to determine a single-domain distributing engine required for each single-domain included in the cross-domains according to the defined cross-domain workflow. Cross-domain adaptive workflow engine framework, including.
単一ドメインワークフローエンジンフレームワークの資源管理部からワークフロー資源の報告を受け、これらを更新し、各ドメインから受けた資源情報を通じて使用できるコンポーネントとハードウェア、ネットワーク情報、ドメイン内のデバイス情報を更新するクロスドメイン資源管理部、
クロスドメインワークフロー明細を処理するために、一つのクロスドメインワークフロー明細を多数の単一ドメインワークフロー明細に分割して各エンジンコンポーネントコンテナの配布位置を決定して配布するクロスドメインシステム構成部を含む、請求項14に記載のクロスドメイン適応型ワークフローエンジンフレームワーク。 The cross-domain fusion system receives reports of workflow resources from the resource management unit of the single-domain workflow engine framework, updates them, and uses available components and hardware through resource information received from each domain, network information, and intra-domain a cross-domain resource manager that updates device information in
including a cross-domain system component that divides one cross-domain workflow specification into a number of single-domain workflow specifications and determines and distributes the distribution position of each engine component container for processing the cross-domain workflow specifications. 15. The cross-domain adaptive workflow engine framework according to Item 14.
1)各エンジンに必要なデータの出発地と到着地が同一ドメインに存在するのか把握する手段、
2)エンジンのデータ出発地と到着地が同一ドメインに存在すると該当ドメイン内の資源を利用してエンジン構成が可能であるかを判断する手段、
3)エンジン構成が可能であれば、該当ドメインにエンジンを構成するようにエンジン明細を配布する手段、
4)手段1)の判断結果、エンジンのデータ出発地と到着地が同一ドメインに存在しない場合に、または手段2)でエンジン構成が不可であると判断されると、同一エンジンコンポーネントの構成が可能な他のドメインを検索して代替可能な候補ドメイン群を決定する手段、
5)候補ドメイン群が決定されると、それらのうち代替ドメインを決定するために費用算定を遂行し、配布ドメイン選定政策を適用して配布しなければならない最適なドメインを選定する手段を含む、請求項14に記載のクロスドメイン適応型ワークフローエンジンフレームワーク。 The cross-domain fusion system determines a single domain that distributes the necessary engine to each single domain included in the cross-domain: 1) The origin and destination of data necessary for each engine are in the same domain. a means of determining whether or not there is
2) A means for determining whether an engine configuration is possible using resources within the domain when the data origin and destination of the engine exist in the same domain;
3) Means for distributing the engine specification to configure the engine in the relevant domain, if engine configuration is possible;
4) As a result of determination in means 1), if the engine data origin and destination do not exist in the same domain, or if it is determined in means 2) that engine configuration is not possible, configuration of the same engine components is possible. a means for searching for other domains that are similar to each other and determining a group of candidate domains that can be substituted;
5) once the candidate domains have been determined, performing a cost calculation to determine alternative domains among them, and applying a distribution domain selection policy to select the optimal domain that should be distributed; Cross-domain adaptive workflow engine framework according to claim 14.
各種エンジンの類型を提示してユーザーがこれらのうち必要なものを選択することができるようにするエンジン類型選択部、
ユーザーがコンポーネントタイプと各タイプ別エンジンコンポーネントを選択することができるように、コンポーネントタイプ別に多様なエンジンコンポーネント目録を提供するコンポーネント選択部、
コンポーネント選択部で選択されたエンジンコンポーネントの属性が提示され、ユーザーは属性を照会してこれを選択および編集することができるようにするコンポーネント属性選択/編集部を含む、請求項14に記載のクロスドメイン適応型ワークフローエンジンフレームワーク。 The workflow specification is defined by a system definition editor and submitted to the cross-domain fusion system, and the system definition editor presents types of various engines so that the user can select a necessary one from among them. an engine type selector that allows
a component selection unit that provides various engine component lists by component type so that the user can select the component type and the engine component for each type;
15. The cross of claim 14, including a component attribute selection/editor for presenting attributes of engine components selected by the component selector and allowing a user to query, select and edit the attributes. A domain-adaptive workflow engine framework.
一つ以上のデータ出発地からデータを持ってくる入力器、
前記入力器からデータを受けて処理する一つ以上の単位処理器、
内部で処理したデータを一つ以上のデータ終着地に出力する一つ以上の出力器、
入力したデータを処理するための別途の実行プログラムまたはプラットフォームを実行したりセッションを管理する実行器、
このようなデータを入力器を通じて入力して実行器上で処理し、これを出力するための一連の制御を担当する制御器を含む、請求項14に記載のクロスドメイン適応型ワークフローエンジンフレームワーク。 The engine is
an input device that brings in data from one or more data origins;
one or more unit processors for receiving and processing data from the input device;
one or more output devices for outputting internally processed data to one or more data destinations;
An executor that executes a separate execution program or platform for processing input data and manages sessions;
15. The cross-domain adaptive workflow engine framework according to claim 14, comprising a controller responsible for a series of controls for inputting such data through an input device, processing it on an executor, and outputting it.
ワークフロー明細の入力を受けて、これから、エンジンを構成するエンジンコンポーネントに対する属性明細が入れられる属性明細コンポーネントインスタンスを生成する段階、
生成した属性明細コンポーネントインスタンスをエンジンコンポーネントの生成子パラメーターとして指定してエンジンコンポーネントインスタンスを生成する段階、
エンジンコンポーネントコンテナにバインディングされたエンジンコンポーネントコンテナインスタンスを生成子パラメーターとして、エンジンを生成する段階を含む、ワークフロー実行エンジンの生成方法。 The workflow execution engine by assembling the workflow attribute specification components required for user-defined workflow execution and dynamically combining the engine components required for workflow execution to configure the engine component container. A method for generating a
a step of receiving the input of the workflow details and generating an attribute details component instance in which the attribute details for the engine components that make up the engine are entered;
generating an engine component instance by designating the generated attribute specification component instance as a generator parameter of the engine component;
A method of generating a workflow execution engine, including generating the engine with an engine component container instance bound to the engine component container as a generator parameter.
1)各エンジンに必要なデータの出発地と到着地が同一ドメインに存在するのか把握する段階、
2)エンジンのデータ出発地と到着地が同一ドメインに存在すると、該当ドメイン内の資源を利用してエンジンの構成が可能であるかを判断する段階、
3)エンジン構成が可能であれば、該当ドメインにエンジンを構成するようにエンジン明細を配布する段階、
4)段階1)の判断結果、エンジンのデータ出発地と到着地が同一ドメインに存在しない場合に、または、段階2)でエンジン構成が不可であると判断されると、同一エンジンコンポーネント構成が可能な他のドメインを検索して代替可能な候補ドメイン群を決定する段階、
5)候補ドメイン群が決定されると、それらのうち代替ドメインを決定するために費用算定を実行し、配布ドメイン選定政策を適用して配布しなければならない最適なドメインを選定する段階を含む、エンジン配布ドメイン決定方法。 A method for determining a single domain in which the cross-domain fusion system included in the cross-domain adaptive workflow engine framework of claim 14 distributes the required engine for each single domain included in the cross-domain. and
1) Step of understanding whether the origin and destination of data required for each engine exist in the same domain;
2) determining whether the engine can be configured using resources within the corresponding domain when the data origin and destination of the engine are in the same domain;
3) distributing the engine specification to configure the engine in the relevant domain, if the engine configuration is possible;
4) As a result of determination in step 1), if the engine data origin and destination do not exist in the same domain, or if it is determined in step 2) that the engine configuration is not possible, the same engine component configuration is possible. searching other domains to determine a group of substitutable candidate domains;
5) Once the candidate domains have been determined, performing a cost calculation to determine alternative domains among them, and applying a distribution domain selection policy to select the optimal domain that should be distributed; How the engine distribution domain is determined.
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20170135066 | 2017-10-18 | ||
KR10-2017-0135066 | 2017-10-18 | ||
KR10-2018-0047370 | 2018-04-24 | ||
KR1020180047370A KR102259927B1 (en) | 2017-10-18 | 2018-04-24 | Workflow engine framework |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2019075077A JP2019075077A (en) | 2019-05-16 |
JP7118726B2 true JP7118726B2 (en) | 2022-08-16 |
Family
ID=66281200
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018087438A Active JP7118726B2 (en) | 2017-10-18 | 2018-04-27 | workflow engine framework |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP7118726B2 (en) |
KR (1) | KR102259927B1 (en) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111091193B (en) * | 2019-10-31 | 2022-07-05 | 武汉大学 | Domain-adapted privacy protection method based on differential privacy and oriented to deep neural network |
KR20210057656A (en) * | 2019-11-12 | 2021-05-21 | 한국전자통신연구원 | workflow engine framework for cross-domain extension |
KR102408188B1 (en) * | 2020-09-28 | 2022-06-13 | 주식회사 마인즈랩 | Intent classifier creation interface provision method and computer program |
KR102291867B1 (en) * | 2020-12-02 | 2021-08-23 | 주식회사 파트리지시스템즈 | System for managing data based on hierarchical data repository and operating method thereof |
KR20220078327A (en) | 2020-12-03 | 2022-06-10 | 주식회사 이노커스 | Method and apparatus for managing learning medel for real-time analysis and prediction |
KR102566983B1 (en) | 2021-06-01 | 2023-08-14 | 성균관대학교산학협력단 | Automation model device for scheduler-based workflow process |
KR102443301B1 (en) * | 2021-11-25 | 2022-09-16 | 주식회사 파트리지시스템즈 | Adaptive data processing system for processing various data and method thereof |
CN114816368B (en) * | 2022-06-23 | 2022-10-18 | 深圳市瓴码云计算有限公司 | Object-oriented business process development system, method, device and storage medium |
CN115906499A (en) * | 2022-12-05 | 2023-04-04 | 中国航空发动机研究院 | Heterogeneous system-oriented aircraft engine integrated simulation workflow engine system |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005038244A (en) | 2003-07-16 | 2005-02-10 | Nippon Telegr & Teleph Corp <Ntt> | Automatic program generation device |
JP2010539599A (en) | 2007-09-11 | 2010-12-16 | シャンベラ リミテッド | System, method, and graphical user interface for workflow generation, deployment, and / or execution |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11296357A (en) * | 1998-04-08 | 1999-10-29 | Oki Electric Ind Co Ltd | Flow chart input device |
JP2008027282A (en) * | 2006-07-24 | 2008-02-07 | Yokogawa Electric Corp | Workflow switching framework |
KR100852141B1 (en) | 2006-10-30 | 2008-08-13 | 경기대학교 산학협력단 | Workcase-based workflow engine |
KR20140102478A (en) * | 2013-02-14 | 2014-08-22 | 한국전자통신연구원 | Workflow job scheduling apparatus and method |
KR101574396B1 (en) * | 2013-12-17 | 2015-12-04 | 부산대학교 산학협력단 | Service composition framework for transportation big data service |
-
2018
- 2018-04-24 KR KR1020180047370A patent/KR102259927B1/en active IP Right Grant
- 2018-04-27 JP JP2018087438A patent/JP7118726B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005038244A (en) | 2003-07-16 | 2005-02-10 | Nippon Telegr & Teleph Corp <Ntt> | Automatic program generation device |
JP2010539599A (en) | 2007-09-11 | 2010-12-16 | シャンベラ リミテッド | System, method, and graphical user interface for workflow generation, deployment, and / or execution |
Also Published As
Publication number | Publication date |
---|---|
KR20190043446A (en) | 2019-04-26 |
JP2019075077A (en) | 2019-05-16 |
KR102259927B1 (en) | 2021-06-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7118726B2 (en) | workflow engine framework | |
US11036539B2 (en) | Workflow engine framework | |
Dustdar et al. | Smart cities | |
EP4142427A1 (en) | Distributed data nodes for flexible data mesh architectures | |
CN110022230B (en) | Deep reinforcement learning-based service chain parallel deployment method and device | |
Vermesan et al. | Next generation Internet of Things: Distributed intelligence at the edge and human machine-to-machine cooperation | |
Liu et al. | An iterative two-phase optimization method based on divide and conquer framework for integrated scheduling of multiple UAVs | |
Köksal et al. | Obstacles in data distribution service middleware: a systematic review | |
Raj et al. | Digital twin: the industry use cases | |
KR102584447B1 (en) | workflow engine framework for cross-domain extension | |
Al-Jaroodi et al. | PsCPS: A distributed platform for cloud and fog integrated smart cyber-physical systems | |
CN112330519A (en) | Data processing method and device | |
Raj et al. | Edge/Fog Computing Paradigm: The Concept, Platforms and Applications. | |
Vargo et al. | The nature and fundamental elements of digital service innovation | |
Rajeswari et al. | Hybrid Metaheuristics Web Service Composition Model for QoS Aware Services. | |
Akhound et al. | Clustering of mobile IoT nodes with support for scheduling of time-sensitive applications in fog and cloud layers | |
Zhou | Deep learning‐driven distributed communication systems for cluster online educational platform considering human–computer interaction | |
Štěpánek et al. | It-enabled digital service design principles-lessons learned from digital cities | |
Štefanič et al. | Quality of Service‐aware matchmaking for adaptive microservice‐based applications | |
Kimovski et al. | Multi-objective service oriented network provisioning in ultra-scale systems | |
Khan | Unanticipated dynamic adaptation of mobile applications | |
JP2022515831A (en) | System for providing services | |
Lu et al. | Autonomous integration and optimal allocation of heterogeneous information services for high-assurance in distributed information service system | |
Ivaschenko et al. | Intelligent intermediaries for multiple logistics parties | |
Skobelev et al. | Multi-agent tasks scheduling system in software defined networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210125 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20211110 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20211112 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20220210 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20220411 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220509 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20220705 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220803 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7118726 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |