Kategorien:

Information Schema, Tabellenfunktionen

PIPE_USAGE_HISTORY

Mit dieser Tabellenfunktion kann der Verlauf von mit Snowpipe in Snowflake-Tabellen geladenen Daten innerhalb eines angegebenen Datumsbereichs abgefragt werden. Die Funktion gibt für Ihr gesamtes Snowflake-Konto den Verlauf der geladenen Daten sowie die abgerechneten Credits zurück.

Bemerkung

Diese Funktion gibt Pipeaktivitäten in den letzten 14 Tagen zurück.

Syntax

PIPE_USAGE_HISTORY(
      [ DATE_RANGE_START => <constant_expr> ]
      [, DATE_RANGE_END => <constant_expr> ]
      [, PIPE_NAME => '<string>' ] )

Argumente

Alle Argumente sind optional.

DATE_RANGE_START => Konstantenausdruck, . DATE_RANGE_END => Konstantenausdruck

Der Datums-/Zeitbereich innerhalb der letzten 2 Wochen, für den der Datenladeverlauf abgerufen werden soll:

  • 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. Das heißt, standardmäßig werden die letzten 10 Minuten des Datenladeverlaufs angezeigt. Wenn DATE_RANGE_END beispielsweise CURRENT_DATE lautet, ist der Standardwert für DATE_RANGE_START 11:50 PM am vorangegangenen Tag.

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

Wenn der Bereich nicht in die letzten 15 Tage fällt, wird ein Fehler zurückgegeben.

PIPE_NAME => Zeichenfolge

Eine Zeichenfolge, mit der eine Pipe angegeben wird. Es werden nur Datenladevorgänge zurückgegeben, die die angegebene Pipe verwenden.

Wenn kein Pipename angegeben ist, zeigt die Spalte PIPE_NAME in den Ergebnissen NULL an. Jede Zeile enthält die Summen aller innerhalb des Zeitbereichs verwendeten Pipes.

Nutzungshinweise

  • Gibt nur Ergebnisse für die Rolle ACCOUNTADMIN oder für eine Rolle zurück, für die 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 Information Schema.

Ausgabe

Die Funktion gibt die folgenden Spalten zurück:

Spaltenname

Datentyp

Beschreibung

START_TIME

TIMESTAMP_LTZ

Beginn des angegebenen Zeitraums, in dem Daten geladen wurden.

END_TIME

TIMESTAMP_LTZ

Ende des angegebenen Zeitraums, in dem Daten geladen wurden.

PIPE_NAME

TEXT

Name der Pipe, die für einen Datenladevorgang verwendet wurde. Zeigt NULL an, wenn in der Abfrage kein Pipename angegeben ist. Jede Zeile enthält die Summen aller innerhalb des Zeitbereichs verwendeten Pipes.

CREDITS_USED

TEXT

Anzahl der Credits, die für das Laden von Snowpipe-Daten im Fenster zwischen START_TIME und END_TIME in Rechnung gestellt wurden.

BYTES_INSERTED

NUMBER

Anzahl der im Fenster zwischen START_TIME und END_TIME geladenen Bytes.

FILES_INSERTED

NUMBER

Anzahl der im Fenster zwischen START_TIME und END_TIME geladenen Dateien.

Beispiele

Abrufen des Datenladeverlaufs für Ihr Konto für einen 30-Minuten-Bereich (in 5-Minuten-Intervallen):

select *
  from table(information_schema.pipe_usage_history(
    date_range_start=>to_timestamp_tz('2017-10-24 12:00:00.000 -0700'),
    date_range_end=>to_timestamp_tz('2017-10-24 12:30:00.000 -0700')));

Abrufen des Datenladeverlaufs für Ihr Konto für die letzten 12 Stunden (in 1-Stunden-Intervallen):

select *
  from table(information_schema.pipe_usage_history(
    date_range_start=>dateadd('hour',-12,current_timestamp()),
    pipe_name=>'mydb.public.mypipe'));

Abrufen des Datenladeverlaufs für Ihr Konto für die letzten 14 Tage (in 1-Tages-Intervallen):

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

Abrufen des Datenladeverlaufs für eine in Ihrem Konto angegebene Pipe für die letzten 14 Tage (in 1-Tages-Intervallen):

select *
  from table(information_schema.pipe_usage_history(
    date_range_start=>dateadd('day',-14,current_date()),
    date_range_end=>current_date(),
    pipe_name=>'mydb.public.mypipe'));