...
Table of Contents | ||
---|---|---|
|
概要
Yellowfinでは、スケジュールが設定されたレポートを作成することができます。場合によっては、管理者が不要なスケジュール設定を削除することもできます。「管理パネル」から、個別のタスクを開くことなく、すべてのスケジュールタスクの参照、削除をすることができます。
スケジュール一覧にアクセスするためには「管理」>「管理コンソール」>「スケジュール管理」に移動します。
スケジュールタイプ
Yellowfinでは、幅広い範囲でタスクスケジュールを設定し、実行することができます。スケジュール化されたタスクには、以下があります。
- ブロードキャスト - 指定したユーザーへ、コンテンツを定期的に送信します。
- キャッシュフィルターの更新 - レポートキャッシュフィルターの値を定期的に更新します。
- キャッシュされたビュー - ビューにキャッシュされたデータを定期的に更新します。
- レポート - 結果をキャッシュするように設定されたレポートのデータを更新します。
- レポート購読 - 指定したユーザーへ、レポートを定期的に送信します。
- アクセスフィルター - アクセスフィルターの値を定期的に更新します。
- サードパーティ - サードパーティコネクターに必要なデータを更新します。コネクターによっては、データの読み込みや変換が行われます。
スケジュールの表示
スケジュール一覧では、スケジュールタスクの検索、参照、編集、中断、実行、削除をすることができます。
スケジュールの編集
タスク名をクリックすることで、スケジュールの詳細を確認することができます。
スケジュールを編集するためには、タスクの「編集」ボタンをクリックし、必要な変更を行います。
変更が完了したら、「保存」ボタンをクリックして変更内容を保存します。
スケジュールタスクの中断
タスクを中断するためには、タスク名をクリックして開き、「中断」ボタンをクリックします。
スケジュールタスクの実行
タスクを実行するためには、タスク名をクリックして開き、「今すぐ実行」ボタンをクリックします。
スケジュールタスクの削除
スケジュールタスク一覧から削除したいタスクを選択し、「削除」ボタンをクリックします。
スケジュールの更新
スケジュールを更新するためには、一覧下部にある「更新」ボタンをクリックします。
タスクスケジューラー管理
スケジュール設定されたすべてのタスク(レポートのブロードキャスト、トランスフォーメーションフローやフィルターの実行、など)は、Yellowfinのタスクスケジューラーが管理するキューに追加されます。ただし、メモリやCPUリソースを消費する多数の待機中タスクにより、システムが過負荷になるのを防ぐため、一度にこのキューに追加できる項目数には制限があります。この制限は、web.xmlファイルから変更することができます。
タスクスケジューラーの制限
制限を変更する前に、タスクスケジューラーの動作の詳細を把握しましょう。
タスクスケジューラーは毎分起動し、実行が必要なタスクがないかを確認します。
タスク実行の時間であれば、それをキューへ送信します。空きスレッドがある場合、タスクはキューから押し出され、実行を開始します。
すべてのスレッドが埋まっている場合、実行可能なスレッドが解放されるまで、タスクはキュー内で待機します。キューのサイズはデフォルトで20に設定されていますが、これはweb.xml内で変更することができます。
これは、過剰なタスクを一度に実行しようとしているのか、それともタスク完了が非常に遅いのかを示しています。
システム構成を変更することで、一度により多くのタスクを実行できるようにサーバのメモリやCPUを増加させることができます。(キューを大きくし、スレッドサイズを増加します)
一度に多数のタスクを実行しないよう、スケジュールが設定されたタスクを変更することができます。例えば、すべてのタスクを一度に深夜帯に実行するのではなく、一日を通して、少しずつ実行するとよいでしょう。
次にタスクスケジューラーが起動したタイミングで、タスクが完了し、解放されたリソースがあるかもしれないため、再度タスクをキューへ追加する試行が行われます。
タスクスケジューラー制限の更新
タスクスケジューラーのスレッドとキューの制限を変更するには、以下の手順に従います。
Yellowfin/appserver/webapps/ROOT/WEB-INFディレクトリにアクセスします。
web.xmlファイルを開きます。
タスクスケジューラー項目までスクロールします。ファイルでは、以下のような内容が表示されます。
こちらの項目から、init-paramタグをコメントアウトします。
TaskSchedulerThreadsパラメーターの値を変更することで、一度に実行されるデフォルトのタスク数を、TaskSchedulerMaxThreadQueueパラメーターの値を更新することで、キューに一度に追加することのできるタスク数の最大値を変更することができます。
ファイルを保存します。キューとスレッドの制限が、それぞれ更新されます。