Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gilt für:
Databricks SQL
Ändert Metadaten, die der Sicht zugeordnet sind.
Ermöglicht das Ausführen der folgenden Aktionen:
- Fügen Sie einen Zeitplan für das Aktualisieren einer vorhandenen materialisierten Sicht hinzu.
- Ändern eines vorhandenen Aktualisierungszeitplans für eine materialisierte Ansicht
- Löschen des Aktualisierungszeitplans für eine materialisierte Sicht Wenn der Zeitplan gelöscht wird, muss das Objekt manuell aktualisiert werden, um die neuesten Daten widerzuspiegeln.
Um einen Kommentar zu einer materialisierten Ansicht hinzuzufügen oder zu ändern, verwenden Sie COMMENT ON.
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 MATERIALIZED VIEW view_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 materialisierten Ansicht, um die Definition zu ändern. Der Name darf keine temporale Spezifikation enthalten.
Zeitplan
Fügen Sie eine oder eine
SCHEDULEAnweisung zur materialisierten Ansicht hinzu oderTRIGGERändern Sie sie.Hinweis
Sie können den Zeitplan einer materialisierten Ansicht, 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. Wenn die SyntaxEVERYangegeben ist, wird die Streaming-Tabelle oder materialisierte Ansicht regelmäßig in dem angegebenen Intervall aktualisiert, basierend auf dem angegebenen Wert, z. B.HOUR,HOURS,DAY,DAYS,WEEKoderWEEKS. In der folgenden Tabelle sind die akzeptierten Werte für ganze Zahlen vonnumberaufgeführt.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 ]Zum Planen einer Aktualisierung mithilfe eines quartz cron-Werts. 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 die materialisierte Ansicht fest, die aktualisiert werden soll, 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 materialisierte Ansicht 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 materialisierten Ansicht.
ALTER COLUMN clauseSiehe ALTER-KlauselCOLUMN.
-
Von Bedeutung
Dieses Feature befindet sich in der Public Preview.
Fügt der materialisierten Ansicht eine Zeilenfilterfunktion hinzu. Alle nachfolgenden Abfragen der materialisierten Ansicht 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 FILTERVon Bedeutung
Dieses Feature befindet sich in der Public Preview.
Legt den Zeilenfilter aus der materialisierten Ansicht ab, falls vorhanden. Zukünftige Abfragen geben alle Zeilen aus der Tabelle ohne automatische Filterung zurück.
SET TAGS ( { tag_name = tag_value } [, ...] )Von Bedeutung
Dieses Feature befindet sich in der Public Preview.
Anwenden von Tags auf die materialisierte Ansicht. Sie müssen über die
APPLY TAG-Berechtigung zum Hinzufügen von Tags zur materialisierten Ansicht verfügen.tag_nameEin
STRING-Literal. Dastag_namemuss innerhalb der materialisierten Ansicht oder Spalte eindeutig sein.tag_valueEin
STRING-Literal.
UNSET TAGS ( tag_name [, ...] )Von Bedeutung
Dieses Feature befindet sich in der Public Preview.
Entfernen Sie Tags aus der materialisierten Ansicht. Sie benötigen die
APPLY TAGBerechtigung, um Tags aus der materialisierten Ansicht zu entfernen.tag_nameEin
STRING-Literal. Dastag_namemuss innerhalb der materialisierten Ansicht oder Spalte 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 commentÄndert die Beschreibung der
column_name-Spalte.commentmuss einSTRING-Literal sein.SETMASK-KlauselFü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 MASKEntfernt 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 } [, ...] )Wenden 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 [, ...] )Entfernen 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 materialized view whenever its upstream data gets updated.
> ALTER MATERIALIZED VIEW my_mv
ADD TRIGGER ON UPDATE;
-- Alters the schedule to refresh the materialized view when its upstream data
-- gets updated, and make sure the update frequency is no more than 1 update
-- per hour.
> ALTER MATERIALIZED VIEW my_mv
ALTER TRIGGER ON UPDATE AT MOST EVERY INTERVAL 1 hour;
-- Alters the schedule to run every two hours for a materialized view
> ALTER MATERIALIZED VIEW my_mv
ALTER SCHEDULE EVERY 2 HOURS;
-- Alters the schedule to refresh a materialized view once a day
-- at midnight in Los Angeles
> ALTER MATERIALIZED VIEW my_mv
ALTER SCHEDULE CRON '0 0 0 * * ? *' AT TIME ZONE 'America/Los_Angeles';
-- Drops the schedule for a materialized view
> ALTER MATERIALIZED VIEW my_mv
DROP SCHEDULE;
-- Adds a column comment
> ALTER MATERIALIZED VIEW my_mv
ALTER COLUMN my_column_name COMMENT 'test'