Process Discovery Analyzer クラスタ

機械学習アルゴリズムを使用した自動プロセス検出を行って Process Discovery のデータ フローが増大した場合は、より多くの処理能力が必要となります。効率的かつ効果的なデータ処理に対するニーズを合理的に行うために、Process Discovery 11.1 では、高パフォーマンス ビッグデータ分析のための Analyzer クラスタ設定が導入されています。

Process Discovery Analyzer クラスタは Apache Spark テクノロジを基盤にしています。クラスタは、Process Discovery Analyzer アプリケーションを実行するクラスタ ノードとして機能する複数のコンピュータで構成された分散コンピューティング フレームワークです。Spark クラスタは、マスター ノードと 1 つ以上のワーカー ノードで構成されます。マスターおよび各ワーカー ノードには、同じ Analyzer アプリケーションがインストールされます。マスター ノードは、クラスタの作業を調整し、Analyzer ワーカー プロセスを実行してデータ処理に参加します。ワーカー ノードは、Analyzer ワーカー プロセスを実行してデータを分析します。異なる OS で実行されている Analyzer クラスタ ノードを混在させることができます。マスター ノードを割り当てるには、Management Console でそのアドレスを指定します。

Apache Spark クラスタ テクノロジーにより、ワーカー ノードと同様の処理能力とメモリ量を持つコンピュータが暗黙的に使用されます。クラスタ ノードとして使用するコンピュータ間で RAM と処理能力に大きな違いがある場合、Analyzer を実行するには、大量の RAM が搭載されたコンピュータでコンテナー (Docker コンテナーなど) を使用します。このようにすることで、処理能力が低いノードと同様の特性を持つ複数のクラスタを作成できます。

重要 ノードの中で最も処理能力の高いコンピュータをマスター ノードとして使用して、高い負荷を分散させることをお勧めします。

ノードの最小 (デフォルト) 数は 1 ノードです。Process Discovery Agents が収集するデータの量と分析時間の要件に応じて、必要な数のクラスタ ノードを追加できます。たとえば、Analyzer のデータ処理時間を短縮する場合は、クラスタにノードを追加してから処理時間を再度確認します。処理時間は、Kofax Analytics for RPA ビュー内の Process Discovery ビューのステータスレポートに表示されます。

2 倍の数のノードを追加した場合でも、ノードの調整およびノード間でのデータの送信にはある程度の時間がかかるため、処理時間は半分にはならないことに注意してください。この場合、ネットワーク遅延を削減すると、クラスタのパフォーマンスが向上します。また、非力なサーバーを複数追加するよりも、大容量の RAM を持つ 1 つの強力なサーバーをノードとして追加する方が効率的です。Analyzer はシステムで利用可能なすべての処理能力を使用するため、クラスタ内のノードとして専用のコンピュータを使用することをお勧めします。

Process Discovery Analyzer クラスタの設定
  1. Process Discovery Analyzer の [Process Discovery Analyzer] > [クラスタ設定] で、マスター ノードの割り当て、ネットワーク パターンの指定 (オプション)、その他の設定など、必要なすべてのパラメータを指定します。詳細については、Process Discovery Analyzer を参照してください。

    1. Analyzer クラスタ ワーカー ノードとして使用するコンピュータに Process Discovery Analyzer をインストールし、設定して、起動します。

    2. すべてのワーカー ノードを起動した後に、Analyzer クラスタ マスター ノードとして使用するコンピュータに Process Discovery Analyzer をインストールし、設定して、起動します。

    ノードで Analyzer アプリケーションのインスタンスを起動するときに、Analyzer クラスタ設定を定義した Management Console アドレスを指定します。必要に応じてその他のパラメータを指定します。詳細については、Process Discovery Analyzer を参照してください。

    すべてのノードが実行された後に、必要に応じてワーカー ノードを追加、削除、設定することができます。変更は、次の Analyzer の実行時に適用されます。

いずれかのワーカー ノードに障害が発生した場合は、基盤となる Apache Spark テクノロジがデータを保持し、作業ノード間で負荷を分散します。Analyzer の設定を変更した場合は、マスター ノードを再起動します。別のコンピュータをマスター ノードとして割り当てた場合は、現在のマスター ノードおよび新しく割り当てたマスター ノードを両方とも再起動します。たとえば、現在、クラスタに A、B、および C という 3 つのノードが含まれていて、「A」がマスター ノードになっているとします。この状況で「B」をマスター ノードとして割り当てた場合は、「A」と「B」を再起動します。

マスター ノードの Analyzer ログで outofmemory タイプのエラーが発生した場合は、Management Console の [設定] > [Process Discovery Analyzer] > [クラスタ設定] を開き、[マスター メモリ (GB)] 設定のメモリ容量を増やして、マスター ノードを再起動します。詳細については、Process Discovery Analyzerの「クラスタ設定」を参照してください。

クラスタ ノードの監視

Apache Spark クラスタには、ノードのアクティビティを監視するツールが含まれます。環境にクラスタをセットアップした後に、マスター ノード ダッシュボードを開いて、すべてのワーカー ノードが稼働していることを確認します。このダッシュボードには、実行中のアプリケーションおよび完了したアプリケーションに関するいくつかの基本情報、およびクラスタ ワーカーのリストが表示されます。リスト内のアプリケーション ID をクリックすると、アプリケーションの詳細を表示できます。ブラウザでマスター ノード ダッシュボードを開くには、マスターのアドレスの後に、Management Console の [マスター WebUI ポート] オプションで指定したポート番号を続けて入力します。例:

10.10.0.15:8080

リストのワーカー ID をクリックすると、ワーカー ダッシュボードを開くことができます。ブラウザでワーカー ダッシュボードを直接開くには、ワーカー アドレスの後に、Management Console の [ワーカー WebUI ポート] オプションで指定したポート番号を続けて入力します。例:

10.10.0.11:8081

マスター ノードとワーカー ノードのログは、一般的な Analyzer ログ ファイルと同じ場所にあります。システム内のログ ファイルを見つける方法についてには、Process Discovery Analyzer「ログ ファイル」セクションを参照してください。

Apache Spark クラスタの詳細については、https://spark.apache.org/ にある Apache Spark のドキュメントを参照してください。