Dynamische Tabellen überwachen

Unter diesem Thema wird beschreiben, wie Sie die dynamischen Tabellen in Ihren Pipelines anzeigen und verstehen können:

Abschnitt

Beschreibung

Dynamische Tabellen auflisten oder Informationen zu bestimmten Spalten anzeigen

Dynamischen Tabellen in einem Schema auflisten und Informationen dazu anzeigen

Diagramm der Tabellen anzeigen, die mit Ihren dynamischen Tabellen verbunden sind

Diagramm der Tabellen ansehen, die mit Ihren dynamischen Tabellen verbunden sind

Überwachen Sie Ihre dynamischen Tabellen mit SQL-Tabellenfunktionen

Ihre dynamischen Tabellen mit den SQL-Tabellenfunktionen überwachen

Aktualisierungsstatus für Ihre dynamischen Tabellen überwachen

Aktualisierungsstatus für Ihre dynamischen Tabellen ansehen

Dynamische Tabellen auflisten oder Informationen zu bestimmten Spalten anzeigen

Um die dynamischen Tabellen in einem Schema aufzulisten und Informationen über diese dynamischen Tabellen anzuzeigen, können Sie entweder die folgenden SQL-Befehle oder Snowsight verwenden, solange Sie eine Rolle verwenden, die die MONITOR-Berechtigung für die dynamischen Tabellen hat.

Weitere Informationen dazu finden Sie unter Berechtigung zum Anzeigen der Metadaten einer dynamischen Tabelle.

Um die dynamischen Tabellen aufzulisten, die in der aktuellen Datenbank vorhanden sind (oder im Konto, wenn derzeit keine Datenbank verwendet wird), verwenden Sie den Befehl SHOW DYNAMIC TABLES.

Um beispielsweise die dynamischen Tabellen in der Datenbank mydb und dem Schema myschema aufzulisten, deren Namen mit product_ beginnen, führen Sie die folgende SQL-Anweisung aus:

SHOW DYNAMIC TABLES LIKE 'product_%' IN SCHEMA mydb.myschema;
Copy
+-------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  | created_on               | name       | database_name | schema_name | cluster_by | rows | bytes  | owner    | target_lag | refresh_mode | refresh_mode_reason  | warehouse | comment | text                            | automatic_clustering | scheduling_state | last_suspended_on | is_clone  | is_replica  | is_iceberg | data_timestamp           | owner_role_type |
  |-------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
  |2025-01-01 16:32:28 +0000 | product_dt | my_db         | my_schema   |            | 2    | 2048   | ORGADMIN | DOWNSTREAM | INCREMENTAL  | null                 | mywh      |         | create or replace dynamic table | OFF                  | ACTIVE           | null              | false     | false       | false      |2025-01-01 16:32:28 +0000 | ROLE            |
                                                                                                                                                                                         |  product dt ...                 |                                                                                                                                                 |                                                                                                                                                                                                                                                                                                                                                                                                                       |
  +-------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

Um Informationen zu den Spalten in einer dynamischen Tabelle auszugeben, verwenden Sie den Befehl DESCRIBE DYNAMIC TABLE.

Um zum Beispiel die Spalten in my_dynamic_table aufzulisten, führen Sie die folgende SQL-Anweisung aus:

DESC DYNAMIC TABLE my_dynamic_table;
Copy
+-------------------+--------------------------------------------------------------------------------------------------------------------------+
  | name   | type         | kind   | null? | default | primary key | unique key | check | expression | comment | policy name  | privacy domain |
  |-------------------+------------------------------------------------------------------------------------------------------------------------|
  | AMOUNT | NUMBER(38,0) | COLUMN | Y     | null    | N           | N          | null  | null       | null    | null         | null           |                                                                                                                                                  |                                                                                                                                                                                                                                                                                                                                                                                                                       |
  +-------------------+------------------------------------------------------------------------------------------------------------------------+

Dynamische Tabellen sind auch in den Ergebnissen der Ansicht TABLES enthalten.

Diagramm der Tabellen anzeigen, die mit Ihren dynamischen Tabellen verbunden sind

Die Anzeige von Abhängigkeiten ist besonders nützlich bei der Fehlersuche in dynamischen Tabellenketten. In der Snowsight können Sie mit dem Verlaufsdiagramm visualisieren, von welchen dynamischen Tabellen eine bestimmte dynamische Tabelle abhängt. Sie können zum Beispiel Folgendes identifizieren:

  • vorgelagerte Abhängigkeiten, aus denen eine dynamische Tabelle Daten bezieht-.

  • nachgelagerte Abhängigkeiten, die durch Änderungen an einer dynamischen Tabelle beeinträchtigt werden könnten.

Ein Beispieldiagramm.

Abhängigkeiten können die Aktualisierungsleistung beeinträchtigen. Nehmen wir zum Beispiel an, dass die vorgelagerte Tabelle Ihrer dynamischen Tabelle kurz vor ihrer geplanten Aktualisierung eine große Datenmenge enthält. Ihre dynamische Tabelle wartet, bis die Aktualisierung abgeschlossen ist, wodurch sie ihre Zielverzögerungszeit verfehlt. Im Verlaufsdiagramm sehen Sie die Eingabetabelle als „in Ausführung“ markiert, was auf die Verzögerung hinweist.

Um das Diagramm einer bestimmten dynamischen Tabelle anzuzeigen, gehen Sie wie folgt vor:

  1. Melden Sie sich bei Snowsight an.

  2. Gehen Sie im Navigationsmenü auf Monitoring » Dynamic Tables.

  3. Wählen Sie Ihre dynamische Tabelle. Die Ansicht Graph wird standardmäßig angezeigt. Auf dieser Registerkarte wird der Task-Graph mit dem Knoten für die ausgewählte dynamische Tabelle angezeigt. Der Bereich Details auf der rechten Seite zeigt Informationen zu ihren Verzögerungsmetriken und ihrer Konfiguration an.

  4. Um die Details einer anderen Tabelle im Diagramm anzuzeigen, wählen Sie diese Tabelle aus.

