Schema:

ACCOUNT_USAGE

Ansicht QUERY_INSIGHTS

In dieser Account Usage-Ansicht wird für jede für eine Abfrage erzeugte Erkenntnis eine Zeile angezeigt.

Spalten

Spaltenname

Typ

Beschreibung

start_time

TIMESTAMP_LTZ

Startzeit der Abfrage.

end_time

TIMESTAMP_LTZ

Endzeit der Abfrage.

total_elapsed_time

NUMBER

Insgesamt verstrichene Zeit für die Abfrage (in Millisekunden)

query_id

VARCHAR

Interner/vom System generierter Bezeichner für die SQL-Anweisung.

query_hash

VARCHAR

Der Hash-Wert wird auf der Grundlage des kanonisierten SQL-Textes berechnet.

query_parameterized_hash

VARCHAR

Der Hash-Wert, der auf Grundlage der parametrisierten Abfrage berechnet wird.

warehouse_id

VARCHAR

Interner/vom System generierter Bezeichner für das Warehouse, das verwendet wurde.

warehouse_name

VARCHAR

Warehouse, in dem die Abfrage ggf. ausgeführt wurde.

insight_instance_id

NUMBER

Interner/systemgenerierter Bezeichner für die Erkenntnis.

insight_type_id

VARCHAR

Bezeichner des Erkenntnis-Typs.

message

VARIANT

Strukturierte Informationen und Details zur Erkenntnis.

suggestions

ARRAY

Array von Zeichenfolgen, die jeweils eine empfohlene Aktion für die Erkenntnis enthalten.

is_opportunity

BOOLEAN

Wenn true, enthält die Erkenntnis Vorschläge zur Verbesserung der Abfrageleistung. Beispiel:

  • Für eine Erkenntnis des Typs ID QUERY_INSIGHT_NO_FILTER_ON_TOP_OF_TABLE_SCAN enthält diese Spalte true, da die Erkenntnis Vorschläge zur Verbesserung der Leistung enthält.

  • Für eine Erkenntnis des Typs ID QUERY_INSIGHT_FILTER_WITH_CLUSTERING_KEY enthält diese Spalte false, da die Erkenntnis keine Vorschläge zur Verbesserung der Leistung enthält.

insight_topic

VARCHAR

Label, das den Typ der von dieser Erkenntnis erkannten Leistungsauswirkung angibt.

Das Label kann einen der folgenden Werte aufweisen:

  • TABLE_SCAN: Einblicke in die Effizienz des Tabellenzugriffs. Dieses Label gilt für die folgenden Typen von Erkenntnissen:

    • QUERY_INSIGHT_NO_FILTER_ON_TOP_OF_TABLE_SCAN

    • QUERY_INSIGHT_INAPPLICABLE_FILTER_ON_TABLE_SCAN

    • QUERY_INSIGHT_UNSELECTIVE_FILTER

    • QUERY_INSIGHT_FILTER_WITH_CLUSTERING_KEY

    • QUERY_INSIGHT_SEARCH_OPTIMIZATION_USED

  • JOIN: Einblicke in die Effizienz von JOIN-Vorgängen in der Abfrage Dieses Label gilt für die folgenden Typen von Erkenntnissen:

    • QUERY_INSIGHT_JOIN_WITH_NO_JOIN_CONDITION

    • QUERY_INSIGHT_NESTED_EXPLODING_JOIN

    • QUERY_INSIGHT_EXPLODING_JOIN

  • WAREHOUSE: Einblicke in das für die Abfrage verwendete Warehouse. Dieses Label gilt für die folgenden Typen von Erkenntnissen:

    • QUERY_INSIGHT_REMOTE_SPILLAGE

Nutzungshinweise

  • Die Latenzzeit der Ansicht kann bis zu 90 Minuten betragen.

Beispiele

Das folgende Beispiel gibt die Abfrageeinblicke für die Abfrage mit der ID 01bd3a9d-0910-8327-0000-09717704c032 zurück:

SELECT query_id, insight_type_id, message, suggestions
  FROM SNOWFLAKE.ACCOUNT_USAGE.QUERY_INSIGHTS
  WHERE query_id = '01bd3a9d-0910-8327-0000-09717704c032';
Copy

Das folgende Beispiel gibt die Abfrageeinblicke für Abfragen zurück, die dasselbe Hash des parameterisierten Abfragetextes haben. Dies sind Abfragen, die dieselbe SELECT-Anweisung verwenden, mit Ausnahme der in der Anweisung angegebenen Literale.

SELECT query_id, insight_type_id, message, suggestions
  FROM SNOWFLAKE.ACCOUNT_USAGE.QUERY_INSIGHTS
  WHERE query_parameterized_hash = '4bb66effc1a3c8b4e94a728f7caaa736';
Copy

Das folgende Beispiel gibt die Abfrageeinblicke für Abfragen zurück, die in der letzten Woche ausgeführt wurden:

SELECT query_id, insight_type_id, message, suggestions
  FROM SNOWFLAKE.ACCOUNT_USAGE.QUERY_INSIGHTS
  WHERE start_time > TO_DATE(DATEADD(DAY, -7, CURRENT_DATE()));
Copy

Das folgende Beispiel gibt die Abfrageeinblicke für Abfragen zurück, die in der letzten Woche ausgeführt wurden und mehr als eine Stunde gedauert haben:

SELECT query_id, insight_type_id, message, suggestions
  FROM SNOWFLAKE.ACCOUNT_USAGE.QUERY_INSIGHTS
  WHERE start_time > TO_DATE(DATEADD(DAY, -7, CURRENT_DATE()))
    AND total_duration > 3600000;
Copy

Das folgende Beispiel gibt die Abfrageeinblicke für Abfragen zurück, die in der letzten Woche ausgeführt wurden, mehr als eine Stunde gedauert haben und das Warehouse mit derID 84412315 verwendet haben:

SELECT query_id, insight_type_id, message, suggestions
  FROM SNOWFLAKE.ACCOUNT_USAGE.QUERY_INSIGHTS
  WHERE start_time > TO_DATE(DATEADD(DAY, -7, CURRENT_DATE()))
    AND total_duration > 3600000
    AND warehouse_id = 84412315;
Copy