クエリのスケジュール設定
クエリを周期的に実行するようにスケジュールして、クエリ結果が最新のデータで更新されるようにすることができます。スケジュールされたクエリでは、値が指定されたしきい値に達したときに通知を送信する特別な種類のスケジュールされたタスクである Databricks SQL アラートを有効にすることもできます。
デフォルトでは、クエリにはスケジュールがありません。
アラートでクエリを使用する場合、アラートは独自の更新スケジュールで実行され、クエリ スケジュールは使用されません。
クエリ スケジュールを設定する
スケジュールを設定するには:
-
クエリ エディターで、[ スケジュール > スケジュールの追加 ] をクリックして、スケジュール設定のメニューを開きます。
-
クエリをいつ実行するかを選択します。
- ドロップダウンピッカーを使用して、頻度、期間、開始時刻、タイムゾーンを指定します。 オプションで、 cron 構文を表示 チェックボックスを選択して、「Quartz cron 構文でスケジュールを編集します。
- [ その他のオプション ] を選択して、オプション設定を表示します。また、次のものも選択できます。
- スケジュールの名前。
- クエリを駆動するための SQLウェアハウス。 デフォルトでは、アドホッククエリの実行に使用される SQLウェアハウスは、スケジュールされたジョブにも使用されます。 このオプション設定を使用して、スケジュールされたクエリを実行する別のウェアハウスを選択します。
-
「作成 」をクリックします。クエリはスケジュールに従って自動的に実行されます。スケジュールされたクエリがスケジュールに従って実行されない場合は、クエリを手動でトリガーして、失敗しないようにする必要があります。
スケジュールされた実行中にクエリの実行が失敗した場合、SAP Databricks はバックオフ アルゴリズムを使用して再試行します。これは、エラーが続くため、再試行の頻度が低くなることを意味します。障害が続くと、次の再試行がスケジュールされた間隔を超える可能性があります。
スケジュールを作成すると、[ スケジュール ] ボタンのラベルに [Schedule(#)] と表示されます。ここで、 # は表示されるスケジュール済みイベントの数です。自分と共有されていないスケジュールは表示できません。
新しいスケジュールは、クエリへのアクセス権を持つ他のユーザーと自動的に共有されません。スケジュールされた実行と結果を他のユーザーに表示するには、次の手順で説明する共有設定を使用します。
-
スケジュールを共有する
クエリのアクセス許可は、スケジュールのアクセス許可にリンクされていません。スケジュールされた実行間隔を作成したら、スケジュールのアクセス許可を編集して、他のユーザーにアクセス権を付与します。
- 「スケジュール(#)」 をクリックします。
ケバブメニューをクリックし、[ スケジュール権限の編集 ]を選択します。
- ダイアログのドロップダウンメニューからユーザーまたはグループを選択します。
- [CAN VIEW] を選択すると、選択したユーザーがスケジュールされた実行の結果を表示できます。
更新動作と実行コンテキスト
クエリが "所有者として実行" され、スケジュールが追加されると、クエリ所有者の資格情報が実行に使用され、少なくとも CAN RUN を持つすべてのユーザーに、更新されたクエリの結果が表示されます。
クエリが "ビューアーとして実行" され、スケジュールが追加されると、スケジュール所有者の資格情報が実行に使用されます。適切なスケジュール権限を持つユーザーのみが、更新されたクエリの結果を表示します。他のすべてのビューアは、更新されたクエリ結果を表示するために手動で更新する必要があります。