タスクからのプリロード タスクの作成
サイズの大きいアプリをプリロードすると、ユーザーがすぐにアクセスでき、アプリをメモリにロードする時間のかかるプロセスを回避することで、ユーザー エクスペリエンスを向上させます。例えば、勤務時間前にアプリをプリロードすると、ユーザーがアプリのロードを待たずに業務を開始できます。
アプリのプリロード タスク
管理者の場合、Qlik 管理コンソール、CLI、または API を使ってアプリのプリロードを制御できます。アプリをプリロードするタイミング、アプリをメモリにロードした状態を維持する時間、プリロードを許可するノードを指定します。
効率的なリソース管理のため、アプリがプリロードされ、ユーザーがアプリで作業するノードからリソースを取らないよう、別のリロード ノードの構成を検討してください。ノード設定でノードをリロード、プリロード、その両方のうちどれができるのかを選択します。詳細については、「ノードの作成」を参照してください。
仮想プロキシで粘着性負荷分散を構成して、ユーザーがアプリを開くとき、アプリがプリロードされたノードで行われることを確認してください。詳細については、「負荷分散の追加」を参照してください。
プリロード タスクをリロードとチェーンすることができます。例えば、同じノードまたは別のノードで、アプリをリロードしてからプリロードすることができます。詳細については、「タスク チェーンの作成」を参照してください。
プリロード タスクの監視
[タスク] 概要ページには、構成されたプリロード タスクが表示されます。プリロード タスク専用の列が 2 つあり、これは列ピッカーから追加できます:
プリロード タスクに対し、[開始] および [停止] ボタンは無効化されています。プリロードを停止するか、またはメモリからプリロードされたアプリを削除するには、エンジンを再起動する必要があります。
[エンジンの正常性] 概要ページで、エンジンにロードされたアプリの数を確認できます。ノードのエンジンの正常性詳細を表示して、どのアプリがノードにロードされたかを確認します。
プリロード タスクへのアクセス
プリロード タスクのアクセス権は、リロード タスクのものと同一です。プリロード タスクは、セキュリティ ルール プロパティとリソース フィルターのリロード タスクのように扱われます。
新しいプリロード タスクの作成
[タスク] 概要ページから、アプリ向けにプリロード タスクを作成できます。新規のプリロード タスクの作成は、[アプリの編集] ページの [関連するアイテム] から開始することもできます。『プリロード タスクの作成』を参照してください。
次の手順を実行します。
-
QMC を開く:https://<QPS サーバー名>/qmc
-
QMCスタート ページから、あるいは [Start (スタート)] ドロップダウン メニューから [Tasks (タスク)] を選択して、概要を表示します。
-
操作バーの [ 新規作成] をクリックします。
[プリロード タスク編集] ページが表示されます。
-
プロパティを編集します。
- [名前] 項目にプリロード タスクの名前を入力します。
-
[アプリ名] 項目で [アプリ選択] をクリックします。
ダイアログが開きます。ダイアログで、このタスクによりプリロードしたいアプリをダブルクリックします。
ダイアログが閉じると、[アプリ名] 項目に選択したアプリが表示されます。
-
[実行] プロパティを変更できます。以下の説明を参照してください。このタスクは、既定では [有効] になっています。選択をクリアすると、タスクが無効になります。
- タスクには少なくとも、自動実行するトリガーがひとつ含まれている必要があります。[トリガー] の表見出しにある [アクション] をクリックしてトリガーを管理し、次からひとつ選択します:
- [1 回のみのトリガーを新規作成]、[時間ベースのトリガーを新規作成]、[日単位のトリガーを新規作成]、[週単位のトリガーを新規作成]、[月単位のトリガーを新規作成] の中から選び、新しいトリガーを作成します。これらはトリガーのショートカットで、選択したトリガーがテーブルに即座に追加されます。トリガーの開始値は、作成時から 5 分に設定され、トリガーが有効になります。
- [スケジュール済みトリガーを新規作成] または [タスク イベント トリガーを新規作成] を使い、選択されたタイプのトリガーを新規作成します (下記のプロパティの説明を参照)。ダイアログが開きます。トリガーを編集して [OK] をクリックすると、ダイアログが閉じてテーブルにトリガーが追加されます。
- 適宜、[削除] を使い、テーブルで選択されたトリガーを削除します。
- 適宜、[編集] を使い、テーブルで選択されたトリガーの編集ダイアログを開きます。トリガーを編集し、[OK] をクリックしてダイアログを閉じ、変更内容を保存します。
-
[プリロード] 設定は変更できます。下記の説明を参照してください。既定で、アプリは 240 分プリロードされ、すべてのノードはプリロードの対象です。
- 任意でタグを適用します。
- 任意で、カスタム プロパティを適用します。
全項目が必須で、空欄のままにはできません。
ID プロパティ
プロパティ |
説明 |
デフォルト値 |
名前
|
タスクの名前。 |
<アプリ名> のプリロード タスク。 |
アプリ
|
タスクが作成されたアプリの名前。項目をクリックしてダイアログを開き、タスクがプリロードするアプリを (ダブルクリックして) 選択します。 |
<アプリ名> |
実行プロパティ
プロパティ |
説明 |
既定値 |
[有効化] |
選択されている場合、タスクは有効です。 |
選択値 |
[タスク セッション タイムアウト (分)] |
タスクが停止するまでの最大時間タスクが開始すると、マネージャー スケジューラによってセッションが開始、ノードの 1 つによってタスクが実行されます。セッションがタイムアウトすると、マネージャー スケジューラは強制的にノードにタスクを中止させて、セッションを削除します。
|
1440 |
[最大リトライ数] |
スケジューラが失敗したタスクの再起動を試みる最大回数。 |
0 |
スケジュール済みトリガーのプロパティ
プロパティ |
説明 |
[トリガー名] |
トリガーの名前。必須。 |
[有効化] |
トリガーの状態。選択するとトリガーはアクティブになります。
|
[タイム ゾーン] |
オペレーティング システムのタイム ゾーンがトリガーを作成した時間になります。トリガーを保存すると設定は保持され、タイムゾーンが違う場所に行っても元の設定値のまま表示されます。タイム ゾーンやトリガーの開始時間を変更したい場合は手動で行う必要があります。
情報メモタイム ゾーンの設定より前に作成されたトリガーについては、日時はすべてデフォルトで Coordinated Universal Time (UTC: 協定世界時) にて表示されます。
|
[夏時間] |
夏時間を考慮する方法。
[夏時間を使用する]: このオプションでは夏時間 (DST) が考慮されます。選択したタイム ゾーンで DST が使われていると、実行日時はそれに応じて調整されます。
[常に標準時]: このオプションでは DST は考慮されません。選択したタイム ゾーンで DST が使われていても、実行日時は調整されません。
[常に夏時間]: このオプションでは DST が考慮されません。タイム ゾーンで DST が使われている場合は、DST の適用期間外でも実行日時は常に DST に準じます。
情報メモDST を使用しないタイム ゾーンの場合は、常に [永久標準時] を選択します。
1 月にカナダのオタワで午前 10 時に開始するイベントのトリガーを作成したとします。ここのタイム ゾーンは (GMT-0500) 東部標準時 (米国およびカナダ) で DST の期間は 3 月から 11 月です。
[夏時間を使用する] を選択すると、10 時に開始するよう設定されたトリガーは常に 10 時に開始します。
[常に標準時] を選択すると、10 時に実行するよう設定されたトリガーは冬は 10 時に実行されますが夏は 9 時に実行されます。
[常に夏時間] を選択すると、10 時に実行するよう設定されたトリガーは冬は 11 時に、夏は 10 時に実行されます。
|
[Start] |
開始時間と開始日:
- 開始時間: [(hh:mm)]
- 開始日: (YYYY-MM-DD)
|
[スケジュール] |
トリガーの頻度。
-
[1 回]。
-
[時間単位]。トリガー実施の間隔。次の値を入力して、[各条件の後に繰り返す] を編集します。
- [s (時間単位] (既定 1 時間)
-
[s (分単位] (既定 0 分)
-
[日単位]。トリガー実施の間隔。[Every][s (日おき] (既定 1 日) の値を入力します。たとえば、2 と入力すると 2 日おきにトリガーが繰り返されます。
-
[週単位]。トリガー実施の間隔:
-
[月単位]。[On these days] のチェックボックスを選択 (複数可) すると、毎月トリガーが繰り返し実行される日を定義できます。
ヒント メモ[Monthly] を選択し、トリガーが毎月繰り返されるようにするには、28 日よりも前の日を選択する必要があります。
-
カスタム: [カスタム] を選択すると、[フィルター] と [増分] の 2 つの新しい項目が表示されます。これらのオプションは、リロードをスケジュールするときに大きな柔軟性を提供します。詳細は、「タスク - カスタム オプション 」を参照してください。
|
[終了] |
終了時間と終了日:
- 終了時間: [(hh:mm)]
- 終了日:(YYYY-MM-DD)
[無期限] を選択して、終了日のないトリガーを作成します。
|
タスク イベント トリガーのプロパティ
プロパティ |
説明 |
[トリガー名] |
トリガーの名前。必須。 |
[タイプ] |
トリガーのタイプ。 |
[有効化] |
トリガーの状態。選択するとトリガーはアクティブになります。 |
[時間制限] |
タスク チェーンの他のタスクを完了しなければならない期間 (分単位)。トリガーがひとつのタスクだけで構成されている場合、何も起きません。
タスク チェーンの作成
|
[タスク] |
|
次の手順を実行します。
-
[タスクの追加] をクリックして、トリガー条件として機能するタスクを追加します。
[ステータス] リストと空の [タスク] 項目が追加されます。
-
空の項目をクリックしてタスクを追加します。
タスク選択ダイアログが開き、次の列とともにタスクの一覧が表示されます。[名前]、タスクに接続した [ アプリ]、タスク名である [タグ]。
-
タスクをダブルクリックし、トリガー条件として使用します。
トリガーにタスクを追加し、ダイアログを閉じます。
-
[ステータス] リストで、トリガー条件が [TaskSuccessful] または [TaskFail] で処理されるかどうかを選択します。
情報メモ[タスク失敗] のトリガー条件を持つタスクは、先行タスクが失敗の状態で完了するときだけでなく、スキップまたはエラー (リロード前にエラーが発生する場合) の状態でも開始されます。2019 年 2 月以前の Qlik Sense バージョンでは、中止状態の先行タスクによっても「タスク失敗」トリガー条件によってもタスクが開始されました。この動作を有効にするには、すべてのスケジューラー ノードの Scheduler.exe.config で「DisableLegacyTaskEventTriggerBehavior」を「false」に設定します。
トリガーに含めたい全タスクで、上記のステップを繰り返します。タスクは一度しか追加できず、トリガーにすでに追加されている場合にはタスク選択ダイアログに表示されません。タスクの間には論理的な AND があります。
|
情報メモタスクを指定の順番で実行する必要はなく、[時間制限] は固定されていません。時間が制限に達した時に、1 つのタスクを除いてすべてのタスクが完了している場合、最初に完了したタスクは実行済みとはみなされず、期間の終わりを再計算します。トリガーは、再計算された期間にすべてのタスクが完了するのを待ちます。
プリロード プロパティ
プロパティ |
説明 |
存続時間 (分)
|
その時間にアプリが開かれなかったりリロードされなかったりした場合も、アプリのプリロード後にメモリーに残る時間を決定します。デフォルト値は 240 分です。
|
専用ノード
|
ここに専用ノードが追加されると、負荷分散アルゴリズムはプリロード タスクにこれらのノードのみを考慮します。ノードが追加されない場合、すべての使用可能なノード (プリロード タスクを実行するために構成済み) が考慮されます。
選択するノードが、ノード構成で [スケジューラー] サービスを有効化し、[プリロードを実行するスケジューラー] を選択することにより、プリロードを許可するよう構成されていることを確認してください。
|
タグ プロパティ
プロパティ |
説明 |
[タグ] |
ヒント メモ利用可能なタグがない場合、このプロパティ グループは空となります。
紐付けられているタグがテキスト ボックスの下に表示されます。
|
情報メモカスタム プロパティを利用できない場合、このプロパティ グループには何も表示されません (あるいは表示されても空です)。ここで表示する前に、このリソース タイプでカスタム プロパティを利用できるようにする必要があります。
-
アクション バーで [適用] をクリックし、変更内容を保存します。
ページ最下部に [追加完了] と表示されます。