ALTER MATERIALIZED VIEW

Ändert eine materialisierte Ansicht im aktuellen/angegebenen Schema. Folgende Aktionen werden unterstützt:

  • Umbenennen der materialisierten Ansicht

  • Anhalten und Fortsetzen der Verwendung und Wartung der materialisierten Ansicht

  • Clustering der materialisierten Ansicht

  • Anhalten und Fortsetzen des Reclustering der materialisierten Ansicht

  • Löschen des Clustering der materialisierten Ansicht

Weitere Details dazu finden Sie unter Verwenden von materialisierten Ansichten.

Siehe auch:

CREATE MATERIALIZED VIEW, DROP MATERIALIZED VIEW, SHOW MATERIALIZED VIEWS, DESCRIBE MATERIALIZED VIEW

Syntax

ALTER MATERIALIZED VIEW <name>
  {
  RENAME TO <new_name>                     |
  CLUSTER BY ( <expr1> [, <expr2> ... ] )  |
  DROP CLUSTERING KEY                      |
  SUSPEND RECLUSTER                        |
  RESUME RECLUSTER                         |
  SUSPEND                                  |
  RESUME                                   |
  SET {
    [ SECURE ]
    [ COMMENT = '<comment>' ]
    }                                      |
  UNSET {
    SECURE                                 |
    COMMENT
    }
  }

ALTER MATERIALIZED VIEW
  SET DATA_METRIC_SCHEDULE = {
      '<num> MINUTE'
    | 'USING CRON <expr> <time_zone>'
  }

ALTER MATERIALIZED VIEW UNSET DATA_METRIC_SCHEDULE
Copy

Parameter

name

Gibt den Bezeichner der zu ändernden materialisierten Ansicht an.

RENAME TO new_name

Mit dieser Option können Sie eine materialisierte Ansicht umbenennen.

Der neue Bezeichner muss in dem Schema, in dem die Ansicht erstellt wird, eindeutig sein. Der neue Bezeichner muss mit einem alphabetischen Zeichen beginnen und darf keine Leer- oder Sonderzeichen enthalten, es sei denn, die gesamte Bezeichnerzeichenfolge wird in doppelte Anführungszeichen gesetzt (z. B. "My object"). Bei Bezeichnern, die in doppelte Anführungszeichen eingeschlossen sind, ist auch die Groß-/Kleinschreibung zu beachten. Weitere Details dazu finden Sie unter Anforderungen an Bezeichner.

Sie können das Objekt in eine andere Datenbank und/oder in ein anderes Schema verschieben und dabei optional das Objekt umbenennen. Geben Sie dazu einen qualifizierten new_name-Wert an, der den neuen Datenbank- und/oder Schemanamen im Format db_name.schema_name.object_name bzw. schema_name.object_name enthält.

Bemerkung

  • Die Zieldatenbank und/oder das Zielschema müssen bereits vorhanden sein. Außerdem darf in der Zieldatenbank nicht bereits ein gleichnamiges Schema vorhanden sein, da die Anweisung sonst einen Fehler zurückgibt.

  • Das Verschieben eines Objekts in ein verwaltetes Zugriffsschema ist nicht zulässig, es sei denn, der Objekteigentümer (d. h. die Rolle mit der Berechtigung OWNERSHIP für das Objekt) ist auch Eigentümer des Zielschemas.

Beachten Sie, dass beim Umbenennen einer materialisierten Ansicht die Verweise auf diese Ansicht nicht aktualisiert werden. Wenn Sie beispielsweise über einer materialisierten Ansicht eine Ansicht mit dem Namen V1 erstellen und anschließend die materialisierte Ansicht umbenennen, ist die Definition der Ansicht V1 nicht mehr aktuell.

CLUSTER BY expr#

Mit diesem Befehl können materialisierte Ansichten geclustert werden. Durch das Clustering werden die Zeilen in der materialisierten Ansicht neu angeordnet, was die Leistung von Abfragen erhöht, die auf Basis der Gruppierungsschlüsselausdrücke filtern.

expr# gibt einen Ausdruck an, für den die materialisierte Ansicht geclustert werden soll. Normalerweise ist jeder Ausdruck der Name einer Spalte in der materialisierten Ansicht.

Weitere Informationen zum Clustering materialisierter Ansichten finden Sie unter Materialisierte Ansichten und Clustering. Weitere allgemeine Informationen zum Clustering finden Sie unter Was ist Daten-Clustering?.

DROP CLUSTERING KEY

