SYSTEM$AUTO_REFRESH_STATUS

Gibt den Status der automatischen Aktualisierung für eine extern verwaltete Iceberg-Tabelle zurück.

Syntax

SYSTEM$AUTO_REFRESH_STATUS('<table_name>')
Copy

Argumente

'table_name'

Der Name der Iceberg-Tabelle, für die Sie den aktuellen Status der automatischen Aktualisierung abrufen möchten.

Der gesamte Name muss in einfache Anführungszeichen gesetzt werden, einschließlich der Datenbank und des Schemas, wenn Sie den vollqualifizierten Namen verwenden. Wenn der Tabellenname zwischen Groß- und Kleinschreibung unterscheidet oder Sonderzeichen oder Leerzeichen enthält, müssen Sie doppelte Anführungszeichen verwenden. Schließen Sie die doppelten Anführungszeichen in einfache Anführungszeichen ein, zum Beispiel '"Table_Name"'.

Rückgabewerte

Die Funktion gibt ein JSON-Objekt zurück, das die folgenden Name/Wert-Paare enthält:

{
  “executionState”:”<value>”,
  ”invalidExecutionStateReason”:”<value>”
  ”pendingSnapshotCount”:<value>,
  ”oldestSnapshotTime”:<value>,
  ”currentSnapshotId”:”<value>”,
  ”lastSnapshotTime”:”<value>”,
  ”lastUpdatedTime”:<value>
}
Copy

Wobei:

“executionState”

Aktueller Stand der Ausführung der Pipe, die Snowflake verwendet, um Aktualisierungen für die Tabelle zu automatisieren.

Werte:

  • RUNNING: Die automatische Aktualisierung läuft wie erwartet. Dieser Status zeigt nicht an, ob Snowflake aktiv Ereignismeldungen für die Pipe verarbeitet.

  • STALLED: Bei der automatischen Aktualisierung ist ein Fehler aufgetreten und es wird versucht, den Fehler zu beheben.

  • STOPPED: Die automatische Aktualisierung ist auf einen nicht behebbaren Fehler gestoßen und wird gestoppt, wenn Sie keine weiteren Aktionen durchführen. Weitere Informationen dazu finden Sie unter Fehlerbehebung.

”invalidExecutionStateReason”

Fehlermeldung in Verbindung mit einem STALLED oder STOPPED Ausführungsstatus.

”pendingSnapshotCount”

Anzahl der Snapshots in der Warteschlange für die automatische Aktualisierung.

”oldestSnapshotTime”

Frühester Zeitstempel unter den Snapshots in der Warteschlange. Snowflake stellt den Zeitstempel für einen Snapshot ein, wenn der Snapshot zur Warteschlange hinzugefügt wird.

”currentSnapshotId”

ID des aktuellen Snapshots, den Snowflake verfolgt. Dies stellt den Snapshot dar, dem die aktuellen Tabellendaten entsprechen.

”lastSnapshotTime”

Erstellungszeitstempel für den aktuellen Snapshot gemäß den Iceberg-Metadaten. Dieser Zeitstempel entspricht dem Zeitpunkt, an dem der aktuelle Snapshot im externen Katalog erstellt wurde.

”lastUpdatedTime”

Zeitstempel, der angibt, wann Snowflake den aktuellen Snapshot erfolgreich verarbeitet hat. Die Differenz zwischen diesem Wert und lastSnapshotTime gibt die Latenzzeit zwischen der Erstellung von Snapshots im externen Katalog und der erfolgreichen Aktualisierung der Metadaten der Tabelle durch Snowflake an.

Um die Latenzzeit zu verringern, passen Sie den Parameter REFRESH_INTERVAL_SECONDS für die mit der Tabelle verbundene Katalogintegration an.

Nutzungshinweise

Zum Aufrufen dieser Funktion ist eine Rolle erforderlich, die über die Berechtigung OWNERSHIP für die Iceberg-Tabelle verfügt.

Beispiele

Rufen Sie den Status der automatischen Aktualisierung für die Tabelle my_iceberg_table im Schema db1.schema1 ab:

SELECT SYSTEM$AUTO_REFRESH_STATUS('db1.schema1.my_iceberg_table');
Copy