適用対象: Databricks SQL
次のいずれかを実行できます:
- 既存のストリーミング テーブルを更新するためのスケジュールを追加します。
- ストリーミング テーブルの既存の更新スケジュールを変更します。
- ストリーミング テーブルの更新スケジュールを削除します。 スケジュールが削除された場合、最新のデータを反映するには、オブジェクトを手動で更新する必要があります。
テーブルまたはその列にコメントを追加または変更するには、 COMMENT ONを使用します。
構文
ALTER STREAMING TABLE table_name
{
{ ADD | ALTER } SCHEDULE [ REFRESH ] schedule_clause |
DROP SCHEDULE |
ALTER COLUMN clause |
SET ROW FILTER clause |
DROP ROW FILTER |
SET TAGS clause |
UNSET TAGS clause |
}
schedule_clause
{ EVERY number { HOUR | HOURS | DAY | DAYS | WEEK | WEEKS } |
CRON cron_string [ AT TIME ZONE timezone_id ] }
パラメーター
-
定義を変更するストリーミング テーブルの名前。 この名前には、テンポラル仕様を含めることはできません。
SCHEDULE [ REFRESH ] schedule_clause
ストリーミング テーブルにスケジュールを追加したり、スケジュールを変更したりできます。
EVERY number { HOUR | HOURS | DAY | DAYS | WEEK | WEEKS }
定期的に更新をスケジュールするには、
EVERY
構文を使用します。EVERY
構文が指定されている場合、ストリーミング テーブルまたは具体化されたビューは、指定された値 (HOUR
、HOURS
、DAY
、DAYS
、WEEK
、WEEKS
など) に基づいて、指定した間隔で定期的に更新されます。 次の表に、number
に使用できる整数値を示します。時間単位 整数値 HOUR or HOURS
1 <= H <= 72 DAY or DAYS
1<= D<= 31 WEEK or WEEKS
1 <= W <= 8 注
含まれる時間単位の単数形と複数形は、意味的に同等です。
CRON cron_string [ AT TIME ZONE timezone_id ]
quartz cron 値を使用して更新をスケジュールします。 有効な time_zone_values が受け入れられます。
AT TIME ZONE LOCAL
はサポートされません。AT TIME ZONE
が存在しない場合は、セッション タイム ゾーンが使用されます。AT TIME ZONE
が存在せず、セッション タイム ゾーンも設定されていない場合は、エラーがスローされます。SCHEDULE
は意味的にSCHEDULE REFRESH
と同等です。
-
重要
この機能はパブリック プレビュー段階にあります。
列のプロパティを変更します。
SET
ROW FILTER 句重要
この機能はパブリック プレビュー段階にあります。
ストリーミング テーブルに行フィルター関数を追加します。 ストリーミング テーブルに対する後続のすべてのクエリは、関数がブール
TRUE
に評価される行のサブセットを受け取ります。 これは、関数が呼び出し元ユーザーの ID またはグループ メンバーシップを検査して、特定の行をフィルター処理するかどうかを決定できる、きめ細かいアクセス制御に役立ちます。DROP ROW FILTER
重要
この機能はパブリック プレビュー段階にあります。
ストリーミング テーブル (存在する場合) から行フィルターを削除します。 今後のクエリでは、自動フィルター処理なしでテーブルからすべての行が返されます。
SET TAGS ( { tag_name = tag_value } [, ...] )
重要
この機能はパブリック プレビュー段階にあります。
ストリーミング テーブルにタグを適用します。 ストリーミング テーブルにタグを追加するには、
APPLY TAG
アクセス許可が必要です。tag_name
文字通りの
STRING
。tag_name
は、ストリーミング テーブルまたは列内で一意である必要があります。tag_value
文字通りの
STRING
。
UNSET TAGS ( tag_name [, ...] )
重要
この機能はパブリック プレビュー段階にあります。
ストリーミング テーブルからタグを削除します。 ストリーミング テーブルからタグを削除するには、
APPLY TAG
アクセス許可が必要です。tag_name
文字通りの
STRING
。tag_name
は、ストリーミング テーブルまたは列内で一意である必要があります。
例
-- Adds a schedule to refresh the streaming table once a day
-- at midnight in Los Angeles
> ALTER STREAMING TABLE my_st
ADD SCHEDULE CRON '0 0 0 * * ? *' AT TIME ZONE 'America/Los_Angeles';
-- Alters the schedule to run every 15 minutes for a streaming table
> ALTER STREAMING TABLE my_st
ALTER SCHEDULE EVERY 15 MINUTES;
-- Drops the schedule for a streaming table
> ALTER STREAMING TABLE my_st
DROP SCHEDULE;