Anmerkung
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen, dich anzumelden oder die Verzeichnisse zu wechseln.
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen , die Verzeichnisse zu wechseln.
Gilt für:
Databricks SQL
Ermöglicht das Ausführen der folgenden Aktionen:
- Hinzufügen, Ändern oder Ablegen eines Zeitplans oder Triggers zum Aktualisieren einer vorhandenen Streamingtabelle. Wenn kein Zeitplan oder Trigger vorhanden ist, muss das Objekt manuell aktualisiert werden, um die neuesten Daten widerzuspiegeln.
- Hinzufügen, Ändern oder Ablegen eines Zeilenfilters für eine vorhandene Streamingtabelle.
- Festlegen oder Aufheben von Tags für eine vorhandene Streamingtabelle.
- Ändern Von Spalteneigenschaften für eine vorhandene Streamingtabelle, einschließlich Masken, Tags und Kommentaren.
Hinweis
Das Ändern eines in einer Pipeline erstellten Datasets in einer Weise, die dem definierenden SQL widerspricht, kann dazu führen, dass einige Änderungen zurückgesetzt werden. Siehe Verwenden von ALTER Befehlen mit Lakeflow Spark Declarative Pipelines.
Syntax
ALTER STREAMING TABLE table_name
{
{ ADD | ALTER } schedule
DROP SCHEDULE |
ALTER COLUMN column_clause |
SET ROW FILTER clause |
DROP ROW FILTER |
SET TAGS clause |
UNSET TAGS clause |
}
schedule
{ SCHEDULE [ REFRESH ] schedule_clause |
TRIGGER ON UPDATE [ AT MOST EVERY trigger_interval ] }
schedule_clause
{ EVERY number { HOUR | HOURS | DAY | DAYS | WEEK | WEEKS } |
CRON cron_string [ AT TIME ZONE timezone_id ] }
column_clause
column_identifier
{ COMMENT clause |
SET MASK clause |
DROP MASK |
SET TAGS clause |
UNSET TAGS clause }
Parameter
-
Der Name der Streamingtabelle, deren Definition geändert werden soll. Der Name darf keine temporale Spezifikation enthalten.
Zeitplan
Hinzufügen oder Ändern einer
SCHEDULEAnweisungTRIGGERfür die Tabelle.Hinweis
Sie können den Zeitplan einer Streamingtabelle, die mit Lakeflow Spark Declarative Pipelines mit diesem Befehl erstellt wurde, nicht ändern. Verwenden Sie den Pipeline-Editor.
SCHEDULE [ REFRESH ] schedule_clauseEVERY number { HOUR | HOURS | DAY | DAYS | WEEK | WEEKS }Verwenden Sie
EVERYdie Syntax, um eine aktualisierung zu planen, die in regelmäßigen Abständen auftritt. WennEVERYdie Syntax angegeben ist, wird die Streamingtabelle oder materialisierte Ansicht regelmäßig im angegebenen Intervall aktualisiert, basierend auf dem angegebenen Wert, zHOUR. B. , ,HOURS,DAY,DAYS,WEEKoderWEEKS. In der folgenden Tabelle sind akzeptierte ganzzahlige Werte fürnumber.Zeiteinheit Ganzzahliger Wert HOUR or HOURS1 <= H <= 72 DAY or DAYS1 <= D <= 31 WEEK or WEEKS1 <= W <= 8 Hinweis
Die Singular- und Pluralformen der enthaltenen Zeiteinheit sind semantisch gleichwertig.
CRON cron_string [ AT TIME ZONE timezone_id ]Um eine Aktualisierung mit einem Quarz-Cron-Wert zu planen. Gültige time_zone_values werden akzeptiert.
AT TIME ZONE LOCALwird nicht unterstützt.Fehlt
AT TIME ZONE, wird die Sitzungszeitzone verwendet. WennAT TIME ZONEfehlt und die Sitzungszeitzone nicht festgelegt ist, wird ein Fehler ausgelöst.SCHEDULEist semantisch äquivalent mitSCHEDULE REFRESH.
TRIGGER ON UPDATE [ AT MOST EVERY trigger_interval ]Von Bedeutung
Das
TRIGGER ON UPDATEFeature befindet sich in der Betaversion.Legt fest, dass die Tabelle aktualisiert wird, wenn eine upstream-Datenquelle mindestens einmal pro Minute aktualisiert wird. Legen Sie einen Wert fest, für
AT MOST EVERYden mindestens eine Mindestzeit zwischen Aktualisierungen erforderlich ist.Die upstream-Datenquellen müssen externe oder verwaltete Delta-Tabellen (einschließlich materialisierter Ansichten oder Streamingtabellen) oder verwaltete Ansichten sein, deren Abhängigkeiten auf unterstützte Tabellentypen beschränkt sind.
Durch das Aktivieren von Dateiereignissen können Trigger leistungsleistungsfähiger werden und einige der Grenzwerte für Triggerupdates erhöht werden.
Dies
trigger_intervalist eine INTERVAL-Anweisung , die mindestens 1 Minute beträgt.TRIGGER ON UPDATEhat die folgenden Einschränkungen:- Nicht mehr als 10 upstream-Datenquellen pro Streamingtabelle bei Verwendung von TRIGGER ON UPDATE.
- Maximal 1000 Streamingtabellen oder materialisierte Ansichten können mit TRIGGER ON UPDATEangegeben werden.
- Die
AT MOST EVERYKlausel ist standardmäßig auf 1 Minute festgelegt und darf nicht kleiner als 1 Minute sein.
DROP SCHEDULEEntfernt einen Zeitplan aus der Streamingtabelle.
ALTER COLUMN clauseSiehe ALTER-KlauselCOLUMN.
-
Gilt für:
Databricks SQL
Databricks Runtime 16.2 und höherVon Bedeutung
Dieses Feature befindet sich in der Public Preview.
Fügt der Streamingtabelle eine Zeilenfilterfunktion hinzu. Alle nachfolgenden Abfragen der Streamingtabelle erhalten eine Teilmenge der Zeilen, in denen die Funktion als boolescher
TRUEWert ausgewertet wird. Dies kann für eine fein abgestufte Zugriffssteuerung nützlich sein, bei der die Funktion die Identität oder Gruppenmitgliedschaften der aufrufenden Benutzer überprüfen kann, um zu entscheiden, ob bestimmte Spalten gefiltert werden sollen.Zeilenfilter, die nach der Erstellung hinzugefügt wurden, werden nur nach dem nächsten Update an nachgelagerte Tabellen weitergegeben. Für fortlaufende Pipelines erfordert dies einen Pipelineneustart.
DROP ROW FILTERGilt für:
Databricks SQL
Databricks Runtime 16.2 und höherVon Bedeutung
Dieses Feature befindet sich in der Public Preview.
Legt den Zeilenfilter aus der Streamingtabelle ab, falls vorhanden. Zukünftige Abfragen geben alle Zeilen aus der Tabelle ohne automatische Filterung zurück.
SET TAGS ( { tag_name = tag_value } [, ...] )Gilt für:
Databricks SQL
Databricks Runtime 16.3 und höherVon Bedeutung
Dieses Feature befindet sich in der Public Preview.
Anwenden von Tags auf die Streamingtabelle. Sie müssen die Berechtigung
APPLY TAGzum Hinzufügen von Tags zur Streamingtabelle haben.tag_nameEin
STRING-Literal. Dastag_namemuss innerhalb der Streamingtabelle eindeutig sein.tag_valueEin
STRING-Literal.
UNSET TAGS ( tag_name [, ...] )Gilt für:
Databricks SQL
Databricks Runtime 16.3 und höherVon Bedeutung
Dieses Feature befindet sich in der Public Preview.
Entfernen sie Tags aus der Streamingtabelle. Sie müssen die Berechtigung
APPLY TAGhaben, um Tags aus der Streamingtabelle zu entfernen.tag_nameEin
STRING-Literal. Dastag_namemuss innerhalb der Streamingtabelle eindeutig sein.
ALTER-Klausel COLUMN
Von Bedeutung
Dieses Feature befindet sich in der Public Preview.
Ändert eine Eigenschaft oder die Position einer Spalte.
Syntax
ALTER COLUMN
column_identifier
{ COMMENT comment |
SET MASK mask_clause |
DROP MASK |
SET TAGS clause |
UNSET TAGS clause }
Parameter
-
Der Name der Spalte, die geändert werden soll.
COMMENT commentGilt für:
Databricks SQL
Databricks Runtime 16.2 und höherÄndert die Beschreibung der
column_name-Spalte.commentmuss einSTRING-Literal sein.SETMASK-KlauselGilt für:
Databricks SQL
Databricks Runtime 16.2 und höherFügt eine Spaltenmaskierungsfunktion hinzu, um sensible Daten zu anonymisieren. Alle nachfolgenden Abfragen aus dieser Spalte erhalten das Ergebnis der Auswertung dieser Funktion über der Spalte anstelle des ursprünglichen Werts der Spalte. Dies kann für eine präzise Zugriffssteuerung nützlich sein, bei der die Funktion die Identität oder Gruppenmitgliedschaft der aufrufenden Benutzenden überprüfen kann, um zu bestimmen, ob der Wert zurückgezogen werden soll.
Spaltenmasken, die nach der Erstellung hinzugefügt wurden, werden erst mit dem nächsten Update in nachfolgende Tabellen weitergegeben. Für fortlaufende Pipelines erfordert dies einen Pipelineneustart.
DROP MASKGilt für:
Databricks SQL
Databricks Runtime 16.2 und höherEntfernt das Spaltenformat für diese Spalte, sofern vorhanden. Zukünftige Abfragen aus dieser Spalte erhalten die ursprünglichen Werte der Spalte.
SET TAGS ( { tag_name = tag_value } [, ...] )Gilt für:
Databricks SQL
Databricks Runtime 16.3 und höherWenden Sie Tags auf die Spalte an. Sie benötigen die Berechtigung
APPLY TAG, um Tags zur Spalte hinzufügen zu können.tag_name
Ein
STRING-Literal.tag_namemuss innerhalb der Tabelle oder Spalte eindeutig sein.tag_value
Ein
STRING-Literal.
UNSET TAGS ( tag_name [, ...] )Gilt für:
Databricks SQL
Databricks Runtime 16.3 und höherEntfernen Sie die angegebenen Tags aus der Spalte. Sie benötigen die Berechtigung
APPLY TAG, um Tags aus der Spalte entfernen zu können.tag_name
Ein
STRING-Literal.tag_namemuss innerhalb der Tabelle oder Spalte eindeutig sein.
Beispiele
-- Adds a schedule to refresh the streaming table whenever its upstream data gets updated.
> ALTER STREAMING TABLE my_st
ADD TRIGGER ON UPDATE;
-- Alters the schedule to refresh the streaming table when its upstream data
-- gets updated, with no more than one update per hour.
> ALTER STREAMING TABLE my_st
ALTER TRIGGER ON UPDATE AT MOST EVERY INTERVAL 1 hour;
-- Alters the schedule to run every one hour.
> ALTER STREAMING TABLE my_st
ALTER SCHEDULE EVERY 1 HOUR;
-- Alters the schedule to refresh the streaming table once a day
-- at midnight in Los Angeles
> ALTER STREAMING TABLE my_st
ALTER SCHEDULE CRON '0 0 0 * * ? *' AT TIME ZONE 'America/Los_Angeles';
-- Drops the schedule for a streaming table
> ALTER STREAMING TABLE my_st
DROP SCHEDULE;
-- Adds a column comment
> ALTER STREAMING TABLE my_st
ALTER COLUMN column_name COMMENT 'test'