(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-01-17
(45)【発行日】2022-01-26
(54)【発明の名称】分散型ITインフラストラクチャにおいてプロセスプロトコルを生成するための方法
(51)【国際特許分類】
G06F 9/48 20060101AFI20220119BHJP
G06F 8/60 20180101ALI20220119BHJP
G06F 17/40 20060101ALI20220119BHJP
G06Q 10/06 20120101ALI20220119BHJP
【FI】
G06F9/48 370
G06F8/60
G06F17/40 310A
G06Q10/06 324
G06Q10/06 340
(21)【出願番号】P 2020539053
(86)(22)【出願日】2018-01-30
(86)【国際出願番号】 EP2018052245
(87)【国際公開番号】W WO2019149339
(87)【国際公開日】2019-08-08
【審査請求日】2020-10-27
(73)【特許権者】
【識別番号】520255252
【氏名又は名称】セロニス エスイー
(74)【代理人】
【識別番号】100079108
【氏名又は名称】稲葉 良幸
(74)【代理人】
【識別番号】100109346
【氏名又は名称】大貫 敏史
(74)【代理人】
【識別番号】100117189
【氏名又は名称】江口 昭彦
(74)【代理人】
【識別番号】100134120
【氏名又は名称】内藤 和彦
(72)【発明者】
【氏名】クレンク,マーティン
【審査官】坂庭 剛史
(56)【参考文献】
【文献】米国特許出願公開第2014/0040182(US,A1)
【文献】米国特許出願公開第2017/0068702(US,A1)
【文献】特表2006-501577(JP,A)
【文献】特開2005-107903(JP,A)
【文献】特開2008-287720(JP,A)
【文献】特開2017-097858(JP,A)
【文献】特開2001-344168(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 9/48
G06F 8/60
G06F 17/40
G06Q 10/06
(57)【特許請求の範囲】
【請求項1】
少なくとも1つの抽出ノードと、少なくとも1つのストレージノードと、少なくとも1つの変換ノードと、を備えるITシステムにおいて、プロセスデータからプロセスプロトコルを生成するための方法であって、前記プロセスデータは、前記ITシステムの少なくとも1つのクライアントシステムに記憶され、
前記ITシステムのサーバシステムにおいて、アプリケーションカタログが実行され、
前記アプリケーションカタログを用いて、いくつかのアプリケーションテンプレートが管理され、それぞれのアプリケーションテンプレートは、インストールプログラムおよびコンフィグレーションデータを含み、
前記インストールプログラムを用いて、前記それぞれのアプリケーションテンプレートは、インスタンス化され、構成されて、前記サーバシステムにおいてアプリケーションとして実行され、
前記実行されるアプリケーションは、前記サーバシステムで実行されるランタイムコンポーネントにより監視
および管理され、
前記
少なくとも1つの抽出ノード、前記少なくとも1つの変換ノード、および前記少なくとも1つのストレージノードのうちの1つ以上のノードで実行されるいくつかの制御命令に従って、前記プロセスプロトコルは、前記プロセスデータから決定され、前記それぞれのアプリケーションの前記コンフィグレーションデータは、どのノードでどの制御命令が実行されるのかに関する情報を含む、方法。
【請求項2】
前記少なくとも1つのクライアントシステムは、通信ネットワークを介して前記サーバシステムに接続され、前記プロセスデータは、前記少なくとも1つのクライアントシステムにおいて少なくとも1つのプロセスを実行することにより生成されて、前記クライアントシステムに記憶され、前記クライアントシステムに記憶されたソースデータの一部であり、前記プロセスデータは、いくつかのプロセスインスタンスのデータを含み、プロセスインスタンスの前記データは、前記クライアントシステムにおいて実行され、いくつかのプロセスステップを含むプロセスを表す、請求項1に記載の方法。
【請求項3】
少なくとも1つのクライアントシステムにおいて、第1の抽出ノードが実行され、
前記サーバシステムにおいて、少なくとも1つの変換ノードおよび少なくとも1つのストレージノードが実行され、
前記第1の抽出ノードは、前記制御命令に従って、前記クライアントシステムに記憶された前記ソースデータから前記プロセスデータを抽出し、前記抽出されたプロセスデータを前記サーバシステムの前記ストレージノードに転送し、
前記ストレージノードは、前記抽出されたプロセスデータを前記抽出ノードから受け取り、前記サーバシステムの記憶装置に記憶し、
前記変換ノードは、前記制御命令に従って、前記記憶装置に記憶された前記プロセスデータから前記プロセスプロトコルを生成し、前記生成されたプロセスプロトコルを前記記憶装置に記憶するために前記ストレージノードに転送する、請求項2に記載の方法。
【請求項4】
前記第1の抽出ノードは、前記抽出されたプロセスデータを前記サーバシステムの前記ストレージノードに前記転送するために、どの通信プロトコルを使用するのかを規定する、請求項3に記載の方法。
【請求項5】
前記第1の抽出ノードは、前記抽出されたプロセスデータを前記サーバシステムの前記ストレージノードに前記転送する前に、前記抽出されたプロセスデータを
最適化および/または圧縮する、請求項3に記載の方法。
【請求項6】
前記サーバシステムは、複数のクライアントシステムにより共有して利用可能である、請求項2に記載の方法。
【請求項7】
前記変換ノードは、前記プロセスプロトコルを所定のデータ構造に従って生成し、前記所定のデータ構造は、少なくとも
前記それぞれのプロセスステップの前記プロセスインスタンスの一意の識別子が記憶されている、第1の属性と、
前記それぞれのプロセスステップの識別子が記憶されている、第2の属性と、
プロセスインスタンス内の前記プロセスステップの順序が記憶されている、第3の属性と、を含み、
前記データ構造内の前記ストレージノードは、プロセスインスタンスに属する前記プロセスステップを前記第3の属性に従ってソートし、前記記憶装置に記憶する、請求項3に記載の方法。
【請求項8】
プロセスインスタンスに属する前記プロセスステップは、前記第3の属性に従ってソートされ、隣接するアドレスで前記記憶装置に記憶される、請求項7に記載の方法。
【請求項9】
前記制御命令は、前記ランタイムコンポーネントにより前記第1の抽出ノードに送信される少なくとも1つの抽出命令を含み、前記少なくとも1つの抽出命令は、前記第1の抽出ノードに、所定のプロセスデータを前記ソースデータから抽出させ、前記抽出されたプロセスデータを前記サーバシステムの前記ストレージノードに転送させる、請求項3に記載の方法。
【請求項10】
前記第1の抽出ノードは、前記ランタイムコンポーネント
が登録された第1の抽出ノードをクライアントシステムに一意的に割り当てることができるように、前記ランタイムコンポーネントにおいて登録するように適合されている、請求項3に記載の方法。
【請求項11】
前記サーバシステムにおいて少なくとも1つの第2の抽出ノードが実行され、前記第2の抽出ノードは、前記ランタイムコンポーネントにより前記第2の抽出ノードに送信され
る少なくとも1つの抽出命令に従って、前記少なくとも1つのクライアントシステムに記憶された前記ソースデータからプロセスデータを抽出し、前記抽出されたプロセスデータを前記サーバシステムの前記ストレージノードに転送する、請求項10に記載の方法。
【請求項12】
前記ランタイムコンポーネントは、前記ソースデータが記憶されている前記それぞれのクライアントシステムに応じて、前記少なくとも1つの抽出命令を前記第1の抽出ノードまたは前記第2の抽出ノードに送信する、請求項11に記載の方法。
【請求項13】
前記抽出されたプロセスデータおよび前記プロセスプロトコルはそれぞれ、前記それぞれのクライアントシステムに割り当てられたキーで暗号化され、前記キーは、前記アプリケーションを前記それぞれのクライアントシステム用に構成するときに生成される、請求項3に記載の方法。
【請求項14】
前記抽出されたプロセスデータおよび前記プロセスプロトコルは、複数のストレージノードに分散される、請求項3に記載の方法。
【請求項15】
前記制御命令は、前記ランタイムコンポーネントにより前記少なくとも1つの変換ノードに送信される少なくとも1つの変換命令を含み、前記少なくとも1つの変換命令は、前記それぞれの変換ノードに、所定のプロセスデータから前記プロセスプロトコルを生成させる、請求項3に記載の方法。
【請求項16】
前記少なくとも1つの変換命令は、複数の変換ノードで並行して実行される、請求項15に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、分散型ITインフラストラクチャにおいてプロセスプロトコルを生成するための方法に関する。
【従来技術】
【0002】
コンピュータシステムにおいてまたはコンピュータシステムを用いて実行されるプロセスを分析することは、公知である。この場合、プロセスは、複数のプロセスステップを含むことができる。それぞれのプロセスステップは、通常、コンピュータシステムに記憶されるデータを生成する。これらの記憶されたデータから、プロセスの分析に関連する情報を抽出できる。プロセスはまた、ビジネスプロセスであってもよい。このようにして、例えば、ERPシステムで実行されたトランザクションを分析できる。ただし、プロセスはまた、技術プロセスであってもよい。
【0003】
この場合、プロセスの分析は、ソースシステムで行われる。すなわち、データが生成かつ記憶されるコンピュータシステムで行われる。この場合、それぞれのソースシステムで実行されたプロセスだけしか分析できないことが欠点である。更にこの場合、プロセス分析は、データの量によっては非常に計算の負荷が高い可能性があるため、ソースシステムが対応するリソースを利用できない場合には、分析を効率的に実行できない場合が多いことが欠点である。
【0004】
この欠点に対処するために、代わりに、プロセスの分析はまた、対応するリソースを使用できる別のコンピュータシステム(以下、サーバシステムとも称する)で実行してもよい。実行されたプロセスにより生成され、ソースシステム(以下、クライアントシステムとも称する)に記憶されたデータは、そのために最初にソースシステムからサーバシステムに伝送される。このようにして、異なるソースシステムで実行されたプロセスもまた、サーバシステムで分析できる。
【0005】
この場合、一方では、分析対象となるプロセスに属するすべてのデータをソースシステムからサーバシステムに伝送する必要があるという欠点がある。その場合、分析に不要なデータもまた不必要に伝送されるのは、多くの場合、ソースシステムには、分析対象となるプロセスのどのデータがサーバシステムに実際に必要なのかに関する情報がないためである。
【0006】
これに加えて、ソースシステムとサーバシステムとの間の通信リンクの信頼性は、利用可能な通信プロトコルにより主に決定されている。転送速度は、主に通信リンクの帯域幅により決定されている。
【0007】
他方では、サーバシステムがソースシステムに直接アクセスできない場合、データの伝送は、かなりの手間を伴う。データを最初にソースシステムにエクスポートしてから、続いてサーバシステムにインポートする必要がある。そのために必要なソースシステムまたはクライアントシステムのプロビジョニングまたはコンフィグレーションは、特にクライアントシステムおよびプロセス分析が実行されるサーバシステムが異なる組織に割り当てられている場合、技術的に複雑であり手間がかかる。例えば、サービスプロバイダがいくつかの顧客に対してプロセス分析を実行する場合、それぞれの顧客は、データ伝送に必要なそれぞれのクライアントシステムのプロビジョニングを実行する必要がある。この場合、アドホックプロセス分析は、もはや不可能であるか、またはいずれにしても非常に困難になる。
【発明の概要】
【本発明が解決しようとする課題】
【0008】
したがって、本発明の課題は、異なるコンピュータシステムで実行されたプロセスのより効率的かつ簡単な分析を可能にする解決策を提供することである。
【課題を解決するための手段】
【0009】
本課題は、本発明によれば、独立請求項に記載の方法により解決される。本発明の有利な実施形態および発展形態は、従属請求項に明記されている。
【0010】
したがって、少なくとも1つの抽出ノードと、少なくとも1つのストレージノードと、少なくとも1つの変換ノードと、を備えるITシステムにおいて、プロセスデータからプロセスプロトコルを生成するための方法が提供され、プロセスデータは、ITシステムの少なくとも1つのクライアントシステムに記憶され、
ITシステムのサーバシステムにおいて、アプリケーションカタログが実行され、
アプリケーションカタログを用いて、いくつかのアプリケーションテンプレートが管理され、それぞれのアプリケーションテンプレートは、インストールプログラムおよびコンフィグレーションデータを含み、
インストールプログラムを用いて、それぞれのアプリケーションテンプレートは、インスタンス化され、構成されて、サーバシステムにおいてアプリケーションとして実行され、
実行されるアプリケーションは、サーバシステムで実行されるランタイムコンポーネントにより監視かつ管理され、
ノードで実行されるいくつかの制御命令に従って、プロセスプロトコルは、プロセスデータから決定され、それぞれのアプリケーションのコンフィグレーションデータは、どのノードでどの制御命令が実行されるのかに関する情報を含む。
【0011】
アプリケーションカタログを使用すると、サーバシステムおよびいくつかのクライアントシステムからなる分散型ITインフラストラクチャの簡単なプロビジョニングまたはコンフィグレーションが可能になり、いくつかのクライアントシステムに記憶されているプロセスデータからプロセスプロトコルが生成される。それぞれの顧客ごとまたはそれぞれのクライアントシステムごとに、少なくとも1つのアプリケーションがサーバシステムで実行される。それぞれのアプリケーションは、コンフィグレーションデータの一部であってもよい所定の顧客設定に従って、顧客固有またはクライアント固有に構成される。コンフィグレーションデータ(例えば、クライアントシステムのアドレス、認証手順、パスワード、言語設定など)は、特定のアプリケーション(アプリケーションテンプレートの特定のインスタンス)に割り当てられ、したがって特定のクライアントシステム(顧客)に割り当てられ、コンフィグレーションデータは、どのノード(抽出ノード、ストレージノード、変換ノード)でどの制御命令が実行されるのかを示すため、アプリケーションのインスタンス化により、技術的に特に簡単な手法で、分散型ITインフラストラクチャのクライアント固有または顧客固有のプロビジョニングが可能になる。例えば、抽出ノードをクライアントシステムで実行し、ストレージノードおよび変換ノードをサーバシステムで実行することを、コンフィグレーションデータにより確定できる。一方ではこれにより、顧客は、追加のコンフィグレーションなしで顧客固有のITインフラストラクチャを分散型ITインフラストラクチャに統合できる。他方では、顧客は、そのためにITインフラストラクチャに変更する必要なく、クライアントシステムと、抽出ノードと、ストレージノードとの間の最適化された伝送プロトコルにより利益を得る。
【0012】
顧客がインスタンス化したすべてのアプリケーションおよびそれらの抽出を処理できるために、分散型抽出ノードを抽象化することにより、同じ抽出インフラストラクチャを使用できる。
【0013】
少なくとも1つのクライアントシステムは、通信ネットワークを介してサーバシステムに接続でき、プロセスデータは、少なくとも1つのクライアントシステムにおいて少なくとも1つのプロセスを実行することにより生成され、クライアントシステムに記憶され、クライアントシステムに記憶されたソースデータの一部であり、プロセスデータは、いくつかのプロセスインスタンスのデータを含み、プロセスインスタンスのデータは、クライアントシステムで実行され、いくつかのプロセスステップを含むプロセスを表す。
【0014】
クライアントシステムは、例えば、顧客のためにプロセス分析を実行するサービスプロバイダの顧客のコンピュータシステムである。サーバシステムは、例えば、サービスプロバイダのコンピュータシステムである。サーバシステムは、クラウドコンピューティングシステムであってもよい。クライアントシステムは、同様にクラウドコンピューティングシステムであってもよい。クライアントシステムおよびサーバシステムは共に、抽出ノード、ストレージノード、変換ノードからなる分散型ITインフラストラクチャ(ITシステム)を形成する。
【0015】
有利であるのは、
少なくとも1つのクライアントシステムにおいて、第1の抽出ノードが実行され、
サーバシステムにおいて、少なくとも1つの変換ノードおよび少なくとも1つのストレージノードが実行され、
第1の抽出ノードが、制御命令に従って、クライアントシステムに記憶されたソースデータからプロセスデータを抽出し、抽出されたプロセスデータをサーバシステムのストレージノードに転送し、
ストレージノードが、抽出されたプロセスデータを抽出ノードから受け取り、サーバシステムの記憶装置に記憶し、
変換ノードが、制御命令に従って、記憶装置に記憶されたプロセスデータからプロセスプロトコルを生成して、生成されたプロセスプロトコルを記憶装置に記憶するためにストレージノードに送信する場合である。
【0016】
クライアントシステムで第1の抽出ノードを実行することにより、クライアントシステムは、分散型ITインフラストラクチャに「統合」される。クライアントシステムで実行される第1の抽出ノードの制御は、制御命令を用いて行われ、クライアントシステムに割り当てられ、サーバシステムで実行されるアプリケーションにより、どの制御命令が第1の抽出ノードで実行されるのかが確定される。
【0017】
したがって、クライアントシステムでのプロセスデータの抽出およびサーバシステムのストレージノードへの抽出されたプロセスデータの転送は、対応するアプリケーションにより制御され、アプリケーションはまた、サーバシステムのランタイムコンポーネントにより監視される。クライアントシステムで実行される第1の抽出ノードは、サーバシステムにある対応するアプリケーションにより制御されるため、これに加えて、クライアントシステムにおいて、プロセスデータの分析に実際に必要なそれぞれのプロセスデータのみがソースデータから抽出されることが可能であり、これにより、分析に不要なデータがクライアントシステムからサーバシステムに転送されることが回避される。
【0018】
この場合、クライアントシステムを分散型ITインフラストラクチャに「統合」するために、アプリケーションカタログ由来のアプリケーションをインスタンス化するだけでよく、クライアントシステムの対応するノード(例えば、抽出ノード)を実行するだけでよいことが有利である。
【0019】
更にこの場合、(抽出ノードがクライアントシステムで実行される場合)クライアントシステムから抽出ノードへの通信パスは、大幅に短縮され、サーバシステムのストレージノードへのデータの送信のために最適な通信プロトコルおよび圧縮方法を選択できることが有利である。これにより、クライアントシステムにより提供される通信プロトコルおよび交換フォーマットへの依存が回避される。
【0020】
ここで、レガシーデータベースの例としては、その接続が圧縮をサポートしないクライアントシステムを挙げることができる。クライアントシステムに抽出ノードをインストールすることにより、クライアントシステムの顧客インフラストラクチャ内の高性能ネットワークを使用して、レガシーデータベースへの接続を構築できる。次いで、抽出ノードにおいて、データをパケット化して圧縮し、続いてより性能が低いWANを介してサーバシステムのストレージノードに転送できる。
【0021】
第1の抽出ノードは、抽出されたプロセスデータをサーバシステムのストレージノードに転送するためにどの通信プロトコルを使用するのかを規定できる。
【0022】
第1の抽出ノードは、抽出されたプロセスデータをサーバシステムのストレージノードに転送する前に、抽出されたプロセスデータを処理できる、特に、最適化かつ/または圧縮できる。
【0023】
有利であるのは、サーバシステムを複数のクライアントシステムで共有して利用可能な場合である。
【0024】
これに加えて有利であるのは、変換ノードが所定のデータ構造に従ってプロセスプロトコルを生成する場合であり、所定のデータ構造は、少なくとも
それぞれのプロセスステップのプロセスインスタンスの一意の識別子が記憶されている、第1の属性と、
それぞれのプロセスステップの識別子が記憶されている、第2の属性と、
プロセスインスタンス内のプロセスステップの順序が記憶されている、第3の属性と、を含み、
データ構造内のストレージノードは、プロセスインスタンスに属するプロセスステップを第3の属性に従ってソートし、記憶装置に記憶する。
【0025】
この場合、プロセスインスタンスに属するプロセスステップが、第3の属性に従ってソートされ、隣接するアドレスで記憶装置に記憶される場合、特に有利である。これにより、プロセス分析では、ストリームとしてのプロセスデータの処理を可能にすることができる。
【0026】
制御命令は、ランタイムコンポーネントにより第1の抽出ノードに送信される少なくとも1つの抽出命令を含むことができ、少なくとも1つの抽出命令は、第1の抽出ノードに、ソースデータから所定のプロセスデータを抽出させ、抽出されたプロセスデータをサーバシステムのストレージノードに転送させる。
【0027】
第1の抽出ノードは、ランタイムコンポーネントが登録された第1の抽出ノードをクライアントシステムに一意的に割り当てることができるように、ランタイムコンポーネントにおいて登録するように適合させることができる。
【0028】
本発明の一実施形態によれば、サーバシステムにおいて少なくとも1つの第2の抽出ノードを実行することができ、第2の抽出ノードは、ランタイムコンポーネントにより第2の抽出ノードに送信される少なくとも1つの抽出命令に従って、少なくとも1つのクライアントシステムに記憶されたソースデータからプロセスデータを抽出し、抽出されたプロセスデータをサーバシステムのストレージノードに転送する。
【0029】
ランタイムコンポーネントは、ソースデータが記憶されているそれぞれのクライアントシステムに応じて、少なくとも1つの抽出命令を第1の抽出ノードまたは第2の抽出ノードに送信できる。
【0030】
抽出されたプロセスデータおよびプロセスプロトコルは、それぞれのクライアントシステムに割り当てられたキーを用いてそれぞれ暗号化でき、キーは、それぞれのクライアントシステム用にアプリケーションを構成するときに生成される。
【0031】
抽出されたプロセスデータおよびプロセスプロトコルは、複数のストレージノードに分散できる。
【0032】
制御命令は、ランタイムコンポーネントにより少なくとも1つの変換ノードに送信される少なくとも1つの変換命令を含むことができ、少なくとも1つの変換命令は、それぞれの変換ノードに、所定のプロセスデータからプロセスプロトコルを生成させる。
【0033】
少なくとも1つの変換命令は、複数の変換ノードで並行して実行できる。
【図面の簡単な説明】
【0034】
本発明の詳細および特徴ならびに本発明の具体的な実施形態は、図面と併せて以下の説明から明らかとなる。
【
図1】ITインフラストラクチャのブロック図であり、それに基づいて、分散型ITインフラストラクチャにおいてプロセスプロトコルを生成するための本発明による方法が説明される。
【
図2】抽出ノードがサーバシステムで実行されるITインフラストラクチャの具体例のブロック図である。
【
図3】抽出ノードがクライアントシステムで実行されるITインフラストラクチャの具体例のブロック図である。
【発明を実施するための形態】
【0035】
図1、
図2および
図3はそれぞれ、本発明によるITシステムのブロック図を示す。ITシステムは、それぞれ分散インフラストラクチャとして形成され、サーバシステム10および少なくとも1つのクライアントシステムを含み、
図1および
図2には、複数のクライアントシステム20a~20nが示されている。
【0036】
クライアントシステム20a~20nは、図面に図示していない通信ネットワークを介してサーバシステム10に接続されている。通信ネットワークは、例えば、インターネットであってもよい。
【0037】
クライアントシステムはそれぞれ、記憶装置およびデータ処理装置を備えるコンピュータシステムを含むことができる。クライアントシステムは、ここではそれぞれ特定の企業に割り当てられている。クライアントシステムはそれぞれ、いわゆるクラウドコンピューティングシステムであってもよい。
【0038】
サーバシステムは、記憶装置およびデータ処理装置を備えるコンピュータシステムを含み、複数の分散型記憶装置および複数の分散型データ処理装置が設けられていてもよい。本発明の一実施形態では、サーバシステム10は、いわゆるクラウドコンピューティングシステムであり、クラウドコンピューティングシステムを用いて、例えば、ストレージスペースおよびコンピューティングパワーなどの特定のITインフラストラクチャが提供される。
【0039】
本実施例では、サーバシステムは、複数の顧客に対してプロセス分析を実行するサービスプロバイダに割り当てられている。クライアントシステムはそれぞれ、サービスプロバイダの顧客に割り当てられている。
【0040】
クライアントシステム20a~20nは、サーバシステム10を実質的に同時に共有して利用できる。これに関連して、サーバシステム10は、「共有インフラストラクチャ」とも称する。「共有して利用する」とは、クライアントシステムがサーバシステムのストレージスペースおよびコンピューティングパワーの両方を共有して利用できること、またはサーバシステムが複数のクライアントシステムによるストレージスペースおよびコンピューティングパワーの共有使用を可能にすることを意味する。
【0041】
ビジネスプロセスまたは技術プロセスは、企業内で(すなわち、顧客側で)実行される。これらのビジネスプロセスまたは技術プロセスは、それぞれのクライアントシステムを用いて、全体的または部分的に実行される。ビジネスプロセスのための例は、例えば、注文処理、調達プロセスなどである。ビジネスプロセスは、通常、複数のビジネスプロセスステップからなる。実行されるビジネスプロセスは、ビジネスプロセスインスタンスと称する。技術プロセスの例は、例えば、自動車の組立であり、その組立では、センサを使用して、どの部品がいつ取り付けられるのかを検知する。このような技術プロセスもまた、複数のプロセスステップで構成されてもよい。
【0042】
ビジネスプロセスと技術プロセスは、以下ではまとめてプロセスと称する。実行されるプロセスはまた、以下ではプロセスインスタンスとも称する。プロセスまたはプロセスインスタンスのステップはまた、以下ではプロセスステップとも称する。プロセスステップは、プロセスインスタンスに一意的に割り当てられている。
【0043】
このようなプロセスをクライアントシステムで実行すると、クライアントシステムに記憶されるデータが、クライアントシステムに生成する。これらのデータをまとめてソースデータと呼ぶ。
【0044】
実行されるビジネスプロセスまたは実行される技術プロセス自体を記述するプロセスデータは、ソースデータの一部である。プロセスデータには、例えば、請求プロセスの開始時刻および終了時刻、または送金受領の日付が含まれる。一方で、請求プロセスにおける付加価値税番号は、具体的に実行されるビジネスプロセスのソースデータの一部であり得るが、付加価値税番号は、プロセスデータの一部ではない。技術プロセスの場合、プロセスデータは、例えば、組立時間および組立を実行する作業者の識別子を含むことができる。
【0045】
実行されたプロセスの分析に関連するデータであるような、実行されたプロセスインスタンスのデータは、プロセスデータと称する。
【0046】
それぞれのプロセスインスタンスは、それぞれのクライアントシステムにおいて独自のプロセスデータを作成する。
【0047】
ここに示す分散型ITインフラストラクチャおよび本発明による方法により、このとき、プロセスの実行中に複数のクライアントシステムで生成され、クライアントシステムに記憶されているプロセスデータを、効率的かつリソース節約的に分析すること、特にこれらのプロセスデータから効率的かつリソース節約的にプロセスプロトコルを生成することが可能となり、そのプロセスプロトコルは、実行されたプロセスの効率的な分析の基礎として使用できる。これに加えて、クライアントシステムを分散型ITインフラストラクチャに統合するために、クライアントシステムの簡単なプロビジョニングが可能になる。
【0048】
本発明によれば、プロセスプロトコルは、サーバシステムで生成され、サーバシステムによりプロセスの分析のために、いわゆるプロセスマイニングシステムに提供される。この場合、プロセスマイニングシステム自体は、サーバシステムの一部であってもよい。
【0049】
クライアントシステムにおいて生成かつ記憶されたプロセスデータからプロセスプロトコルを生成するには、最初にクライアントシステムのソースデータからプロセスデータを抽出する必要がある。次いで、抽出されたプロセスデータからプロセスプロトコルを生成できる。
【0050】
ソースデータからのプロセスデータの抽出および抽出されたプロセスデータからのプロセスプロトコルの生成は、以下で説明するように、抽出ノードまたは変換ノードを使用して実行される。
【0051】
本発明によれば、クライアントシステムでは、
サーバシステム10が(例えば、特定のAPI(アプリケーションプログラムインターフェース)を介して)ソースデータに直接アクセスできるクライアントシステムと、
サーバシステム10がソースデータに直接アクセスできないクライアントシステムとの間で区別される。
【0052】
例えば、
図1に示す分散型ITインフラストラクチャでは、サーバシステムは、クライアントシステム20aのソースデータに直接アクセスできないが、クライアントシステム20m、20nのソースデータに直接アクセスすることは可能である。
【0053】
図2に示す分散型ITインフラストラクチャの具体例では、サーバシステム10は、クライアントシステム20mおよび20nのソースデータに直接アクセスできる。クライアントシステム20nは、例えば、Salesforceシステム(SF)であってもよい。クライアントシステム20mは、例えば、ServiceNowシステム(SN)であってもよい。
【0054】
図3に示す分散型ITインフラストラクチャの具体例では、サーバシステム10は、例えば、SAPシステム(SAP)であってもよいクライアントシステム20aのソースデータに直接アクセスできない。
【0055】
それにもかかわらず、(サーバシステム10が直接アクセスしない)クライアントシステム20aのプロセスデータが、サーバシステムによりプロセスプロトコルの生成に利用可能であるように、本発明よれば、クライアントシステム20aで実行される第1の抽出ノードEK1をクライアントシステム20aに設けることが提供されている。第1の抽出ノードEK1は、クライアントシステム20aのソースデータQDからクライアントシステム20aに記憶されたプロセスデータを抽出し、抽出されたプロセスデータPDをサーバシステム10に転送するように適合されている。これにより、サーバシステムが依然としてクライアントシステム20aのソースデータにアクセスしないことが確実となる。他方では、サーバシステムにプロセスプロトコルの生成に必要なプロセスデータを提供できるようになる。
【0056】
第1の抽出ノードEK1によるソースデータからのプロセスデータの抽出は、ソースデータQDからどのデータをどの形式で抽出すべきかを指定する所定の規則に従って行われる。例えば、規則により、特定の期間内にクライアントシステム20aにおいて生成されたそのようなソースデータのみからプロセスデータを抽出すべきであることを指定できる。
【0057】
これらの所定の規則は、サーバシステム10で実行されるランタイムコンポーネントRKにより、1つの抽出命令EAの範囲内で、または複数の抽出命令EAの範囲内で、第1の抽出ノードEK1に提供できる。例えば、WebSocketプロトコルを使用するアップリンク(
図3を参照)を介して、サーバシステム10と第1の抽出ノードEK1との間で、抽出命令EAは、第1の抽出ノードEK1に転送される。
【0058】
第1の抽出ノードEK1により抽出されたプロセスデータPDは、サーバシステム10のストレージノードSKに転送される。ストレージノードSKは、サーバシステム10で実行され、第1の抽出ノードEK1から転送されたプロセスデータPDを受け取り、ストレージノードSKに割り当てられた記憶装置に記憶するように適合されている。
【0059】
プロセスデータPDの転送前に、プロセスデータPDは、第1の抽出ノードEK1により処理できる。例えば、抽出されたプロセスデータを最適化かつ/または圧縮できるため、クライアントシステム20aからサーバシステム10へのプロセスデータの最適化された転送が可能になる。追加的にまたは代替的に、抽出されたプロセスデータは、転送前に所定のデータ構造に変換できる。(必要に応じて処理された)プロセスデータPDは、アップリンクを介してストレージノードSKに転送できる。あるいは、
図3に示すように、プロセスデータPDは、例えば、httpプロトコルを使用して、抽出ノードEK1とストレージノードSKとの間で特にそのために設定された接続を介して転送できる。
【0060】
抽出されたプロセスデータPDをストレージノードSKに転送した後、プロセスデータPDは、サーバシステム10において、1つ以上のプロセスプロトコルPPを生成するために使用可能である。
【0061】
プロセスプロトコルを生成するために、少なくとも1つの変換ノードTKが設けられ、変換ノードTKは、サーバシステム10で実行され、ストレージノードSKに記憶されているプロセスデータから1つ以上のプロセスプロトコルPPを生成し、生成されたプロセスプロトコルをストレージノードSKに記憶するために転送するように適合されている。
【0062】
プロセスプロトコルPPは、本発明によれば、所定のデータ構造に従って変換ノードTKにより生成される。所定のデータ構造は、少なくとも
それぞれのプロセスステップのプロセスインスタンスの一意の識別子が記憶されている、第1の属性と、
それぞれのプロセスステップの識別子が記憶されている、第2の属性と、
プロセスインスタンス内のプロセスステップの順序が記憶されている、第3の属性と、を含む。
【0063】
第1の属性は、プロセスインスタンス(例えば、具体的なビジネスプロセスインスタンス)の一意の識別子である。第2の属性は、プロセスインスタンスのプロセスステップを示し、これは、プロセスステップの一意の識別子またはプロセスステップの説明であってもよい。第3の属性は、プロセスインスタンス内のプロセスステップの順序を指定する。
【0064】
第1の属性により、すべてのプロセスステップが具体的なプロセスインスタンスに割り当てられる。本発明の一実施形態では、第1の属性はまた、複合一意識別子(複合キー)であってもよい。
【0065】
一般に、第3の属性は、プロセスインスタンス内のプロセスステップの順序を規定する。本発明の一実施形態では、対応するプロセスステップがどの時点で実行されたのかを示す時点(日付/時刻)を第3の属性に記憶できる。それらの時点(例えば、タイムスタンプ)を使用すると、時間に関連した分析を実行でき、それにもかかわらずプロセスインスタンスのプロセスステップをソートできるという利点がある。
【0066】
本発明によれば、プロセスプロトコルまたはプロセスプロトコルに記憶されたデータセットは、最初に第1の属性に従ってソートされ、次いで第3の属性に従ってソートされ、このグループ化またはソートにおけるデータ構造は、ストレージノードSKにより記憶装置に記憶される。この場合、有利であるのは、ソートに従って互いに連続するプロセスステップが、記憶装置において隣接するメモリアドレスに記憶されている場合である。更に有利であるのは、記憶装置がメインメモリである場合である。
【0067】
上記で説明したように、プロセスインスタンス内のプロセスステップのソートおよび隣接して記憶することには、プロセスインスタンスがグループ化された形式であるという利点がある。その結果、ストリーム内のプロセスステップは、記憶装置から連続的かつ正しい順序で順番に読み取られて処理できる。これに加えて、プロセスインスタンス内のプロセスステップの先行/後続関係を有利な手法で計算できる。
【0068】
プロセスプロトコルの例を以下に示す。
【0069】
【0070】
プロセスプロトコルは、記憶装置に列指向で記憶できる。
【0071】
更に、サーバシステムに第2の抽出ノードEK2を設けることができ、第2の抽出ノードEK2は、サーバシステム10で実行され、サーバシステムが直接アクセスできるそれぞれのクライアントシステム20m、20nのソースデータQDからプロセスデータPDを抽出するように適合されている。第2の抽出ノードEK2の残りの機能は、第1の抽出ノードEK1の残りの機能に対応する。すなわち、第2の抽出ノードEK2により抽出されたプロセスデータPDは、記憶するためにストレージノードSKに転送される(また、必要に応じて事前に処理される)。第2の抽出ノードEK2は、この場合、クライアントシステム20m、20nの特定のAPIを利用して、クライアントシステム20m、20nのソースデータにアクセスできる。抽出命令EA2を使用して、ソースデータからどのデータを抽出すべきかを第2の抽出ノードEK2に通知する。
【0072】
図2に示したITインフラストラクチャの具体例では、第2の抽出ノードEK2は、それぞれのクライアントシステム20mおよび20nに対してそれぞれ設けられている。第2の抽出ノードEK2(SF抽出)により、クライアントシステム20n(Salesforce)からデータを抽出する。第2の抽出ノードEK2(SN抽出)により、クライアントシステム20m(ServiceNow)からデータを抽出する。この場合、それぞれのクライアントシステムに適合した異なる抽出命令EA2を両方の抽出ノードEK2に提供できる。
【0073】
前述のランタイムコンポーネントRKは、サーバシステムで実行される。ランタイムコンポーネントは、抽出ノードEK1、EK2、変換ノードTKおよびストレージノードSKを制御かつ監視し、これらのノードの制御は、制御命令のセットに従って実行される。それぞれのクライアントシステムに対して、および(以下で詳しく説明する)インスタンス化されたそれぞれのアプリケーションに対して、制御命令の個別のセットが提供されてもよい。
【0074】
ランタイムコンポーネントRKは、個々のノードEK1、EK2、TK、SKに制御命令を送信し、制御命令により、それぞれのノードに特定のタスクを実行させる。例えば、ランタイムコンポーネントRKは、抽出命令EA2を第2の抽出ノードEK2に送信することができ、抽出命令EA2により、第2の抽出ノードEK2に、(例えば、
図2に示すように)クライアントシステム20nのソースデータQDからプロセスデータPDを抽出させる。ランタイムコンポーネントはまた、対応する抽出命令EAを第1の抽出ノードEK1に送信できる。ランタイムコンポーネントRKが変換ノードTKに送信する変換命令TAにより、変換ノードTKに、ストレージノードSKに記憶された所定のプロセスデータPDからプロセスプロトコルPPを生成させ、生成されたプロセスプロトコルを記憶するためにストレージノードSKに転送させる。それに対応して、ストレージノードSKはまた、ストレージ命令(図示せず)により制御できる。このようにして、ストレージノードSKに、ストレージ命令により、特定のタイプの分析のための特定のプロセスプロトコルを処理させることができる。
【0075】
有利であるのは、制御命令によりランタイムコンポーネントRKがデータのクライアントシステム関連の処理のみを可能にする場合、すなわち、制御命令により、ノードに特定のクライアントシステムのデータを処理させるのみである場合である。これは、同様にランタイムコンポーネントを用いて制御できる。
【0076】
したがって、制御命令自体は、様々なクライアントシステムに記憶されたソースデータからプロセスプロトコルを生成する方法、および、様々なクライアントシステムのソースデータにアクセスできる方法を定義する。
【0077】
有利には、ランタイムコンポーネントRKは、ソースデータQDからのプロセスデータPDの抽出から、それぞれのプロセスプロトコルPPの作成および記憶までの全手順を制御する。
【0078】
ソースデータQDからプロセスデータPDを抽出してから、それぞれのプロセスプロトコルPPの作成および記憶までの方法の手順を以下にまとめて示す。
【0079】
第1のステップでは、抽出ノードEK1またはEK2は、特定のクライアントシステムのソースデータからプロセスデータPDを抽出し、抽出したプロセスデータをストレージノードSKに転送させる。プロセスデータPDの抽出は、それぞれの抽出ノードに送信される1つ以上の抽出命令EA、EA2を用いて、ランタイムコンポーネントRKにより制御される。
【0080】
抽出ノードEK1は、例えば、サーバシステムが(例えば、
図3に示すように)このクライアントシステムのソースデータまたはプロセスデータに直接アクセスできない場合、クライアントシステムで実行できる。これにより、サーバシステムにクライアントシステムのソースデータQDへのアクセスを確保するインターフェースを、クライアントシステムに設ける必要がない。プロセスデータPDが抽出されるソースデータQDへのアクセスは、クライアントシステムの抽出ノードEK1を通してのみ行われる。抽出ノードEK1がソースデータから、サーバシステムのプロセス分析に絶対に必要なそのようなデータ(プロセスデータ)のみを抽出し、サーバシステムのストレージノードSKに転送するため、データのセキュリティをそのように包括的に確保できる。
【0081】
第1の抽出ノードEK1がクライアントシステムで実行される場合、更に第1の抽出ノードEK1とストレージノードSKとの間の通信のために、接続のタイプ(例えば、不安定な接続、低帯域幅での接続)用に最適化された通信プロトコルおよび最適化された交換フォーマット(例えば、パケットサイズ、圧縮)が使用でき、これらにより、直接アクセスに比べて、抽出パフォーマンスおよび抽出信頼性の大幅な向上が可能となる。比較的必要となる帯域幅およびストレージスペースを削減することにより、更に、動作の大幅な節約が可能となる。
【0082】
第2のステップでは、ストレージノードSKは、抽出されたプロセスデータPDを抽出ノードEK1、EK2から受け取り、プロセスデータPDをストレージノードに割り当てられた記憶装置に記憶する。任意選択的に、ストレージノードSKは、プロセスデータを記憶する前に処理してもよいか、または処理済みの形式で記憶してもよい。
【0083】
第3のステップでは、変換ノードTKは、ストレージノードSKに記憶されたプロセスデータPDからプロセスプロトコルPPを生成し、生成されたプロセスプロトコルをストレージノードSKに再び転送する。
【0084】
第4のステップでは、ストレージノードSKは、生成されたプロセスプロトコルPPを受け取り、プロセスプロトコルPPを所定のデータ構造として記憶装置に記憶する。
【0085】
第4のステップの後、プロセスプロトコルをプロセスマイニングシステムによる評価のために使用できる。
【0086】
クライアントシステムのデータ、すなわち、抽出されたプロセスデータ、およびこのプロセスデータから生成されたプロセスプロトコルは、好適には、クライアント固有のキーで暗号化されて、他のクライアントシステムによるこれらのデータへのアクセスを防ぐ。個々のノードにデータへの対応するアクセスを可能とするために、ランタイムコンポーネントは、データの復号化にそれぞれ必要なキーをノードに提供できる。キー自体は、ランタイムコンポーネントRKにより管理される。
【0087】
第1の抽出ノードEK1がソースデータからプロセスデータを抽出し、抽出したプロセスデータをサーバシステムのストレージノードSKに転送できるように、第1の抽出ノードEK1は、ランタイムコンポーネントRKに登録されることが企図されている。この登録により、ランタイムコンポーネントは、どの具体的な第1の抽出ノードEK1なのか、どのクライアントシステムにこの抽出ノードが割り当てられているのか、および、どの抽出命令を必要に応じてこの抽出ノードに送信できるのか、を認識する。その手順は、次のとおりである。
【0088】
第1の抽出ノードEK1または第1の抽出ノードEK1を表すプログラムは、対応するクライアントシステム20aにインストールされる。
【0089】
プログラムは、キーを生成し、キーは、ランタイムコンポーネントに転送されて、ランタイムコンポーネントに記憶される。
【0090】
ランタイムコンポーネントは、この第1の抽出ノード用に登録URLを生成し、この登録URLにより、第1の抽出ノードは、サーバシステムに自身を登録する。
【0091】
ここで、第1の抽出ノードEK1は、サーバシステム用にまたはクラスタで使用可能であり、ランタイムコンポーネントにより使用可能である。技術的観点から、ランタイムコンポーネントは、第1の抽出ノードと直接通信しないが、クラスタアドレスを呼び出す。次いで、サーバシステムのクラスタマネジャーは、サーバシステムと第1の抽出ノードとの間のデータ転送を調整する。
【0092】
サーバシステムのスケーラビリティを達成するために、複数の第2の抽出ノードEK2、複数の変換ノードTKおよび複数のストレージノードSKをサーバシステムで使用し、必要に応じて、更なる第2の抽出ノードEK2、変換ノードTKおよびストレージノードSKをサーバシステムに追加することを提供してもよい。この場合、プロセスデータまたはプロセスプロトコルを様々なストレージノードに記憶し、異なるプロセスプロトコルを生成するために様々な変換ノードを提供することが有利であってもよい。この場合、ランタイムコンポーネントは、本発明による方法の実行のために、それぞれ対応するノードをアドレス指定するように適合させることができる。すなわち、ランタイムコンポーネントは、クライアントシステムのデータの処理に使用すべき1つ以上の抽出ノード、変換ノードおよびストレージノードをクライアントシステムに割り当てることができる。次いで、ランタイムコンポーネントは、これらのノードに対応する制御命令を送信できる。これは、ランタイムコンポーネントが、上記で説明した方法の個々のステップをそれぞれのノードに自動的に分散できることを意味する。
【0093】
複数の抽出ノード、変換ノードおよびストレージノードが存在する場合、そのような制御命令は、様々なクライアントシステムに記憶されているソースデータからプロセスプロトコルを生成する方法およびどのノードを用いるのかを定義する。
【0094】
本発明によれば、本発明の中心的な構成要素として、いくつかのアプリケーションが管理されるアプリケーションカタログがサーバシステムに提供されている。これらのアプリケーションは、以下では「マイニングアプリ」とも称する。
【0095】
それぞれのアプリケーションまたはマイニングアプリは、インストールプログラムおよびインストールプログラムに帰属するコンフィグレーションデータからなる。インストールプログラムを用いて、クライアントシステムごとにマイニングアプリをインスタンス化し、サーバシステムで実行できる。クライアントシステム用にインスタンス化されたマイニングアプリは、ランタイムコンポーネントにより管理される。コンフィグレーションデータは、どのノードでどの制御命令を実行すべきなのか、または本発明による方法のどのステップがどのノードでどのクライアントシステムのために実行すべきなのか、に関する情報を含む。第1の抽出ノードを登録することにより、これらの抽出ノードはまた、それぞれのマイニングアプリに認識され、マイニングアプリにより使用できる。インスタンス化され、クライアントシステムに割り当てられたマイニングアプリにより、抽出ノードEK1、EK2、変換ノードTKおよびストレージノードSKは、制御かつ監視される。
【0096】
それぞれのマイニングアプリは、具体的なクライアントシステムに割り当てられているため、制御命令もまたそれぞれのクライアントシステムに割り当てられている。それにより、例えば、第1のクライアントシステム用に第2のクライアントシステムとは異なる抽出命令を提供できる。
【0097】
図2に示す具体例では、マイニングアプリAPP(SF)が実行される。このマイニングアプリAPP(SF)は、クライアントシステム20nに割り当てられており、したがって、第2の抽出ノードEK2(SF抽出)に、クライアントシステム20nに適合されている抽出命令EA2を提供できる。それに対応して、マイニングアプリAPP(SF)は、変換ノードTKに、クライアントシステム20nから抽出されたプロセスデータPDを変換するように適合されている変換命令TAを提供できる。同様のことがクライアントシステム20mにも当てはまる、すなわち、このクライアントシステム用に適合されたマイニングアプリが実行される。
【0098】
図3に示す具体例では、マイニングアプリAPP(SAP)が実行される。このマイニングアプリAPP(SAP)は、(サーバシステムが直接アクセスしない)クライアントシステム20aに割り当てられ、したがって、クライアントシステム20aで実行される第1の抽出ノードEK1に、クライアントシステム20a用に適合されている抽出命令EAを提供できる。それに対応して、マイニングアプリAPP(SAP)は、変換ノードTKに、クライアントシステム20aから抽出されたプロセスデータPDを変換するように適合されている変換命令TAを提供できる。
【0099】
本発明による分散型インフラストラクチャまたは本発明による方法により、サーバシステムがクライアントシステムのソースデータに直接アクセスしない場合であっても、異なるクライアントシステムからプロセスデータを抽出し、抽出されたプロセスデータからプロセスプロトコルを生成することがサーバシステムには可能である。この場合確実に、プロセスデータおよびプロセスプロトコルには、それぞれ承認されたクライアントシステムによってのみアクセスできる。
【0100】
更に、対応するマイニングアプリにより制御される追加の抽出ノードによりインフラストラクチャ全体を拡張して、そうしなければインフラストラクチャがアクセスしないソースデータからプロセスデータを抽出できる。これに加えて、インフラストラクチャは、追加の変換ノード、抽出ノードおよびストレージノードを追加することにより、任意に拡張可能である。
【0101】
この場合、インフラストラクチャを追加のクライアントシステムに関して特に容易に拡張できることが、特に有利である。追加のクライアントシステムは、対応する抽出ノードのみが必要であり、サーバシステムには、この追加のクライアントシステム用のマイニングアプリのみをインスタンス化かつ構成するだけでよい。
【0102】
アプリケーションカタログを用いて、それぞれのクライアントシステム用にマイニングアプリを(対応するマイニングアプリをインスタンス化することにより)サーバシステムに追加し、アプリケーションカタログをクライアントシステムごとに適合させる必要なく、サーバシステムで実行できる。コンフィグレーションデータを用いて、それぞれのマイニングアプリインスタンスをそれぞれのクライアントシステムに適合できる。
【0103】
これにより、サーバシステム、特にクラウドシステムを特に効率的に利用でき、最大限のデータセキュリティが確保される方法が提供される。そのようにして、例えば、特定のクライアントシステムに、このクライアントシステムのプロセスプロトコルの生成にのみ使用できる具体的な抽出ノード、変換ノードおよびストレージノードを割り当てることが可能である。これにより確実に、個々のノードが、このクライアントシステムに由来するデータのみを処理する。これに加えて、そのようにして、サーバシステムをより効率的に利用できるのは、実際に必要とされるそれぞれのノードのみを実行すればよいため、すなわち、実行すべきノードに対してのみ対応するリソースをサーバシステムで予約するだけでよいためである。
【0104】
本発明による方法は、プロセスデータが抽出されるソースデータが記憶されている1つ以上のクライアントシステムを参照して上記で説明されてきた。
【0105】
クライアントシステムは、複数のコンピュータシステムを含んでもよく、それぞれのクライアントシステムは、企業または顧客に割り当てられている。
参照番号:
10 サーバシステム(例えば、クラウドまたはクラウドコンピューティングシステム)
20a~20m、20n クライアントシステム
EA 抽出命令(制御命令)
EA2 抽出命令(制御命令)
EK1 第1の抽出ノード(クライアントシステムで実行)
EK2 第2の抽出ノード(サーバシステムで実行)
PD プロセスデータ
PP プロセスプロトコル
QD ソースデータ
SK ストレージノード(複数)
TA 変換命令(制御命令)
TK 変換ノード(複数)