- Kategorien:
CORTEX_SEARCH_REFRESH_HISTORY¶
Diese Tabellenfunktion gibt Informationen über jede Aktualisierung (abgeschlossen und in Ausführung) von Cortex Search Services zurück.
Diese Tabellenfunktion gibt alle in Ausführung befindlichen Aktualisierungen sowie alle Aktualisierungen zurück, die einen DATA_TIMESTAMP-Wert innerhalb von 7 Tagen nach dem aktuellen Zeitpunkt haben.
Syntax¶
CORTEX_SEARCH_REFRESH_HISTORY(
[ NAME => '<string>' ]
[ , DATA_TIMESTAMP_START => <constant_expr> ]
[ , DATA_TIMESTAMP_END => <constant_expr> ]
[ , RESULT_LIMIT => <integer> ]
)
Argumente¶
Alle Argumente sind optional. Werden keine Argumente angegeben, werden 100 Aktualisierungen aus allen Cortex Search Services des Kontos zurückgegeben.
NAME => stringDer Name eines Cortex Search Service.
Die Namen müssen in einfachen Anführungszeichen stehen, wobei Groß-/Kleinschreibung nicht berücksichtigt wird.
Sie können den nicht qualifizierten Namen (
service_name), den teilweise qualifizierten Namen (schema_name.service_name) oder den vollqualifizierten Namen (database_name.schema_name.service_name) angeben.Weitere Informationen zur Auflösung von Objektnamen finden Sie unter Auflösung von Objektnamen.
Die Funktion gibt die Aktualisierungen für diesen Dienst zurück.
DATA_TIMESTAMP_START => constant_expr, .DATA_TIMESTAMP_END => constant_exprZeitbereich (im Format TIMESTAMP_LTZ), in der die Aktualisierungen stattgefunden haben.
Wenn weder eine Start- noch eine Endversion angegeben wird, ist der Standardbereich der letzte Tag.
Wenn keine Endzeit angegeben ist, wird CURRENT_TIMESTAMP als Ende des Bereichs verwendet.
Wenn keine Startzeit angegeben ist, beginnt der Bereich 1 Tag vor dem Start von DATA_TIMESTAMP_END.
RESULT_LIMIT => integerEine Zahl, die die maximale Anzahl von Zeilen angibt, die von der Funktion zurückgegeben werden. Wenn die Anzahl der übereinstimmenden Zeilen größer als dieser Grenzwert ist, werden die Aktualisierungen mit der jüngsten Endzeit (oder Aktualisierungen, die noch ausgeführt werden) zurückgegeben – bis zum angegebenen Grenzwert.
Um einen Filter auf die Ergebnisse anzuwenden, geben Sie auch einen ausreichend hohen RESULT_LIMIT-Grenzwert für den Filter an, der auf alle Cortex Search Services angewendet werden soll.
Bereich:
1bis10000Standard:
100.
Ausgabe¶
Die Funktion gibt die folgenden Spalten zurück:
Spaltenname |
Datentyp |
Beschreibung |
|---|---|---|
NAME |
TEXT |
Name des Cortex Search Service. |
SCHEMA_NAME |
TEXT |
Der Name des Schemas, das den Cortex Search Service enthält. |
DATABASE_NAME |
TEXT |
Der Name der Datenbank, die den Cortex Search Service enthält. |
STATE |
TEXT |
Der Status der Aktualisierung für den Cortex Search Service. Folgende Status sind verfügbar:
|
DATA_TIMESTAMP |
TIMESTAMP_LTZ |
Zeitstempel der Transaktion zum Zeitpunkt, als die Aktualisierung ausgewertet wurde. (Dies kann einen Moment vor dem tatsächlichen Zeitpunkt der Aktualisierung liegen.) Alle Daten in Basisobjekten, die vor diesem Zeitstempel eingegangen sind, sind derzeit im Cortex Search Service enthalten. |
REFRESH_START_TIME |
TIMESTAMP_LTZ |
Zeitpunkt, zu dem der Aktualisierungsjob gestartet wurde. |
REFRESH_END_TIME |
TIMESTAMP_LTZ |
Zeitpunkt, zu dem die Aktualisierung abgeschlossen wurde. |
INDEX_PREPROCESSING_DURATION |
NUMBER |
Dauer der Vorverarbeitungsphase des Index in Millisekunden. |
INDEX_PREPROCESSING_QUERY_ID |
TEXT |
ID der Abfrage, die die Indexvorverarbeitung durchgeführt hat. |
INDEX_PREPROCESSING_STATISTICS |
OBJECT |
Enthält die folgenden Eigenschaften für die Indexvorverarbeitung:
|
INDEXING_DURATION |
NUMBER |
Dauer der Indizierungsphase in Millisekunden. |
INDEXING_QUERY_ID |
TEXT |
ID der Abfrage, die die Indizierung durchgeführt hat. |
REFRESH_ACTION |
TEXT |
Eine der folgenden Optionen:
|
REFRESH_TRIGGER |
TEXT |
Eine der folgenden Optionen:
|
TARGET_LAG_SEC |
NUMBER |
Beschreibt den Zielverzögerungswert für den Cortex Search Service zum Zeitpunkt der Aktualisierung. |
WAREHOUSE |
TEXT |
Name des Warehouses, das für die Aktualisierungsvorgang verwendet wurde. |
ERROR |
TEXT |
Fehlermeldung, wenn die Aktualisierung fehlgeschlagen ist, andernfalls NULL. |
Nutzungshinweise¶
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.
Beispiele¶
Suchen Sie fehlgeschlagene Cortex Search Service-Aktualisierungen der letzten Woche:
SELECT
data_timestamp,
database_name,
schema_name,
name,
state,
error,
refresh_trigger
FROM
TABLE (
INFORMATION_SCHEMA.CORTEX_SEARCH_REFRESH_HISTORY (
DATA_TIMESTAMP_START => DATEADD(WEEK, -1, CURRENT_TIMESTAMP())
)
)
ORDER BY
data_timestamp DESC
LIMIT 10;
Suchen Sie die letzten manuellen Aktualisierungen für einen bestimmten Cortex Search Service:
SELECT
data_timestamp,
refresh_start_time,
refresh_end_time,
refresh_action,
state
FROM
TABLE (
INFORMATION_SCHEMA.CORTEX_SEARCH_REFRESH_HISTORY (
NAME => 'MYSVC',
DATA_TIMESTAMP_START => DATEADD(DAY, -7, CURRENT_TIMESTAMP()),
RESULT_LIMIT => 20
)
)
WHERE
refresh_trigger = 'MANUAL'
ORDER BY
data_timestamp DESC;
Analysieren Sie die Leistung der Aktualisierung für einen Cortex Search Service:
SELECT
name,
data_timestamp,
index_preprocessing_duration,
indexing_duration,
TIMEDIFF(SECOND, refresh_start_time, refresh_end_time) AS total_refresh_duration_sec,
index_preprocessing_statistics:numInsertedRows AS rows_processed
FROM
TABLE (
INFORMATION_SCHEMA.CORTEX_SEARCH_REFRESH_HISTORY (
NAME => 'MYSVC',
DATA_TIMESTAMP_START => DATEADD(DAY, -30, CURRENT_TIMESTAMP())
)
)
WHERE
state = 'SUCCEEDED'
ORDER BY
data_timestamp DESC;