Mit diesem Befehl wird das Clustering der materialisierten Ansicht gelöscht.

SUSPEND RECLUSTER

Mit der Option SUSPEND RECLUSTER wird das Reclustering der materialisierten Ansicht unterbrochen. Weitere Informationen zum Clustering materialisierter Ansichten finden Sie unter Materialisierte Ansichten und Clustering.

RESUME RECLUSTER

Die Option RESUME RECLUSTER setzt das Reclustering der materialisierten Ansicht fort.

SUSPEND

Die Option SUSPEND unterbricht die Wartung (Aktualisierungen) und die Verwendung der materialisierten Ansicht. Während die Ansicht angehalten ist, werden Änderungen an der Basistabelle nicht an die materialisierte Ansicht weitergegeben. Die materialisierte Ansicht selbst ist ebenfalls nicht zugänglich. Wenn Sie versuchen, diese zu verwenden, erhalten Sie eine Fehlermeldung ähnlich der folgenden:

Failure during expansion of view 'MV1':
  SQL compilation error: Materialized View MV1 is invalid.
  Invalidation reason: Marked Materialized View as invalid manually.

Wenn Sie eine geclusterte materialisierte Ansicht anhalten, wird durch das Anhalten der Ansicht implizit das Reclustering dieser Ansicht unterbrochen.

RESUME

Mit der Option RESUME können Sie die materialisierte Ansicht fortsetzen. Außerdem wird die Wartung der materialisierten Ansicht fortgesetzt. Wenn die Ansicht geclustert ist, nimmt sie implizit auch das Reclustering dieser Ansicht wieder auf.

SET ...

Gibt die Eigenschaft an, die für die materialisiert Ansicht festgelegt werden soll:

SECURE

Mit dieser Option wird aus der Ansicht eine sichere Ansicht. Weitere Informationen zu sicheren Ansichten finden Sie unter Verwenden von sicheren Ansichten.

COMMENT = 'string_literal'

Diese Option legt einen Kommentar für die materialisierte Ansicht fest. Der Kommentar hat keine Auswirkung auf das Verhalten der Ansicht, kann jedoch nützliche Informationen für Personen bereitstellen, die die Ansicht verwenden oder pflegen.

DATA_METRIC_SCHEDULE ...

Gibt den Zeitplan für die regelmäßige Ausführung der Datenmetrikfunktion an.

'num MINUTE'

Gibt ein Intervall (in Minuten) für die Wartezeit an, die zwischen Ausführungen der Datenmetrikfunktion eingefügt wird. Akzeptiert nur positive ganze Zahlen.

Unterstützt auch die Syntax num M.

Verwenden Sie für Datenmetrikfunktionen einen der folgenden Werte: 5, 15, 30, 60, 720 oder 1440.

'USING CRON expr time_zone'

Gibt einen Cron-Ausdruck und eine Zeitzone für die regelmäßige Ausführung der Datenmetrikfunktion an. Unterstützt eine Teilmenge der Standardsyntax des Cron-Dienstprogramms.

Eine Liste der Zeitzonen finden Sie unter List of tz database time zones (Liste der Zeitzonen aus der Zeitzonen-Datenbank) (Wikipedia).

Der cron-Ausdruck besteht aus den folgenden Feldern, und das periodische Intervall muss mindestens 5 Minuten betragen:

# __________ minute (0-59)
# | ________ hour (0-23)
# | | ______ day of month (1-31, or L)
# | | | ____ month (1-12, JAN-DEC)
# | | | | _ day of week (0-6, SUN-SAT, or L)
# | | | | |
# | | | | |
  * * * * *
Copy

Folgende Sonderzeichen werden unterstützt:

*

Platzhalter. Gibt jedes vorkommende Feld an.

L

Steht für „last“ (letzte). Bei Verwendung im Feld Wochentag können Sie Konstrukte wie „den letzten Freitag“ („5L“) eines bestimmten Monats angeben. Im Feld Tag des Monats wird der letzte Tag des Monats angegeben.

/{n}

Gibt die n-te Instanz einer bestimmten Zeiteinheit an. Jeder Zeitanteil wird unabhängig berechnet. Wenn beispielsweise im Monatsfeld 4/3 angegeben ist, ist die Datenmetrikfunktion für April, Juli und Oktober geplant (d. h. alle 3 Monate, beginnend mit dem 4. Monat des Jahres). In den Folgejahren wird derselbe Zeitplan beibehalten. Das heißt, die Datenmetrikfunktion ist nicht für eine Ausführung im Januar (3 Monate nach der Oktober-Ausführung) geplant.

