21 Oracle Business Activity Monitoringのチューニング
Oracle Business Activity Monitoring (BAM)をチューニングし、企業のビジネス・サービスおよびプロセスをモニタリングする際のパフォーマンスを最適化できます。
- Oracle Business Activity Monitoringについて
Oracle Business Activity Monitoring (BAM)は、エンタープライズ内のビジネス・サービスおよびプロセスを監視するためのツールを提供します。 - BAMサーバーのパラメータのチューニング
チューニングに関する特定の考慮事項に従うことによって、BAMサーバーのパフォーマンスを向上させることができます。 - その他のチューニング戦略
Oracle BAMの実行が予想よりも遅い場合は、その他のチューニング戦略を試すことができます。
親トピック: SOA Suiteのコンポーネント
Oracle Business Activity Monitoringについて
Oracle Business Activity Monitoring (BAM)は、企業のビジネス・サービスおよびプロセスをモニタリングするためのツールを備えています。
これにより、市場の指標を実際のビジネス・プロセスと相関させることや、ビジネス・プロセスをすばやく変更したり、ビジネス環境の変化に応じて修正を加えたりすることが可能になります。
Oracle BAMには、ダッシュボードの構築に必要なツールやランタイム・サービスも用意されています。ダッシュボードでは、リアルタイムのデータ・フローを表示し、指定した条件に従ってアラートを送信するルールを定義することができます。
BAMインストールのパフォーマンスをモニタリングする方法の詳細は、『Oracle BAMでのビジネス・アクティビティのモニタリング』のOracle BAMパフォーマンスのモニタリングに関する項を参照してください。
BAMサーバーのパラメータのチューニング
チューニングに関する特定の考慮事項に従うことによって、BAMサーバーのパフォーマンスを向上させることができます。
BAMパフォーマンスは、次のコンポーネントのパフォーマンスに大きく依存します。
-
Weblogic Server。『Oracle WebLogic Serverのパフォーマンスのチューニング』を参照してください。
-
Metadata Service。Oracle Metadata Serviceのチューニングを参照してください。
-
Coherence。『Oracle Coherenceの管理』を参照してください。
-
ADF。Oracle Application Development Framework (ADF)のチューニングを参照してください。
-
データベース設定。データベース・パラメータのチューニングを参照してください。
-
Java仮想マシン(JVM)。『Oracle WebLogic Serverのパフォーマンスのチューニング』のJava仮想マシン(JVM)のチューニングに関する項を参照してください。
-
Oracle Platform Security Service。Oracle Fusion Middlewareのセキュリティのチューニングを参照してください。
BAMパフォーマンスも、設計時の優れたデータ・オブジェクト設計戦略に依存し、実行時に優れたデータ・オブジェクト・パージ戦略があることに依存します。
BAM 12cはさらに大きいボリューム(BAMへのデータ到着率)のトランザクションをサポートできますが、BAM 12cは運用分析製品であり、ビジネス・インテリジェンス製品ではありません。
このため、運用の意思決定の分析値に関するデータは、BAMに保管することをお薦めします。ほとんどの顧客にとって、これはおよそ5日から30日間のトランザクション・データをBAMに保管することを意味します。一般的にデータ・ウェアハウスと比較できる休止中のデータ・サイズは、運用の意思決定には有益でないため、そのようなデータ・ボリュームはBAM 12cの主なユースケースを構成しません。
表21-1で説明されているチューニングの提案は、BAMサーバーのパフォーマンス改善に使用できます。
表21-1 重要なBAMサーバー・チューニング
| パラメータ | 問題点 | チューニングに関する推奨事項 | トレードオフ |
|---|---|---|---|
|
デフォルト: |
データ・ソースへの同時接続の数が、常に上限に達しています。 |
パフォーマンスが直線的に拡張を続けるかぎり、数を増やします。 これはWebLogicレベルで設定されます。値は主に、プロセッサ数、リスニング・ソース・スレッド・モデル、および埋込みサーバーの最大同時リクエスト設定に基づいて決定できます。 |
数を増やすと、一般的にシステム・リソースの使用量が増えます。 |
|
デフォルト: |
DC接続が失われた後、ビューセットが残存しています。 |
ビューセットが残存しないように有効期限の値を減らします。 このパラメータを検索して変更する方法の詳細は、『Oracle BAMでのビジネス・アクティビティのモニタリング』のビューセットのモニタリングに関する項を参照してください。 |
なし。 |
|
デフォルト: |
問題を識別するには詳細な診断ログが必要です。 または システムは正常に実行されているため、詳細ログは必要ありません。 |
デフォルトの BAM診断フレームワークの使用の詳細は、『Oracle BAMでのビジネス・アクティビティのモニタリング』のBAM診断フレームワークの使用に関する項を参照してください。 |
システム速度が低下した場合、問題を識別するための詳細ログがありません。 |
|
デフォルト: |
ユーザーが、BAMのあるSOA Suiteインストールを高可用性に移行しようと考えています。BAMはリアルタイム・システムであるため、ASMを有効にする必要があります。 |
WSMよりも高可用性が早く発生するように、ASMが使用されます。BAMがリアルタイム・システムである場合、BAM HAにASMが必要です。 |
なし。 |
|
デフォルト: |
Oracle BAMの実行が遅く、メモリー不足の例外が発生します。 |
ヒープ・サイズを2GBに増やします。次のコマンドを使用し、引数として-Xms2048mおよび-Xmx2048mを指定します。
|
BAMのJVMヒープ・サイズを増やすと、他のSOAコンポーネントに影響を与える場合があります。 ヒープ・サイズのチューニングのヒントの詳細は、『Oracle WebLogic Serverのパフォーマンスのチューニング』のヒープ・サイズのチューニングのヒントに関する項を参照してください。 |
その他のチューニング戦略
Oracle BAMの実行が予想よりも遅い場合は、その他のチューニング戦略を試すことができます。
索引列の作成
エンタープライズ・メッセージ・ソースまたは他のソースからデータ・オブジェクトへのデータのスループットが遅い場合は、主キー列に索引列を作成してください。詳細は、『Oracle BAMでのビジネス・アクティビティのモニタリング』の索引列の追加に関する項を参照してください。
親トピック: その他のチューニング戦略
ロガーのチューニング
すべてのロガーに対するデフォルトのOracle Diagnostic LoggingレベルはNotificationです。ストレス・テスト用の環境や本番環境では、ERRORやWARNINGなどの最低限のロギング・レベルを使用することを検討してください。
BAMパフォーマンスに影響する可能性があるBEAMのロガーは次のとおりです。
oracle.beam.common.alertsengine oracle.beam.server.service.alertsengine oracle.beam.Common oracle.beam.cqservice oracle.beam.composer com.oracle.beam oracle.beam.datacontrol oracle.beam.datacontrol.management oracle.beam.server.service.ems oracle.beam.messaging oracle.beam.server.service.persistence oracle.beam.server.service.reportcache oracle.beam.security oracle.beam.mbean oracle.beam.shared oracle.beam.server oracle.beam.impexp.t2p oracle.beam
これらのロガーの検索およびそのOracle Diagnostic Loggingレベルの変更の詳細は、『Oracle SOA SuiteおよびOracle Business Process Management Suiteの管理』のログ・ファイルの構成に関する項を参照してください。
親トピック: その他のチューニング戦略
連続した問合せサービスのチューニング
連続した問合せサービス(CQS)は、Oracle Complex Event Processing Service Engineに含まれるContinuous Query Language (CQL)エンジンのBAM固有のラッパーです。CQSは純粋なプッシュ・システムです。問合せ結果は自動的に配信されます。CQSでは、ストリーム(非永続)とアーカイブされたリレーション(永続)データ・オブジェクトの両方がサポートされています。
問合せを作成すると、CQSでは、CQLエンジン内に表を設定し、問合せを登録して、永続性エンジンからのデータ変更をリスニングします。問合せ結果はCQLエンジン内で処理された後、CQSにプッシュされ、さらにレポート・キャッシュにプッシュされます。
パフォーマンスの問題に対する連続問合せのモニタリング方法の詳細は、『Oracle BAMでのビジネス・アクティビティのモニタリング』の連続した問合せのモニタリングに関する項を参照してください。現在のシステムがどのように実行されているか理解したら、表21-2に示すノブのチューニングによって、パフォーマンスの改善を試行できます。これらのパラメータのほとんどにとって、パフォーマンスを考慮したチューニングは、診断情報を失うことを意味することに注意してください。
表21-2 連続した問合せサービスのチューニング
| パラメータ | 問題点 | チューニングに関する推奨事項 |
|---|---|---|
|
デフォルト: なし |
ストリーム、アーカイブ済ストリームおよびアーカイブ済リレーションとして単純なデータ・オブジェクトを任意に指定しましたが、処理がわかりません。 |
履歴データに関心がない場合、データ・オブジェクトをストリームとして分類します。 各データ・オブジェクト・タイプおよび関連の詳細は、『Oracle BAMでのビジネス・アクティビティのモニタリング』のデータ・オブジェクト・タイプに関する項を参照してください。 |
|
デフォルト: 無効 |
デフォルトではデータ・オブジェクトの保存は設定されません。データ・オブジェクトに多くの行があると、パフォーマンスの問題を引き起こします。 |
顧客は、データ・オブジェクトの保存をデータ・オブジェクトの「保存」タブに設定して、データをデータ・オブジェクトに保持する日数を指定できます。指定した日数が経過すると、データ行は自動的にパージされます。 この設定を検索して変更する方法の詳細は、『Oracle BAMでのビジネス・アクティビティのモニタリング』のデータ・オブジェクトにおけるデータ保存の設定に関する項を参照してください。 |
|
|
アーカイブ済ストリーム・データ・オブジェクトのデータ解析が遅くなっています。 |
「リプレイ単位」または「リプレイ量」の指定を小さくして、メモリーに保持されている過去データの量を削減します。これによって、データベースから取得されたデータを解析するための時間およびメモリーが削減されます。 |
|
|
アクティブ・データ問合せを連続した問合せにし、メモリー不足の例外を受け取っています。 |
アクティブ・データ・ストリームの時間ウィンドウ・サイズを小さくします。これによって、ウィンドウが要素の格納に使用するメモリーの量が制限されます。 どのぐらいのウィンドウ・サイズがメモリー使用率に影響するかを調べるために、ウィンドウ・サイズ = 1時間(RANGE 1時間)およびイベント・サイズ = 100バイトのシナリオを想定します。イベント率が1000イベント/秒である場合、ウィンドウには満杯のときで1000 * 3600のイベントが含まれます。消費されるメモリーは1000 * 3600 * 100バイト = ~340MBです。 アクティブ・データ・ビューのウィンドウ・サイズを構成する方法の詳細は、『Oracle BAMでのビジネス・アクティビティのモニタリング』のビューでのアクティブ・データの有効化に関する項を参照してください。 |
|
デフォルト: 選択解除 |
データ集計をアクティブにするために、「アクティブ・データ縮小」のボックスを選択しています。より頻繁なスナップショットが必要であるか、メモリーの解放が必要です。 |
小さい「間隔」を定義して、ビューの更新を頻繁にし、メモリーに格納される集計済データの量を削減します。 評価間隔、イベント・サイズおよびイベント率に注意することによって、メモリー使用率を最大化できます。次の値を指定したとします。
集計ビューの最大サイズは5 * 60 * 1000 = 300,000イベント = ~28MBです。 「アクティブ・データ縮小」設定の検索の詳細は、『Oracle BAMでのビジネス・アクティビティのモニタリング』のアクティブ・データの使用に関する項を参照してください。 |
|
デフォルト: |
ディメンション表の連続した問合せが遅くなっており、メモリーを消費しています。 |
このプロパティを選択してアクティブ化します。これは、このディメンション表のデータ変更の頻繁が低いことを示します。 データ・オブジェクトの緩やかに変化するディメンションの指定の詳細は、『Oracle BAMでのビジネス・アクティビティのモニタリング』のデータ・オブジェクトの緩やかに変化するディメンションの指定に関する項を参照してください。 |
|
デフォルト: |
メモリー不足の例外が発生しており、問合せのほとんどが連続しています。 |
頻繁な出力が予想されない場合はスケジュール問合せ(SQL)を使用します。CQLはメモリーにデータを格納しますが、SQLにはJDBCリソースが含まれるため、これによってメモリーが節約されます。 |
親トピック: その他のチューニング戦略