ALTER TASK CREATE OR REPLACE TASK RESUME SHOW TASKS Snowflake SQL ストアドプロシージャ タスク

【SQL】【Snowflake】ストアドプロシージャをスケジュール実行する方法【タスク】【CREATE OR REPLACE TASK】

投稿日:

今回は、登録したストアドプロシージャをスケジュール登録し、自動走行する方法について解説します。

事前準備(テーブル作成~ストアドプロシージャの作成~実行)


-- テーブル作成
create or replace table DB1.PUBLIC.DATA1
(
  "id1" VARCHAR(10),
  "id2" VARCHAR(10)
);


-- プロシージャ定義
CREATE OR REPLACE PROCEDURE DB1.PUBLIC.INSERT_PROC1()

RETURNS VARCHAR
LANGUAGE SQL
AS
BEGIN

INSERT INTO DB1.PUBLIC.DATA1 VALUES ('1111', '1111');

END;


-- プロシージャ確認
SHOW PROCEDURES;


-- -- プロシージャ削除
-- DROP PROCEDURE DB1.PUBLIC.INSERT_PROC1()


-- プロシージャ呼び出し
CALL DB1.PUBLIC.INSERT_PROC1();

タスクの作成(スケジュールを設定)


-- タスクの作成
CREATE OR REPLACE TASK TASK1
  WAREHOUSE = XS
  SCHEDULE = 'USING CRON 00 07 * * * Asia/Tokyo'
AS
  CALL DB1.PUBLIC.INSERT_PROC1();
  • CREATE OR REPLACE TASKにより、タスクを作成できる。(スケジュール設定)
  • DB1.PUBLIC.TASK1を作成する。
  • 「WAREHOUSE = XS」により、ウェアハウスを指定。
  • 「SCHEDULE = ‘USING CRON 00 07 * * * Asia/Tokyo’」により、スケジュールを指定。(日本時刻で7:00を設定)
  • AS句により、スケジュール実行するプロシージャを記載。

タスクの確認


-- タスクの確認
SHOW TASKS;
  • SHOW TASKSにより、タスク一覧を確認できる(クエリ結果として表示)。
  • 今回は「TASK1」が表示された。

タスクの有効化


-- タスクの有効化
ALTER TASK TASK1 RESUME;

-- タスクの確認
SHOW TASKS;
  • ALTER TASK ~ RESUME;により、タスクを有効にできる。
  • SHOW TASKSにより、タスク一覧のステータス確認できる(クエリ結果として表示)。
  • 今回は、TASK1を有効化したことで、「started」となっている。
  • 「TASK1」を6回実行
  • 「DB1.PUBLIC.INSERT_PROC1()」を6回呼び出し
  • 6回実行されたことが確認できる。(6日跨いだ)

タスクの停止


-- タスクの停止
ALTER TASK TASK1 SUSPEND;

-- タスクの確認
SHOW TASKS;
  • ALTER TASK ~ SUSPEND;により、タスクを停止状態にできる。
  • SHOW TASKSにより、タスク一覧のステータス確認できる(クエリ結果として表示)。
  • 今回は、TASK1を停止したことで、「suspended」となっている。

【内部メモ】

  • ASIA/TOKYO
  • CREATE TASK(?)
  • スケジュール無し
  • ウェアハウス指定なし
  • SHOW TASKS詳細

-ALTER TASK, CREATE OR REPLACE TASK, RESUME, SHOW TASKS, Snowflake, SQL, ストアドプロシージャ, タスク

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

no image

【SQL】【Snowflake】データベースを削除する方法【DROP DATABASE】

今回は、Snowflake上でデータベースを削除する方法について、解説します。 — 削除用 drop DATABASE DB1; データベースDB1の削除 DROP DATABASE文では、指定した …

【SAS】SUMは足し算をする。その2【要約関数】【SQL】

今回もSQLのSUM(要約関数)について解説します。 過去記事でも、SQLのSUM関数について取り上げました。【SAS】SUMは足し算をする。その1【SQL】 | ビジネスイッチ (how-to-bu …

【SAS】”nは本来使用できない文字を使用可能にする。その2 SQLのSELECT文

今回も”nについて解説します。 (前回:【SAS】”nは本来使用できない文字を使用可能にする。 | ビジネスイッチ (how-to-business.com)) (参考:Solved: what th …

no image

【SQL】【Snowflake】スキーマを新規作成する方法【CREATE SCHEMA】

今回は、Snowflake上でスキーマを新規作成する方法について、解説します。 SQL文からスキーマを作成する方法 — 新規作成用 create schema DB1.SCHEMA1; スキーマ「S …

【SAS】「NOTE: PROC SQLはNOEXECオプションを設定し、ステートメントの構文をチェックします。」の対処法

今回はSQLプロシージャを実行した際に、NOEXECオプションを使用していないにも関わらず、 勝手にNOEXECオプションが有効になってしまう場合の対処法について解説します。 結論:構文エラーを正す。 …