Um die Grafik zu aktualisieren, wählen Sie die Aktualisierungsschaltfläche in der Leiste oberhalb der Grafik.

Aktualisieren der Anzeige des Task-Graphen.

Wenn eine Aktualisierung aufgrund eines UPSTREAM_FAILED-Fehlercodes fehlgeschlagen ist, können Sie das Diagramm verwenden, um zu sehen, welche vorgelagerte Tabelle den Fehler verursacht hat.

UPSTREAM_FAILED in der Anzeige des Diagramms.

Um die vollständigen Details einer Tabelle im Diagramm anzuzeigen, siehe Dynamische Tabellen auflisten oder Informationen zu bestimmten Spalten anzeigen.

Überwachen Sie Ihre dynamischen Tabellen mit SQL-Tabellenfunktionen

Verwenden Sie die folgenden INFORMATION_SCHEMA-Tabellenfunktionen, um Ihre dynamischen Tabellen zu überwachen:

  • DYNAMIC_TABLES: Gibt Metadaten zu Ihren dynamischen Tabellen zurück, einschließlich aggregierter Verzögerungsmetriken und des Status der letzten Aktualisierungen innerhalb von sieben Tagen ab dem aktuellen Zeitpunkt.

  • DYNAMIC_TABLE_REFRESH_HISTORY: Gibt Informationen zu jeder abgeschlossenen und laufenden Aktualisierung Ihrer dynamischen Tabellen zurück, einschließlich Aktualisierungsstatus und Trigger sowie der Zielverzögerung.

    • Ansicht DYNAMIC_TABLE_REFRESH_HISTORY: In dieser Account Usage-Ansicht werden auch Informationen zum Aktualisierungsverlauf der dynamischen Tabelle angezeigt. Sie ist nützlich für die Fehlersuche bei Problemen, die länger als die Datenaufbewahrungsdauer der Tabellenfunktion DYNAMIC_TABLE_REFRESH_HISTORY (sieben Tage) andauern.

  • DYNAMIC_TABLE_GRAPH_HISTORY: Gibt Informationen zurück, die den Verlauf jeder dynamischen Tabelle, ihre Eigenschaften und ihre Abhängigkeiten von anderen Tabellen und dynamischen Tabellen enthalten.

    Sie können diese Tabellenfunktion verwenden, um einen Snapshot der Abhängigkeitsstruktur von dynamischen Tabellen zu einem bestimmten Zeitpunkt zu erhalten.

    Die Ausgabe spiegelt auch die Änderungen wider, die im Laufe der Zeit an den Eigenschaften einer dynamischen Tabelle vorgenommen wurden. Jede Zeile steht für eine dynamische Tabelle und einen bestimmten Satz von Eigenschaften. Wenn Sie eine Eigenschaft einer dynamischen Tabelle (z. B. die Zielverzögerung) ändern, gibt die Funktion die aktuellste Eigenschaft zurück.

Aktualisierungsstatus für Ihre dynamischen Tabellen überwachen

In diesem Abschnitt wird erklärt, wie Sie den Aktualisierungsstatus aller oder bestimmter dynamischer Tabellen anzeigen können.

Informationen zur Problembehandlung finden Sie unter Problembehandlungbei übersprungenen, langsamen oder fehlgeschlagenen Aktualisierungen dynamischer Tabellen und Diagnose häufiger Probleme bei der Automatisierung dynamischer Tabellen.

Aktualisierungen für alle Ihre dynamischen Tabellen überwachen

Sie können die Snowsight oder die Tabellenfunktion DYNAMIC_TABLES verwenden, um den Aktualisierungsstatus für alle Ihre dynamischen Tabellen anzuzeigen.

Melden Sie sich bei Snowsight an. Wählen Sie im Navigationsmenü die Option Monitoring » Dynamic Tables aus.

Auf dieser Seite können Sie den Status und den letzten Aktualisierungsstatus für alle Ihre dynamischen Tabellen einsehen. Sie können auch nach Datenbank oder Schema filtern, um die Ergebnisse einzugrenzen.

Verlaufsansicht in Snowsight aktualisieren.

Alle Aktualisierungen für eine bestimmte dynamische Tabelle überwachen

Sie können die Snowsight oder die Tabellenfunktion DYNAMIC_TABLES_REFRESH_HISTORY verwenden, um den Aktualisierungsverlauf für eine bestimmte dynamische Tabelle anzuzeigen.

  1. Melden Sie sich bei Snowsight an.

  2. Wählen Sie im Navigationsmenü die Option Monitoring » Dynamic Tables aus.

  3. Wählen Sie Ihre dynamische Tabelle aus und gehen Sie dann zur Registerkarte Refresh History.

    Diese Seite zeigt den Aktualisierungsverlauf Ihrer dynamischen Tabelle an, der Informationen über den Status, die Dauer und die tatsächliche Verzögerungszeit jeder Aktualisierung sowie die Anzahl der bei jeder Aktualisierung geänderten Zeilen enthält.

    Sie zeigt außerdem die Verzögerungsmetrik Ihrer dynamischen Tabelle an, die den Prozentsatz der Zeit innerhalb der Zielverzögerung und die längste tatsächliche Verzögerungszeit während des gegebenen Intervalls umfasst.

Verlaufsansicht in Snowsight aktualisieren.