Kategorien:

Information Schema, Tabellenfunktionen

AUTO_REFRESH_REGISTRATION_HISTORY

Mit dieser Tabellenfunktion kann der Verlauf der Datendateien abgefragt werden, die in den Metadaten der angegebenen Objekte registriert sind. Außerdem können die für diese Operationen in Rechnung gestellten Credits abgefragt werden. Die Tabellenfunktion gibt den Abrechnungsverlauf innerhalb eines bestimmten Datumsbereichs für Ihr gesamtes Snowflake-Konto zurück.

Bemerkung

Diese Funktion gibt die Abrechnungsaktivitäten innerhalb der letzten 14 Tage zurück.

Syntax

AUTO_REFRESH_REGISTRATION_HISTORY(
      [ DATE_RANGE_START => <constant_expr> ]
      [, DATE_RANGE_END => <constant_expr> ]
      [, OBJECT_TYPE => '<string>' [, OBJECT_NAME => '<string>'] ])
Copy

Argumente

Alle Argumente sind optional.

DATE_RANGE_START => constant_expr, . DATE_RANGE_END => constant_expr

Der Zeitbereich (Datum/Uhrzeit) des Abrechnungsfensters:

  • Wenn kein Enddatum angegeben ist, wird CURRENT_DATE als Ende des Bereichs verwendet.

  • Wenn kein Startdatum angegeben ist, beginnt der Bereich 10 Minuten vor dem Start von DATE_RANGE_END (d. h. standardmäßig werden die letzten 10 Minuten des Abrechnungsverlaufs angezeigt). Wenn DATE_RANGE_END beispielsweise den Wert CURRENT_DATE hat, ist der Standardwert für DATE_RANGE_START 23:50 Uhr des vorherigen Tages.

Der Verlauf wird in Schritten von 5 Minuten, 1 Stunde oder 24 Stunden angezeigt (abhängig von der Länge des angegebenen Bereichs).

OBJECT_TYPE => string

Typ des Objekts, für das Credits abgerechnet werden. Der folgende Wert wird unterstützt:

DIRECTORY_TABLE

Verzeichnistabellen, die für die automatische Aktualisierung der Metadaten konfiguriert sind.

EXTERNAL_TABLE

Externe Tabellen, die für die automatische Aktualisierung der Metadaten konfiguriert sind.

OBJECT_NAME => string

Eine Zeichenfolge, die den Namen des Objekts angibt, für das Credits abgerechnet werden.

Nutzungshinweise

  • Gibt Ergebnisse nur für die Rolle ACCOUNTADMIN oder für eine Rolle zurück, der die globale Berechtigung MONITOR USAGE explizit erteilt wurde.

  • Beim Aufrufen einer Tabellenfunktion des Information Schema muss die Sitzung über ein aktives INFORMATION_SCHEMA-Schema verfügen oder der Funktionsname muss vollqualifiziert sein. Weitere Details dazu finden Sie unter Snowflake Information Schema.

Ausgabe

Die Funktion gibt die folgenden Spalten zurück:

Spaltenname

Datentyp

Beschreibung

START_TIME

TIMESTAMP_LTZ

Beginn des angegebenen Abrechnungsfensters.

END_TIME

TIMESTAMP_LTZ

Ende des angegebenen Abrechnungsfensters.

OBJECT_NAME

TEXT

Name des Objekts, für das Credits abgerechnet werden.

OBJECT_TYPE

TEXT

Typ des Objekts, für das Credits abgerechnet werden.

CREDITS_USED

TEXT

Anzahl der Credits, die während des START_TIME- und END_TIME-Zeitfensters für die in den Metadaten des angegebenen Objekts oder Objekttyps registrierten Datendateien abgerechnet wurden.

FILES_REGISTERED

NUMBER

Anzahl der im Zeitfenster zwischen START_TIME und END_TIME geladenen Dateien.

Beispiele

Beachten Sie, dass alle Beispiele unter diesem Thema auf Metadaten externer Tabellen verweisen. Um ähnliche Verlaufsdatensätze für andere Objekttypen abzurufen, ändern Sie den Wert OBJECT_TYPE => string in der Abfrage.

Abrufen des Abrechnungsverlaufs für alle externen Tabellen in Ihrem Konto, die für eine automatische Aktualisierung der Metadaten konfiguriert sind. Die Abfrage ruft den Verlauf für einen 30-Minuten-Bereich in Intervallen von 5 Minuten ab:

select *
  from table(information_schema.auto_refresh_registration_history(
    date_range_start=>to_timestamp_tz('2021-06-17 12:00:00.000 -0700'),
    date_range_end=>to_timestamp_tz('2021-06-17 12:30:00.000 -0700'),
    object_type=>'external_table'));
Copy

Dieses Beispiel ist wie das vorige Beispiel, nur wird diesmal der Abrechnungsverlauf für die letzten 14 Tage in Intervallen von 1 Tag abgerufen:

select *
  from table(information_schema.auto_refresh_registration_history(
    date_range_start=>dateadd('day',-14,current_date()),
    date_range_end=>current_date(),
    object_type=>'external_table'));
Copy

Dieses Beispiel ist wie das erste Beispiel, nur wird diesmal der Abrechnungsverlauf für die letzten 14 Tage in Intervallen von 1 Tag abgerufen:

select *
  from table(information_schema.auto_refresh_registration_history(
    date_range_start=>dateadd('day',-14,current_date()),
    date_range_end=>current_date(),
    object_type=>'external_table'));
Copy

Abrufen des Abrechnungsverlaufs für eine externe Tabelle mit dem Namen myexttable im aktiven Schema der Sitzung für die letzten 12 Stunden in Intervallen von 1 Stunde:

select *
  from table(information_schema.auto_refresh_registration_history(
    date_range_start=>dateadd('hour',-12,current_timestamp()),
    object_type=>'external_table',
    object_name=>'myexttable'));
Copy

Abrufen des Abrechnungsverlaufs für eine externe Tabelle mit dem Namen myexttable im Schema mydb.myschema für die letzten 12 Stunden in Intervallen von 1 Stunde:

select *
  from table(information_schema.auto_refresh_registration_history(
    date_range_start=>dateadd('hour',-12,current_timestamp()),
    object_type=>'external_table',
    object_name=>'mydb.myschema.myexttable'));
Copy