Kategorien:

Information Schema, Tabellenfunktionen

AUTOMATIC_CLUSTERING_HISTORY

Diese Tabellenfunktion dient zum Abfragen des Automatic Clustering-Verlaufs für bestimmte Tabellen innerhalb eines bestimmten Datumsbereichs. Die von der Funktion zurückgegebenen Informationen umfassen die Credits, Bytes und Zeilen, die beim jeweiligen Reclustering einer Tabelle verbraucht bzw. aktualisiert wurden.

Syntax

AUTOMATIC_CLUSTERING_HISTORY(
      [ DATE_RANGE_START => <constant_expr> ]
      [ , DATE_RANGE_END => <constant_expr> ]
      [ , TABLE_NAME => '<string>' ] )
Copy

Argumente

Alle Argumente sind optional.

DATE_RANGE_START => constant_expr, . DATE_RANGE_END => constant_expr

Der Datums-/Zeitbereich zum Anzeigen des Automatic Clustering-Verlaufs. Wenn Sie beispielsweise angeben, dass das Startdatum 03.04.2019 und das Enddatum 05.04.2019 ist, dann erhalten Sie Daten für 3. April, 4. April und 5. April. (Die Endpunkte sind enthalten.)

  • Wenn weder Start- noch Enddatum angegeben sind, werden standardmäßig die letzten 12 Stunden verwendet.

  • Wenn kein Enddatum, aber ein Startdatum angegeben ist, wird CURRENT_DATE um Mitternacht als Ende des Bereichs verwendet.

  • Wenn kein Startdatum, aber ein Enddatum angegeben ist, beginnt der Bereich 12 Stunden vor dem Start von DATE_RANGE_END.

TABLE_NAME => string

Tabellenname. Wenn angegeben, wird der Verlauf nur für die angegebene Tabelle angezeigt. Der Tabellenname kann den Schemanamen und den Datenbanknamen enthalten.

Wenn kein Tabellenname angegeben ist, enthalten die Ergebnisse die Historie jeder Tabelle, die vom Automatic Clustering-Dienst innerhalb des angegebenen Zeitbereichs gewartet wird.

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.

    Bemerkung

    Eine Rolle mit der Berechtigung MONITOR USAGE kann die Credit-Nutzung pro Objekt anzeigen, jedoch keine Objektnamen. Der Rolle muss auch SELECT für ein Objekt erteilt werden, damit der Name von dieser Funktion zurückgegeben wird. Wenn die Rolle nicht über ausreichende Berechtigungen zum Anzeigen des Objektnamens verfügt, wird der Objektname möglicherweise mit einem Ersatznamen wie „unknown_#“ angezeigt, wobei „#“ eine oder mehrere Ziffern darstellt.

  • 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.

  • Der Verlauf wird in Schritten von 1 Stunde angezeigt.

Ausgabe

Die Funktion gibt die folgenden Spalten zurück:

Spaltenname

Datentyp

Beschreibung

START_TIME

TIMESTAMP_LTZ

Beginn des angegebenen Zeitbereichs.

END_TIME

TIMESTAMP_LTZ

Ende des angegebenen Zeitbereichs.

TABLE_NAME

TEXT

Name der Tabelle. Zeigt NULL an, wenn in der Funktion kein Tabellenname angegeben ist. In diesem Fall enthält jede Zeile die Summen aller innerhalb des Zeitbereichs verwendeten Tabellen.

CREDITS_USED

NUMBER

Anzahl der Credits, die für das automatische Clustering im Fenster zwischen START_TIME und END_TIME in Rechnung gestellt wurden.

NUM_BYTES_RECLUSTERED

NUMBER

Anzahl der Bytes, für die im START_TIME/END_TIME-Zeitfenster ein Reclustering ausgeführt wurde.

NUM_ROWS_RECLUSTERED

NUMBER

Anzahl der Zeilen, die im Fenster zwischen START_TIME und END_TIME neu geclustert wurden.

Beispiele

Rufen Sie den Automatic Clustering-Verlauf für einen Zeitraum von einer Stunde für Ihr Konto ab:

select *
  from table(information_schema.automatic_clustering_history(
    date_range_start=>'2018-04-10 13:00:00.000 -0700',
    date_range_end=>'2018-04-10 14:00:00.000 -0700'));
Copy

Rufen Sie den Automatic Clustering-Verlauf für Ihr Konto für die letzten 12 Stunden ab (in 1-Stunden-Intervallen):

select *
  from table(information_schema.automatic_clustering_history(
    date_range_start=>dateadd(H, -12, current_timestamp)));
Copy

Rufen Sie den Automatic Clustering-Verlauf der letzten Woche für Ihr Konto ab:

select *
  from table(information_schema.automatic_clustering_history(
    date_range_start=>dateadd(D, -7, current_date),
    date_range_end=>current_date));
Copy

Rufen Sie den Automatic Clustering-Verlauf für eine angegebene Tabelle in Ihrem Konto für die vergangene Woche ab:

select *
  from table(information_schema.automatic_clustering_history(
    date_range_start=>dateadd(D, -7, current_date),
    date_range_end=>current_date,
    table_name=>'mydb.myschema.mytable'));
Copy