プール サイズと実行時インスタンス設定のチューニング

パフォーマンスを向上させるために使用できる 2 つの主要な設定として、データベース リソースのプール サイズと、ステージ実行時インスタンスがあります。以下の手順に従ってテストを行うことによって、お使いの環境におけるプール サイズと実行時インスタンスの最適な設定を判断してください。

  1. パフォーマンス テストで使用する入力データを特定します。パフォーマンス テストで使用するデータを選択する際には、次の点を考慮してください。
    • 実行時間を測定し、一貫性を確認するには、テスト データに十分な数のレコードが含まれていることが重要です。
    • テスト データとしては必ず、実際に処理するデータを代表するものを選択します。例えば、ジオコーディングのパフォーマンス テストを行う場合は、ジオコードする予定のすべての国に対して同数のレコードがテスト データに含まれるようにします。
  2. 郵便データベースやジオコーディング データベースなど、データベース リソースの使用が必要なサービスまたはデータフローをテストする場合は、データベースの最新版がインストールされていることを確認してください。
  3. ファイルからデータを読み込み、最適化したいステージでそれを処理し、ファイルに書き出す、簡単なデータフローを作成します。

    例えば、Validate Address のパフォーマンス設定をテストする場合は、Read from File、Validate Address、Write to File で構成されるデータフローを作成します。

  4. デフォルトでは、データフローのプール サイズは 8 に設定されます。8 個を上回るデータフローのインスタンスを同時に実行する予定の場合は、データフローのプール サイズ設定を最適化します。手順については、「データフロー プール サイズの設定」を参照してください。
  5. データベース リソースのプール サイズを 1 に設定します。データベース リソースのプール サイズを設定する手順については、「 データベース リソースのプール サイズの設定」を参照してください。
  6. ステージの実行時インスタンスを 1 に設定します。ステージの実行時インスタンスを設定する手順については、「 ローカル実行時インスタンスの設定」を参照してください。
  7. データフローを複数回実行し、次の各項目の平均を記録することによって、ベースライン パフォーマンスを算出します。
    • 経過時間
    • CPU 使用率
    • メモリ使用率
    ヒント: JMX コンソールを使用してパフォーマンスをモニタリングできます。詳細については、JMX コンソールによるパフォーマンスのモニタリングを参照してください。
  8. ジョブの複数インスタンスの同時実行をサポートする必要がある場合は、それを実行します。それぞれの場合に対して、経過時間、CPU 使用率、メモリ使用率を記録します。
    ヒント: ファイル モニターを使用して、ジョブの複数インスタンスを同時に実行できます。詳細については、コントロール ファイルによるフローのトリガーを参照してください。
  9. データベース リソースのプール サイズと、ステージ実行時インスタンスの設定値を増加させます。
  10. ‎サーバーを再起動します。
  11. データフローを再度実行し、経過時間、CPU 使用率、メモリ使用率を記録します。
  12. パフォーマンスが低下し始めるまで、データベース リソースのプール サイズとステージ実行時インスタンスの設定値を増加していきます。
  13. ジオコーディング パフォーマンスをテストする場合は、単一国と複数国の入力を使用してこの手順を繰り返します。