SAPBO BI 4.0 Adaptive Processing Servers のベストプラクティス1
対象:
SAP BusinessObjects BI 4.0
概要:
このホワイトペーパーでは、SAP BusinessObjects Adaptive Processing Server のパフォーマンスを最適化する上で役立つベストプラクティス、調整、構成、設定およびトラブルシューティングを紹介します。詳細な説明は、他の多くのホワイトペーパーやノートで取り上げられています。このホワイトペーパーは、管理者向けに SAP BusinessObjects Enterprise BI4.0 プラットフォームの概要を示すためのものです。
文書所有者: Jan De Vilder
認定シニアBI/MoBI コンサルタント
SAP ベルギー – ルクセンブルグ
SAP ルヴァロワ - フランス
企業: SAP
最終更新日: 2012 年 11 月 26 日
1 文書の更新履歴
バージョン | 更新者(*) | 日付 | コメント |
| Jan De Vilder | 2012 年 6 月 12 日 | レビューのためドラフトの初版を提案。 |
| Jan De Vilder | 2012 年 6 月 13 日 | レビューのためドラフト第 2 版を提案。 |
| Jan De Vilder | 2012 年 6 月 20 日 | レビューのためドラフト第 3 版を提案。 |
| Jan De Vilder | 2012 年 6 月 26 日 | レビューのためドラフト第 4 版を提案。 |
| Jan De Vilder | 2012 年 8 月 7 日 | 最終直前の版 |
| Jan De Vilder | 2012 年 9 月 6 日 | 公開用の最終版 |
| Jan De Vilder | 2012 年 10 月 11 日 | Crystal Reports for Enterprise Dashboards および LCM に関する追加情報 |
| Jan De Vilder | 2012 年 10 月 26 日 | サイジング情報を更新 |
(*)このドキュメントの内容の追加、変更、確認のためにコンサルタント、製品スペシャリスト、アーキテクト、サポートエンジニアなど多くの人々にご協力いただきました。こうした人々の支援のおかげで、このドキュメントが現在の形になりました。
ご協力ありがとうございました。
2 背景
SAP BusinessObjects Business Intelligence Platform のデフォルトインストールは、ホストシステムあたり 1 つの Adaptive Processing Server (APS)APS をインストールします。Adaptive Processing Server は、さまざまなソースからの要求の処理に関するサービスを提供する汎用サーバーです。
すべてのサービスは、最大 java ヒープサイズに 1 GB RAM を割り当てた単一の java APS インスタンス上で実行されるため、必ずしもデフォルトの設定が最適とは限りません。
このドキュメントに記載されているベストプラクティスは、BI 管理者が SAP BO BI4.0 で APS を最適に設定する際に役立ちます。このドキュメントは、BI4.0 SP2 パッチ 2.12 以上のサーバー構成に基づいています。APS サービスは
新しいサービスパック、サポートパック、修正のリリースの都度、定期的に更新されます。このドキュメントに記載されているサービスが古いものになる可能性はありますが、混乱を招くことはないと思います。
このドキュメントは、特に専用 APS のサービスの分離に焦点を絞っています。
3 アーキテクチャーの概要
層:
SAP BusinessObjects Business Intelligence プラットフォームは、一連の概念層として考えることができます。
- クライアント層
- 管理層
- ストレージ層
- 処理層
- データ層
APS は処理層の一部です。
デフォルトでは、BI4.0 プラットフォームにはホストシステムあたり 1 つの Adaptive Processing Server (APS) が含まれています。Adaptive Processing Server は、さまざまな要求を処理するための複数のサービスを提供する汎用サーバーです。
4 Adaptive Processing Server サービス
次の表は(BI4.0 の)APS に含まれるすべてのサービスを示しています。
この表は、展開に必要となる APS サービスがどれであるかを確認するためのものです。最後の列「アプリケーション」で、実際の環境に必要なアプリケーションを探して、対応するサービスをリストアップします。
サービス | サービスのカテゴリー | サービスの説明 | アプリケーション |
Adaptive Connectivity | 接続サービス | 接続サービスを提供する(接続サーバーを置換)。 | Web Intelligence、Dashboards (Xcelsius)、Crystal Reports、Explorer |
BEx Web アプリケーションサービス | 分析サービス | SAP Business Warehouse (BW)Business Explorer (BEx) Web アプリケーションと BI 起動パッドの統合を提供する。 | BEx |
Client Auditing Proxy サービス | コアサービス | クライアントから送られた監査イベントを収集し、CMS サーバーに転送する。 | Interactive Analysis デスクトップ版のクライアントツール |
カスタムデータ | 接続サービス | 接続サーバーを必要としないデータソースへの動的な接続を提供する。このサービスを使用すると、CSV ファイルなどの一部の個人データプロバイダーを使用して作成されたレポートにアクセスし、更新することができる。 | Web Intelligence、Dashboards (Xcelsius) |
データフェデレーションサービス | データフェデレーションサービス | 単一データ基盤からデータを集約する異なるデータソース間でクエリー配布することで、マルチソースユニバースを有効化する。 | Web Intelligence、Dashboards (Xcelsius)、Crystal Reports for Enterprise、Explorer |
ドキュメントリカバリサービス | Web Intelligence | Web Intelligence ドキュメントの自動保存およびリカバリ。 | Web Intelligence |
DSL ブリッジ | Web Intelligence | デュアルセマンティックレイヤ(DSL)セッションのサポート。SAP BW の BICS 接続を最適化する。リレーショナルソースの UNX SQL/LOV 生成を行う。 | Web Intelligence、BO Explorer |
Excel データ | Web Intelligence | データソースとして SAP BusinessObjects BI プラットフォームにアップロードされた Excel ファイルをサポートする。 | Web Intelligence |
Web Intelligence モニタリング | Web Intelligence | Web Intelligence サーバーをモニタリングする。 | Web Intelligence |
サービス | サービスのカテゴリー | サービスの説明 | アプリケーション |
Insight to Action サービス | コアサービス | アクションの呼び出しを有効化し、レポート間インターフェース(RRI)のサポートを提供する。 | Crystal レポートダッシュボード(Xcelsius) |
ライフサイクルマネジメント | LifecycleManagement サービス | LCM は SubVersion または ClearCase のいずれかをサポートすることで、オブジェクトのバージョン管理をサポートする。このサービスは ClearCase サポートを管理するためのものである。 | LCM |
ライフサイクル | LifecycleManagement サービス | ライフサイクルマネジメントコアサービス。 | LCM |
モニタリング | コアサービス | モニタリング機能を提供する。 | すべて |
多次元分析 | 分析サービス | 多次元オンライン分析処理(OLAP)データへのアクセスを提供する。生のデータを Excel、PDF、または Analysis(旧称 Voyager)のクロスタブやチャートに表示できる XML に変換する。 | OLAP 向けの分析、 OLAP 接続の作成 |
プラットフォーム検索サービス | コアサービス | プラットフォームに対する検索機能を提供する。 | 検索 |
パブリッシング | コアサービス | 特定の出力先にレポートを送信するなど、レポートの生成後にレポートに対してアクションを行う。 | Web Intelligence または Crystal レポートのパブリケーション |
公開サービス | コアサービス | パブリッシングポスト処理サービスおよびDestination Job サービスと連携して、ファイルシステム、FTP、電子メール、ユーザーの受信トレイなど、所定の出力先にレポートを公開する。 | Web Intelligence または Crystal レポートのパブリケーション |
Rebean | Web Intelligence | Web Intelligence および Explorer で使用される SDK。 | Web Intelligence Explorer |
セキュリティ | コアサービス | SAP シングルサインオンのサポート。SAP BW データソースに接続するためのシングルサインオン(SSO)機能を提供する。 | すべて |
翻訳サービス | コアサービス | 翻訳マネージャークライアントからの入力を含む InfoObjects を翻訳する。 | すべて |
サービス | サービスのカテゴリー | サービスの説明 | アプリケーション |
Visual Difference | LifecycleManagement サービス | ドキュメントの昇格およびライフサイクルマネジメントのために、複数のドキュメントが視覚的に同一であるかどうかを判別する。現在、ユーザーは 2 つの LCMBIAR ファイルまたは LCM ジョブの間の違いを確認できる。 | LCM |
ビジュアライゼーションサービス | Web Intelligence | WebI レポートでのチャート表示のために Web Intelligence によって使用される Common Visualization Object Model サービス。CVOM は、Web Intelligence レポート専用。Web Intelligence ドキュメントに表示されるチャートを作成するサービス。 | Web Intelligence、Crystal for Enterprise、OLAP 向けの分析 |
5 SAP Business Objects BI4.0 サーバー設定のベストプラクティス
5.1 はじめに
SAP ノート 1694041 (How to size the Adaptive Processing Server) は、各 APS コンテナの設定方法の例を示しています。この方法を使用すると、応答時間が改善し、スループットが向上しますが、Java 仮想マシンの数が増えるため、プラットフォーム全体でのメモリー使用率が増加します。
上述の SAP ノートに記載されているさまざまな APS サーバー(MDAS、DSL、LCM など)の最小 Xmx パラメーターを合計すると、必要な RAM の総容量は 26 GByte です。
RAM が 32 Gbyte の SAP Business Objects BI4.0 サーバーでは、残りの作業メモリーはたったの 6 Gbyte になります。
この SAP ノートに記載されている方法の利点は、分離されたワークフローのためトラブルシューティングがより容易で非常に便利であることと、ダウンタイムを発生させることなく特定の機能を無効にすることができることです。
この方法は、BI 4.0 のすべての機能が使用されていることを前提としています。コンテンツ検索、MDAS、または BW 接続を使用していない場合、使用していないサービスをすべて単一の APS に移動して、その APS を停止することができます。
したがって、まず上記の表で、実際の導入展開に必要なサービスを確認することが重要です。
使用しないサービスをシステムから削除することはお奨めしません。現在使用していないサービスも、後にビジネスプロセスが進化して新たな機能が必要になったときに使用する可能性があります。
未使用のサービスを停止するには、各サブサービスの内容や、相互作用を理解している必要があるため、通常は SAP コンサルティングが行います。
サイジング予測を実行するには、「BI4 Sizing Estimator」を参照してください。
5.2 複数の APS サーバーの追加
5.2.1 CMC での新規 APS サーバーの作成方法
同じマシン上で複数の同一サーバーインスタンスを実行できます。APS サーバーを追加するには、次の手順に従います。
- CMC に管理者としてログインします。
2. [整理] セクションに移動し、“サーバー” を選択します。
3. この例では、データアクセス DSL APS コンテナを新規作成します。
[管理] メニューで [新規] > [新しいサーバー] をクリックします。
4. [サーバーの新規作成] ダイアログボックスが表示されます。“サービスカテゴリ” を選択します。
5. [サービスの選択] リストから必要なサービスの種類を選択し、[次へ] をクリックします。
サーバーに別のサービスを追加するには、[利用可能な追加のサービス] リストでサービスを選択し、[>] をクリック
6. 他のサービスを追加したら、[次へ] をクリックします。
BI プラットフォームアーキテクチャーが複数のノードで構成されている場合は、新しいサーバーの追加先のノードを [ノード] リストから選択します。
7. [サーバー名] ボックスにサーバー名を入力します。
システム上の各サーバーには固有の名前をつける必要があります。デフォルトの命名規則は <ノード名>.<サーバータイプ> です(同じホストマシン上に同じ種類のサーバーが複数ある場合は、数字が付記されます)。
サーバーの説明を含めるには、[説明] ボックスに入力します。
8. [作成] をクリックします。
新しいサーバーが CMC の [サーバー] 領域のサーバーの一覧に表示されますが、このサーバーはまだ開始も有効化もされていません。
9. 作成したサーバーの設定を確認します。
10. BI プラットフォームの要求への応答を開始するときは、CMC を使用して新しいサーバーを開始し、有効化します。
5.2.2 APS サーバーのクローニング
新しいサーバーインスタンスを導入に追加する場合、既存のサーバーをクローニングすることができます。クローニングしたサーバーは、元のサーバーの設定を維持します。これは(ノードの追加により)導入を拡張したい場合や、既存のサーバーとまったく同じ、またはほぼ同じサーバー設定を使用して新しいサーバーインスタンスを作成したい場合に便利です。設定テンプレートを使用すると、類似サーバーの設定が同期されます。
サーバーをクローニングするか、それとも新しいサーバーを作成するかに関しては、特別な推奨事項またはベストプラクティスはありません。
APS サーバーのクローニングを行うときは、不要なサービスを後から削除しなければならない場合があります。
新しい APS を作成するときは、必要なサービスを追加できることが必要です。
ベストプラクティスは、元の APS は別途使用できるように保持して、削除しないことです。元の APS が不要になった場合は、停止することを検討してください。
5.3 BI4.0 のインストール後の開始点
BI4.0 のインストール直後には何を行うべきでしょうか?SP またはパッチを適用した BI4.0 のインストール後、初期設定として以下の手順を実行する必要があります。これらの手順はクローニングに基づいています。新規サーバーを作成しても、同じ結果になります。
すべての APS サービスが APS で常に利用可能な状態であることを確認します。実行中でも、無効化されていても、停止されていてもかまいません。基本的な APS サービスは常に必要となります。
使用しないサービスをシステムから削除することはお奨めしません。現在使用していないサービスも、後にビジネスプロセスが進化して新たな機能が必要になったときに使用する可能性があります。
追加の APS サーバーを作成する前に、BI4.0 環境で使用されるツールを確認することをお奨めします。最終設定は、個々のお客様の要件によって大きく異なります。
以下の手順では、Xmx パラメーター値の変更を提案しています。Xms パラメーターは変更する必要がありません。デフォルトの Xms 値を使用してください。
5.3.1 オリジナルの Adaptive Processing Server (APS) のクローニング
多くのお客様が元の APS を変更したり、破損したり、あるいは削除してしまうことがあり、元の設定に戻せなくなる可能性があることが判明したため、このベストプラクティスが追加されました。元の APS は将来使用するときのために維持することをお奨めします。したがって、元の APS は停止するか、無効化します。
- BI4.0 のインストール後、各ノードには CMC/Servers/Nodes に 1 つの AdaptiveProcessingServer があります。
- 元の AdaptiveProcessingServer をクローニングします。
- 元の APS を停止し、開始の種類を手動にします。
チェックボックス [Server Intelligence Agent の起動時にこのサーバを自動的に起動します] をオフにします。
5.3.2 DSL ブリッジサービス専用 APS の追加
この APS は、Webintelligence に対する BICS 接続を最適化し、リレーショナルリソースの UNX SQL/LOV 生成を処理します。この APS は、十分なメモリーが割り当てられている場合にのみ最適に機能します。このサービスは、Crystal Reports 2011 または Crystal Reports Enterprise では使用されません。
- 元の APS をクローニングします。
- 以下のサービスをこの APS に含めます。
o DSL ブリッジサービス
o Web Intelligence モニタリングサービス(この APS のデフォルトサービス)
o セキュリティトークンサービス
o トレースログサービス(デフォルトのサービス)
- その他すべてのサービスを削除します。
- Xmx1g を導入展開に応じて Xmx4g から Xmx8g 間の値に変更します。
5.3.3 検索インデックス専用 APS の追加
- 元の APS をクローニングします。
- 以下のサービスをこの APS に含めます。
o プラットフォーム検索サービス
o トレースログサービス(デフォルトのサービス)
- CMC の [アプリケーション] 領域に移動し、“プラットフォーム検索アプリケーション” を選択します。
o インデックス作成レベルを [プラットフォームメタデータ] に変更します。
o エラー回復のアクションを [インデックスの再構築] に設定します。
o コンテンツタイプ [ユニバース] の選択を解除します。
- その他すべてのサービスを削除します。
- この検索用 APS の使用頻度が高い場合は、導入展開に応じて Xmx1g をXmx2g または Xmx3g に変更します。
- BI 起動パッドのコンテンツでの検索の使用を避けるには、この APS を停止します。
5.3.4 ANALYSIS(多次元分析サービス - OLAP 向けの分析)専用 APS の追加
アプリケーション、「OLAP 向けの分析」または「BEx Web」を使用していない場合は、この手順を省略できます。このサービスは、OLAP 接続を作成または編集する場合にも使用します。
- 元の APS をクローニングします。
- 以下のサービスをこの APS に含めます。
o 多次元分析サービス
o BEx Web アプリケーションサービス
o トレースログサービス(デフォルトのサービス)
- その他すべてのサービスを削除します。
- この MDAS の使用頻度が高い場合は、導入展開に応じて Xmx1g をXmx4g から Xmx8g の間の値に変更します。
5.3.5 その他すべての必要なサービス専用 APS の追加
- 元の APS をクローニングします。
- この APS の次のサービスを削除します(すでに専用 APS があるため)。
o 多次元分析サービス
o BEx Web アプリケーションサービス
o プラットフォーム検索サービス
o DSL ブリッジサービス
o 導入展開に不要なその他すべてのサービスを削除します。
- 導入展開に応じて、Xmx1g を Xmx2g から Xmx4gの間の値に変更します。
6 考慮が必要なその他の APS サーバー
追加の APS サーバーを作成する前に、BI4.0 環境で使用されるツールを確認することをお奨めします。最終設定は、個々のお客様の要件によって大きく異なります。
6.1 DSLBridge サービスの APS の分離
DSL Bridge サービスは、UNX または BEx クエリーに基づくドキュメントを更新するときに必要になります。このサービスの目的は次のとおりです。
- リレーショナルリソースのための新しい UNIX 経由での SQL 生成
- UNX/BICS での値一覧(LOV)の取得
- BICS 接続、BW からのデータフェッチ
デフォルトでは、このサービスは共通の Adaptive Processing Server 内にまとめられています。このデフォルトサーバーは、その他多くのサービスを含む java ベースのサーバーです。デフォルトの設定、特に java ヒープサイズは、通常、最適化されたパフォーマンスに十分に適応していません。したがって、以下を行うことをお奨めします。
6.1.1 Crystal Reports for Enterprise および Dashboards の DSL コンポーネント
SAP Crystal Reports for Enterprise は、Crystal Reports デザイナーの新しくデザインされたバージョンです。SAP BusinessObjects セマンティックレイヤ(UNX)に対してより優れたサポートを提供し、SAP BW への接続性が向上します。
Crystal Reports for Enterprise (C4E) アーキテクチャーは、Web Intelligence とはかなり異なっています。
C4E には組み込みの DSL コンポーネント(Java で開発)があります。したがって、C4E は APS で DSL ブリッジサービスを使用しません。
C4E エンジンは DSL コンポーネントおよび接続サーバーを、CrystalReportsProcessingServer と同じプロセスでローカル実行します。
結果として、APS から DSL ブリッジサービスを分離し、Java ヒープサイズ(Xmx)を増やしても、C4E を使用する際に得られる効果または改善はありません。
C4E については、SAP ノート 1697105 に記載されているように、Xmx パラメーターは CrystalReportsProcessingServer の [Java 子仮想マシンの引数] で直接増やすことができます。
Dashboards (Xcelsius) アプリケーションの動作および DashboardsProcessingServer は、C4E の場合と同じです。
- 組み込まれた DSL および接続サーバーコンポーネント
- DashboardsProcessingServer の [Java 子仮想マシンの引数] で変更する Xmx パラメーター
6.1.2 DSLBRIDGE の分離
BICS クライアントはもともと、DSLBRIDGE プロセスからの大量のデータを処理する必要があります。集中的に使用する場合は、デフォルトの Adaptive Processing Server から分離することをお奨めします。
- CMC を開きます。
- APS を停止します。
- DSLBridge サービスを APS から削除します。
- DSLBridge サービスで新規サーバーを作成します。
- サービスのカテゴリ:接続サービス
- サービス:Adaptive Connectivityサービス
- 選択したサービス:DSL ブリッジサービス
- 名前を指定します(例:“Adaptive Processing Server DSLBRIDGE_1”)。
DSL ブリッジ APS には次のサービスが含まれています。
- DSL ブリッジサービス
- Web Intelligence モニタリングサービス
- セキュリティトークンサービス
- トレースログサービス
次のステップは、新しい DSLBRIDGE に適切なパラメーターを設定して、メモリー欠乏を回避することです(JVM のメモリー不足または過剰な GC アクティビティ)。
6.1.3 DSLBRIDGE のメモリーオプション
推奨される最小ヒープサイズは 4GB (-Xmx4g –Xms1g) です。複雑なクエリーを使用する(多くのメタデータオブジェクトを使用する)場合やローセット数(要求されるセルの数)が多い場合は、ヒープサイズを 4GB より大きい値に増やすことが賢明です。
実際には、次の手順に従って DSLBRIDGE オプションを変更します。
- CMC にログインします。
- DSLBRIDGE サーバーのプロパティを編集します。
- 次のコマンドラインフィールドを追加します.
- -Xmx4g
- ヒープサイズの値(-Xmx4g)は、必要に応じて、次の範囲内で指定する必要があります。
- -Xmx4g.から –Xmx8g
- -Xmx4g
- デフォルトでは、ヒープサイズ(-Xmx および -Xms)はすでに APS コマンドラインフィールドに設定されています。コマンドライン全体をコピーしてメモ帳に貼り付けてから変更すると便利です(以下の例を参照)。各 APS には独自のコマンドラインがあります。複数の異なる APS に同じコマンドラインを再利用しないでください。
6.2 検索サービスの APS の分離
検索専用 APS を作成後、CMC の [アプリケーション] 領域に移動し、“プラットフォーム検索アプリケーション” を選択します。
- インデックス作成レベルをデフォルトの [フルコンテンツ] から [プラットフォームメタデータ] または [プラットフォームおよびドキュメントのメタデータ] に変更します。
- 可能な場合は、クロール頻度を連続から、スケジュールに変更します。
- コンテンツタイプ [ユニバース] の選択を解除します。
- エラー回復のアクションを [インデックスの再構築インデックスを再構築] に設定します。
- 必要に応じて、一部のドキュメントはインデックス作成の対象から除外します。
検索用 APS には次のサービスが含まれています。
- プラットフォーム検索サービス
- トレースログサービス
6.3 分析の APS の分離
クライアントツール「OLAP 向けの分析」を集中的に使用する場合、MDAS 専用 APS(多次元分析サービス)を追加します。
この MDAS APS を集中的に使用する場合は、Xmx1g を -Xmx4g から -Xmx8g の間に変更します。
分析用の APS には次のサービスが含まれます。
- 多次元分析サービス
- BEx Web アプリケーションサービス
- トレースログサービス
6.4 Life Cycle Manager (LCM) の APS の分離
- LCM をマルチプラットフォーム環境(DEV、TEST、PROD)で集中的に使用する場合は、「Adaptive LCM Processing Server」を作成し、次のサービスを分離することをお奨めします。
- ライフサイクルマネジメントサービス
- ライフサイクルマネジメント管理 ClearCase サービス
- Visual Difference サービス
- トレースログサービス
- この LCM-APS は、LCM のオーバーライド機能の処理を行います。最初の起動時にオーバーライドデータベースを作成し、CMS システムデータベースのメタデータで DB_CREATED フラグを true に設定します。
場合によっては、混合パッチレベルの使用に関する問題や接続キャッシングの問題、または複数の APS が同じオーバーライドデータベースをポイントしていることが原因で、LCM オーバーライドデータベース(apache derby)が破損することがあります。このような場合は、接続をオーバーライドする意図がない場合でも、オブジェクト(Crystal または WebI)接続は LCM によってオーバーライドされる必要があると見なされます。結果的にターゲットシステムで誤ってオーバーライドされ、接続が変更されたり、接続が失われることがあります。
このような場合は、LCM オーバーライドデータベースをリセットして、破損データを削除する必要があります。
これを自動で行う方法はないため、SAP サポートは「ResetLCMDB.zip」というスクリプトを提供しています。この java ユーティリティは、DB_CREATED フラグを false に設定します。次に、LCM-APS が再開されると、DB を再作成します。スクリプトを実行する前に LCM_APS を停止し、後で再開することをお奨めします。ユーティリティを実行するときは、CMS が実行中であることを確認します。
DB_CREATED フラグが true に設定されている場合、フラグが指定されていなくても、DB を再作成しようとしません。これは、手動で LCMOverride ディレクトリを削除する場合に問題となる可能性があります。
- オーバーライドデータベースに関する問題のため、同じオーバーライドデータベースをポイントする複数の LCM-APS サーバーを同時に実行することはできません。
これにより、LCM オーバーライド機能を使用している場合に、Java Null ポインター例外を妨ぐことができます。
- LCM のオーバーライドに関して起こる可能性がある別の問題が SAP ノート 1752843 に記載されています。LCM サービスを含む APS サービスでは「AdaptiveProcessingServer」の名前をデフォルトのまま使用する必要があります。この問題が発生した場合は、デフォルトの APS を AdaptiveProcessingServer_ORIG という名前に変更し、LCM-APS の名前を AdaptiveProcessingServer に変更します。
- LCM では、少なくとも BI4.0 SP02 パッチ 10 以上を使用します。
6.5 同時パブリケーションに対応するように APS を設定
推奨事項:
次の推奨事項に従うことで、パブリケーションを扱う Adaptive Processing Server のパフォーマンスを改善することができます。
- 複数のパブリケーションが同時に実行されている場合は、Adaptive Processing Server の複数のインスタンスを作成します。通常、3 つの同時パブリケーションごとに 1 つの Adaptive Processing Server インスタンスを作成することをお奨めします。
- Adaptive Processing Server のヒープサイズを増やします。これを行うには、[管理] > [プロパティ] の順にクリックし、コマンドラインパラメーターに「-Xmx1024M」を追加します。
- 公開サービスおよびパブリッシングポスト処理サービスを Adaptive Processing Server の別のインスタンスで実行します。
パブリケーションの Adaptive Processing Servers には以下のサービスが含まれています。
- パブリッシングポスト処理サービス
- 公開サービス
- トレースログサービス
「メモリー不足」エラーの解決
エラーメッセージ「java.lang.OutOfMemoryError: unable to create new native thread when a high-volume publication is run」が表示される場合は、Adaptive Processing Server と公開サービスに、生成されたパブリッシングスレッドを処理するだけの十分なスタックメモリーがないことが原因です。このエラーは、スタックメモリーが Java ヒープ領域として指定されている場合に発生することがあります。
Adaptive Processing Server のスレッド制限を設定できます。CMC の [サーバー] 領域で、“Adaptive Processing Server” を選択し、[管理] > [プロパティ] の順に移動します。[コマンドラインパラメーター] フィールドに次のコマンドラインパラメーターを入力します。
- -Dcom.businessobjects.publisher.threadpool.size=threadlimitnumber threadlimitnumber は、適切なスレッド制限数に置き換えます。
高ボリュームのパブリケーション実行時にエラーメッセージ「java.lang.OutOfMemoryErrorJava heap space」が表示される場合は、APS のヒープ領域が不足していることが原因です。CMC の [サーバー] 領域で、“Adaptive Processing Server” を選択し、[管理] > [プロパティ] の順に移動します。[コマンドラインパラメーター] フィールドで、コマンドラインパラメーターの数値 Xmx1024m をより大きい値に変更します(-Xmx2048m など)。
注記:
場合によっては、「メモリー不足」エラーを解決するために、Adaptive Processing Server のインスタンス数も増やす必要があります。
6.6 ビジュアル表現(チャート作成)を多用する APS の分離
チャートを多用したレポートを使用している場合も、同様のメモリー不足エラーが発生することがあります。
推奨事項:
次の推奨事項に従うことで、チャートを多用したレポート(Webintelligence または Crystal for Enterprise)の安定性を改善することができます。
- Adaptive Processing Server の新しいインスタンスを作成します。
- Adaptive Processing Server のヒープサイズを増やします。これを行うには、[管理] > [プロパティ] の順にクリックし、コマンドラインパラメーターを「-Xmx2g」に変更します。
- 必要に応じてビジュアル化 APS の数を増やします。
チャートを多用する Adaptive Processing Servers には以下のサービスが含まれています。
- ビジュアライゼーションサービス
- トレースログサービス
6.7 考慮が必要なその他の APS
- クライアント監査専用 APS。クライアントツール/CMC/BI 起動パッドが適切に実行されるようにすると同時に、クライアント監査を実行する場合に役立ちます(『管理者ガイド』の「監査」セクションを参照:xi4sp4_bip_admin_en.pdf)。
- DataFederation サービスおよび Adaptive Connectivityサービス専用 APS。
これは、サービスカテゴリーも分離します。この方法で WebI サービスを停止しても、他の(CR など)サービスの機能が接続サービスを利用できないために停止することはありません。
- セキュリティトークンサービス専用 APS。SAP BW へのシングルサインオンに関する問題は、STS 専用 APS により解決します。
6.8 不要なサービスの APS の分離
すぐに必要ではないサービスはすべて、専用の APS にまとめることができます。
その APS を停止することを考慮します。
たとえば、パブリケーションではなく BEx Web アプリケーションを使用しない場合、すべてのサービスを 1 つの APS にまとめて、この APS を停止します。これにより、不要なメモリーおよび CPU の消費が回避されます。
6.9 元の APS の維持
元の APS はそのままにします。どのサービスも削除しないでください。この APS を停止して、無効化します。起動パラメーターを “Manual” に設定します。設定するには、CMC で [管理] > [プロパティ] をクリックし、チェックボックス [SIA の起動時にこのサーバーを自動的に起動] をオフにします。
元の APS をクローニングすることで再利用します。
6.10 APS に関する一般的な推奨事項
- 新規の APS を作成するよりも、既存の APS をクローニングすることをお奨めします。クローニングによりデフォルトの設定が維持されます。
新規 APS の場合は、作成後にデフォルトの設定を手動で入力する必要があります。
- ヒープサイズを増やす場合、そのマシン上に十分な物理メモリーがあることを確認する必要があります。
十分なメモリーがない場合は、jvm プロセスがクラッシュしたり、メモリーがディスクスワッピングを行う可能性があります。その結果、アプリケーションエラーやパフォーマンスの低下が発生します。
- デフォルトパラメーター:-XX:+ExitVMOnOutOfMemoryError は、メモリー不足エラーが発生すると、APS を強制的に自動再開します。
- -XX:+UseParallelOldGC は、古い世代のパラレルガベージコレクターを使用します。古い世代のコレクションの特定の段階をパラレルで実行すると、古い世代のコレクションのスピードアップを図ることができます。
警告:
- 他のドキュメント/Webサイト/ノートで、以下のパラメーターが考慮されている場合があります。これらのオプションの使用に関して、決して SAP が推奨しているものではありません。
これらのオプションは、APS サーバーでエラーを引き起こす(クラッシュ)可能性があるため、使用しないでください。
-XX:+UseParNewGC - XX:+UseConcMarkSweepGC - XX:+UseAdaptiveSizePolicy
これらのパラメーターに関して一般的に適用可能な「ベストプラクティス」はありません。
6.11 コマンドラインパラメーター
新しい APS を(サーバーのクローンコマンドを使用して既存の APS をコピーするか、新規作成する方法で)ノードに展開する場合、APS コマンドラインパラメーターを確認する必要があります。
-Djava.awt.headless=true "-Dcom.businessobjects.datafederator.server.home=E:/Program Files (x86)/SAP BusinessObjects/SAP BusinessObjects Enterprise XI 4.0/java/pjs/services/DataFederatorService/resources" "-Dbusinessobjects.logs.home=E:/Program Files (x86)/SAP BusinessObjects/SAP BusinessObjects Enterprise XI 4.0/logging/" "-XtraceFile=E:/Program Files (x86)/SAP BusinessObjects/SAP BusinessObjects Enterprise XI 4.0/logging/aps_NTBIT20.AdaptiveProcessingServer_jvm_@PID.log" -XX:MaxPermSize=256m "-Dbobj.javaserver.home=E:/Program Files (x86)/SAP BusinessObjects/SAP BusinessObjects Enterprise XI 4.0/java/pjs/container/" "-Dbobj.enterprise.home=E:/Program Files (x86)/SAP BusinessObjects/SAP BusinessObjects Enterprise XI 4.0/" -XX:LogGcMaxFileCount=3 -XX:+PrintGCTimeStamps "-Dbusinessobjects.connectivity.directory=E:/Program Files (x86)/SAP BusinessObjects/SAP BusinessObjects Enterprise XI 4.0//dataAccess/connectionServer" -XsapSystem:08 "-XX:ErrorFile=E:/Program Files (x86)/SAP BusinessObjects/SAP BusinessObjects Enterprise XI 4.0/logging/AdaptiveProcessingServer_DSL_TOKEN/aps_NTBIT20.AdaptiveProcessingServer_dump_%p.log" -XX:+HeapDumpOnOutOfMemoryError "- XX:HeapDumpPath=E:/Program Files (x86)/SAP BusinessObjects/SAP BusinessObjects Enterprise XI 4.0/logging/" -XX:+ExitVMOnOutOfMemoryError "- Djava.io.tmpdir=E:/Program Files (x86)/SAP BusinessObjects/SAP BusinessObjects Enterprise XI 4.0/java/pjs/container/temp" "- XX:GCHistoryFilename=E:/Program Files (x86)/SAP BusinessObjects/SAP BusinessObjects Enterprise XI 4.0/logging/AdaptiveProcessingServer_DSL_TOKEN/aps_NTBIT20.AdaptiveProcessingServer_gc.prf" "-Dboe.external.dir=E:/Program Files (x86)/SAP BusinessObjects/SAP BusinessObjects Enterprise XI 4.0/java/lib//external" –Xms32m -XX:+PrintGCDetails -XX:+UseParallelOldGC "- Dboe.bundles.dir=E:/Program Files (x86)/SAP BusinessObjects/SAP BusinessObjects Enterprise XI 4.0/java/lib//bundles" -XX:LogGcMaxFileSize=5m -Xjvmx - Xss1M -Djava.net.preferIPv4Stack=false –Xmx8g "-Dbo_cluster.config_dir=E:/Program Files (x86)/SAP BusinessObjects/SAP BusinessObjects Enterprise XI 4.0/win64_x64/config" "-Xloggc:E:/Program Files (x86)/SAP BusinessObjects/SAP BusinessObjects Enterprise XI 4.0/logging/AdaptiveProcessingServer_DSL_TOKEN/aps_NTBIT20.AdaptiveProcessingServer_gc.log" - Djavax.xml.parsers.SAXParserFactory=com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl -server "-Dboe.common.dir=E:/Program Files (x86)/SAP BusinessObjects/SAP BusinessObjects Enterprise XI 4.0/java/lib/" "-Djava.library.path=E:/Program Files (x86)/SAP BusinessObjects/SAP BusinessObjects Enterprise XI 4.0//win64_x64" -jar "E:/Program Files (x86)/SAP BusinessObjects/SAP BusinessObjects Enterprise XI 4.0/java/pjs/container/bin/boeserver.jar" -workdir "E:/Program Files (x86)/SAP BusinessObjects/SAP BusinessObjects Enterprise XI 4.0/java/pjs/container/work/NTBIT20.AdaptiveProcessingServer"
- 一部のパスについては、固有である(サーバーノード上の他の APS と同じでない)ことを確認してください。
すべての APS インスタンスで確認が必要なパラメーターは次のとおりです。
- -XtraceFile=”"
- -XX:ErrorFile=”"
- -XX:GCHistoryFilename=”"
- -Xloggc:
- -workdir
これらのパラメーターについては、すべてパスが異なっていることを確認します。BI4.0 SP02 パッチ 2.12 以降では、これらのパスはデフォルトで固有になっています。
2. DSL ブリッジサービスをホストしている Adaptive Processing Server で、パラメーター
“-Dbusinessobjects.connectivity.directory” がない場合があります。通常、この問題はパッチの適用後に起こる可能性があります。
(SAP ノート 1735431 を参照)
これにより、Webi でユニバース(UNX)を選択するときにエラーメッセージ「The datasource cannot be generated for the specified datasource name"xxx". (WIS 00000)」が表示されます。
解決方法:
- CMC から DSL ブリッジサービスをホストする一時的な Adaptive Processing Server (APS) を新しく作成します。
- この一時 APS からパラメーター "-Dbusinessobjects.connectivity.directory" をコピーして、元の APS のコマンドラインに追加します。
例:"-Dbusinessobjects.connectivity.directory= E:/Program Files (x86)/SAP BusinessObjects/SAP
BusinessObjects Enterprise XI 4.0//dataAccess/connectionServer"
- DSL ブリッジサービスをホストしている APS を再開します。
- 一時 APS を削除します。
6.12 使用可能な JVM –X パラメーターの概要
-Xmixed | 混合モードで実行(デフォルト) |
-Xint | インタプリターモード実行のみ |
-Xbootclasspath: | <ディレクトリおよび zip/jar ファイルをセミコロンで区切って指定> ブートストラップクラスおよびリソースの検索パスを設定 |
-Xbootclasspath/a: | <ディレクトリおよび zip/jar ファイルをセミコロンで区切って指定>ブートストラップクラスパスの最後に追加 |
-Xbootclasspath/p: | <ディレクトリおよび zip/jar ファイルをセミコロンで区切って指定>ブートストラップクラスパスの前に追加 |
-Xnoclassgc | クラスガベージコレクションを無効化 |
-Xincgc | インクリメンタルガベージコレクションを有効化 |
-Xloggc: | <ファイル> GC ステータスを、タイムスタンプを付けてファイルに記録 |
-Xbatch | バックグラウンドコンパイルを無効化 |
-Xms<size> | Java の初期ヒープサイズを設定。通常、APS ではデフォルトの設定を使用。 |
-Xmx<size> | 最大 Java ヒープサイズを設定 |
-Xss<size> | java スレッドスタックサイズを設定 |
-Xprof | CPU プロファイリングデータを出力 |
-Xfuture | 最も厳密なチェックを有効化(将来のデフォルトになる見込み) |
-Xrs | Java/VM による OS シグナルの使用を減らす |
-Xcheck:jni | JNI 機能に対する追加チェックを実行 |
-Xshare:off | 共有クラスデータを使用しない |
-Xshare:auto | 可能な場合は共有クラスデータを使用(デフォルト) |
-Xshare:on | 共有クラスデータを使用する必要があり、使用しない場合は失敗する |
上記の -X オプションは、標準ではないため予告なしに変更される可能性があります。
*To be continued...