- Kategorien:
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>' ] )
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'));
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)));
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));
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'));