Bemerkung

  • Der Cron-Ausdruck wird derzeit nur für die angegebene Zeitzone ausgewertet. Das Ändern des TIMEZONE-Parameterwerts für das Konto (oder das Festlegen des Werts auf Benutzer- oder Sitzungsebene) führt nicht zur Änderung der Zeitzone der Datenmetrikfunktion.

  • Der Cron-Ausdruck definiert alle gültigen Ausführungszeiten für die Datenmetrikfunktion. Snowflake versucht, eine Datenmetrikfunktion basierend auf diesem Zeitplan auszuführen. Eine gültige Laufzeit wird jedoch übersprungen, wenn eine vorherige Laufzeit nicht vor dem Start der nächsten gültigen Laufzeit abgeschlossen wurde.

  • Wenn sowohl ein bestimmter Tag des Monats als auch ein bestimmter Wochentag im Cron-Ausdruck enthalten sind, wird die Datenmetrikfunktion an Tagen geplant, die entweder dem Tag des Monats oder dem Wochentag entsprechen. Beispielsweise plant DATA_METRIC_SCHEDULE = 'USING CRON 0 0 10-20 * TUE,THU UTC' eine Datenmetrikfunktion um 0:00 Uhr an jedem 10. bis 20. Tag des Monats und auch an jedem Dienstag oder Donnerstag außerhalb dieser Tage.

  • Der kleinste Zeitwert in Cron ist Minute.

UNSET ...

Gibt die Eigenschaft an, die für die materialisierte Ansicht deaktiviert werden soll:

  • SECURE

  • TAG tag_name [ , tag_name ... ]

  • COMMENT

  • DATA_METRIC_SCHEDULE

Nutzungshinweise

  • Verwenden Sie den Befehl ALTER VIEW, um eine Maskierungsrichtlinie, eine Zeilenzugriffsrichtlinie oder ein Tag auf einer materialisierten Ansicht anzugeben/zu entfernen.

  • Sie können die Datenmetrikfunktionen (DMFs) mit materialisierten Ansichten wie folgt verwenden:

    • Um den Parameter DATA_METRIC_SCHEDULE in der materialisierten Ansicht festzulegen, verwenden Sie den Befehl ALTER MATERIALIZED VIEW. Weitere Informationen dazu finden Sie unter Ausführung von DMFs planen.

    • Um eine DMF zu einer Spalte hinzuzufügen oder eine DMF aus einer Spalte in einer materialisierten Ansicht zu entfernen, verwenden Sie den Befehl ALTER VIEW.

  • Hinweis zu Metadaten:

    Achtung

    Kunden müssen sicherstellen, dass bei der Nutzung des Snowflake-Dienstes keine personenbezogenen Daten (außer für ein Objekt „Benutzer“), sensible Daten, exportkontrollierte Daten oder andere regulierte Daten als Metadaten eingegeben werden. Weitere Informationen dazu finden Sie unter Metadatenfelder in Snowflake.

Beispiele

Umbenennen einer materialisierten Ansicht:

ALTER MATERIALIZED VIEW table1_MV RENAME TO my_mv;
Copy

Clustern einer materialisierten Ansicht:

ALTER MATERIALIZED VIEW my_mv CLUSTER BY(i);
Copy

Anhalten des Clustering einer materialisierten Ansicht, aber keine Verwendung der Ansicht:

ALTER MATERIALIZED VIEW my_mv SUSPEND RECLUSTER;
Copy

Fortsetzen des Clustering einer materialisierten Ansicht:

ALTER MATERIALIZED VIEW my_mv RESUME RECLUSTER;
Copy

Anhalten der Verwendung und der automatischen Wartung der angegebenen materialisierten Ansicht:

ALTER MATERIALIZED VIEW my_mv SUSPEND;
Copy

Fortsetzen der Verwendung und der automatischen Wartung der angegebenen materialisierten Ansicht:

ALTER MATERIALIZED VIEW my_mv RESUME;
Copy

Stoppen des Clustering einer materialisierten Ansicht:

ALTER MATERIALIZED VIEW my_mv DROP CLUSTERING KEY;
Copy

Ändern der Ansicht in eine sichere Ansicht:

ALTER MATERIALIZED VIEW mv1 SET SECURE;
Copy

Hinzufügen oder Ersetzen des Kommentars einer materialisierten Ansicht:

ALTER MATERIALIZED VIEW mv1 SET COMMENT = 'Sample view';
Copy