Allgemeine Informationen zum Überwachen dynamischer Tabellen¶
Sowohl Snowsight als auch SQL können verwendet werden, um Informationen zu dynamischen Tabellen anzuzeigen. In den folgenden Abschnitten werden verschiedene Methoden zum Überwachen und Anzeigen von Informationen zu dynamischen Tabellen beschrieben.
Aufgabe |
Beschreibung |
---|---|
Überwachen der Aktualisierungen dynamischer Tabellen |
|
Verwenden von Snowsight zum Untersuchen des Task-Graphen von dynamischen Tabellen |
Untersuchen der Task-Graphen von dynamischen Tabellen |
Verwenden von Information Schema-Funktionen zum Überwachen dynamischer Tabellen |
Untersuchen von dynamischen Tabellen mit SQL |
Verwenden von Snowsight zum Überwachen von Aktualisierungen¶
Um festzustellen, ob Aktualisierungen fehlerhaft sind, wählen Sie auf der Detailseite der dynamischen Tabelle die Registerkarte Refresh History aus.
Folgende Informationen werden oben auf der Registerkarte angezeigt:
Datum und Uhrzeit der letzten Aktualisierung der dynamischen Tabelle
Zielverzögerungszeit für die dynamische Tabelle
Längste tatsächliche Verzögerungszeit für die dynamische Tabelle im angegebenen Intervall
Auf der Registerkarte wird auch eine Tabelle mit dem Verlauf der Aktualisierungen angezeigt. Für jede Aktualisierung in der Historie zeigt die Tabelle die folgenden Informationen an:
Zeitstempel der Transaktion zum Zeitpunkt, als die Aktualisierung ausgewertet wurde.
(Dies kann einen Moment vor dem tatsächlichen Zeitpunkt der Aktualisierung liegen.)
Zeitaufwand, der für die Aktualisierung benötigt wurde
Zielverzögerung und maximale Verzögerung, die kurz vor dem Ausführen der Aktualisierung erreicht werden
Status der Aktualisierung
Verwenden von Snowsight zum Untersuchen des Task-Graphen von dynamischen Tabellen¶
In Snowsight können Sie den DAG (Directed Acyclic Graph) anzeigen. Mithilfe des Task-Graphen können Sie feststellen, von welchen Tabellen eine bestimmte dynamische Tabelle abhängt. Sie können beispielsweise Folgendes tun:
Bestimmen, woher eine dynamische Tabelle Daten abruft.
Identifizieren der vorgelagerten (Upstream-)Abhängigkeiten einer dynamischen Tabelle.
Identifizieren der nachgelagerten (Downstream-)Abhängigkeiten, die von Änderungen an einer dynamischen Tabelle betroffen sein könnten.
So untersuchen Sie den Task-Graphen, der eine dynamische Tabelle enthält:
Wählen Sie auf der Detailseite der dynamischen Tabelle die Registerkarte Graph aus.
Auf dieser Registerkarte wird der Task-Graph mit dem Knoten für die ausgewählte dynamische Tabelle angezeigt. Im Details-Bereich auf der rechten Seite werden Informationen zu der ausgewählten Tabelle oder der dynamischen Tabelle angezeigt.
Um die Details eines anderen Elements im Task-Graphen anzuzeigen, wählen Sie dieses Element aus.
Um die vollständigen Details zu einer Tabelle im Task-Graphen anzuzeigen, bewegen Sie den Mauszeiger über den Knoten der Tabelle, und wählen Sie dann in der rechten oberen Ecke des Knotens Go to Dynamic Table Page oder Go to Table Page aus.
Um den angezeigten Task-Graphen und die Informationen mit den neuesten Änderungen zu aktualisieren, wählen Sie in der Leiste oberhalb der Grafik die Aktualisierungsschaltfläche aus.
Die folgende Abbildung zeigt die Registerkarte Graph und den Bereich Details.
Im Details-Bereich wird Folgendes angezeigt:
Folgende Informationen werden zu einer normalen Basistabelle angezeigt:
Die Rolle, die Eigentümer der Tabelle ist, und das Datum, an dem die Tabelle erstellt wurde
Die Anzahl der Zeilen in der Tabelle
Die Größe der Tabelle
Folgende Informationen werden zu einer dynamischen Tabelle angezeigt:
Die Rolle, die Eigentümer der dynamischen Tabelle ist, und das Datum, an dem die dynamische Tabelle erstellt wurde
Der Aktualisierungsmodus
Das Warehouse für die dynamische Tabelle
Die Zielverzögerung
Die durchschnittliche tatsächliche Verzögerung
Die maximale tatsächliche Verzögerung
Verwenden von Information Schema-Funktionen zum Überwachen dynamischer Tabellen¶
Um festzustellen, ob bei den Aktualisierungen Probleme auftreten, verwenden Sie die folgenden INFORMATION_SCHEMA-Tabellenfunktionen:
DYNAMIC_TABLE_REFRESH_HISTORY liefert den Aktualisierungsverlauf für eine oder mehrere dynamische Tabellen im Konto.
DYNAMIC_TABLE_GRAPH_HISTORY liefert den Aktualisierungsverlauf jeder dynamischen Tabelle, deren Eigenschaften und deren Abhängigkeiten von anderen Tabellen und dynamischen Tabellen.
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, generiert die Funktion eine neue Ausgabezeile für diesen aktualisierten Satz von Eigenschaften.
Um fehlerhaften Aktualisierungen zu identifizieren, rufen Sie die Funktion DYNAMIC_TABLE_REFRESH_HISTORY auf und übergeben das Argument ERROR_ONLY => TRUE.
Wenn Sie beispielsweise die dynamischen Tabellen der Datenbank
mydb
und des Schemasmyschema
auf Aktualisierungsfehler überprüfen möchten, dann führen Sie die folgende Anweisung aus:SELECT name, state, state_code, state_message, query_id, data_timestamp, refresh_start_time, refresh_end_time FROM TABLE(INFORMATION_SCHEMA.DYNAMIC_TABLE_REFRESH_HISTORY(NAME_PREFIX => 'MYDB.MYSCHEMA.', ERROR_ONLY => TRUE)) ORDER BY name, refresh_version;