スキーマ:

ACCOUNT_USAGE

CORTEX_SEARCH_REFRESH_HISTORY ビュー

このアカウント使用状況ビューには、Cortex Search Serviceの更新履歴に関する情報が表示されます。

列名

データ型

説明

NAME

VARCHAR

Cortex Search Serviceの名前。

SCHEMA_NAME

VARCHAR

Cortex Search Serviceを含むスキーマの名前。

DATABASE_NAME

VARCHAR

Cortex Search Serviceを含むデータベースの名前。

STATE

VARCHAR

Cortex Search Serviceのリフレッシュのステータス。これは次のいずれかになります。 . - EXECUTING: リフレッシュ中。 . - SUCCEEDED: リフレッシュが正常に完了。 . - FAILED: リフレッシュ実行中に失敗。 . - CANCELLED: リフレッシュが実行前にキャンセルされた。

DATA_TIMESTAMP

TIMESTAMP_LTZ

リフレッシュが評価されたトランザクションのタイムスタンプ。(実際のリフレッシュの時間より少し前になる可能性があります。)このタイムスタンプより前に到着した、ベースオブジェクト内のすべてのデータが、現在Cortex Search Serviceに含まれています。

REFRESH_START_TIME

TIMESTAMP_LTZ

リフレッシュジョブの開始時刻。

REFRESH_END_TIME

TIMESTAMP_LTZ

リフレッシュの完了時刻。

INDEX_PREPROCESSING_DURATION

NUMBER

インデックス前処理フェーズの期間(ミリ秒単位)。

INDEX_PREPROCESSING_QUERY_ID

VARCHAR

インデックス前処理を実行したクエリの ID。

INDEX_PREPROCESSING_STATISTICS

OBJECT

インデックス前処理のための次のプロパティが含まれています。 . - compilationTimeMs:クエリのコンパイルにかかった時間(ミリ秒単位)。 . - executionTimeMs:クエリの実行にかかった時間(ミリ秒単位)。 . - queuedTimeMs:実行前にキューに入れられた時間(ミリ秒単位)。 . - numInsertedRows:挿入された行の数。 . - numDeletedRows:削除された行の数。 . - numCopiedRows:変更されずにコピーされた行の数。 . - numAddedPartitions:追加されたパーティションの数。 . - numRemovedPartitions:削除されたパーティションの数。

INDEXING_DURATION

NUMBER

インデックス作成フェーズの期間(ミリ秒単位)。

INDEXING_QUERY_ID

VARCHAR

インデックス作成を実行したクエリの ID。

REFRESH_ACTION

VARCHAR

次のいずれかです。 . - NO_DATA - ベーステーブルに新しいデータはない。 . - FULL - Cortex Search Serviceのフルリフレッシュ。 . - INCREMENTAL - Cortex Search Serviceの増分リフレッシュ。

REFRESH_TRIGGER

VARCHAR

次のいずれかです。 . - SCHEDULED - サービスを最新の状態保つための通常のバックグラウンドリフレッシュ。 . - MANUAL - ユーザーが ALTER CORTEX SEARCH SERVICE を使用して手動でトリガーしたリフレッシュ。 . - CREATION - DDL ステートメント作成中に実行されたリフレッシュ。

TARGET_LAG_SEC

NUMBER

リフレッシュが発生した時点のCortex Search Serviceのターゲットラグ値を説明します。

WAREHOUSE

VARCHAR

リフレッシュ操作に使用されるウェアハウスの名前。

ERROR

VARCHAR

リフレッシュに失敗した場合はエラーメッセージ、それ以外の場合は NULL。

使用上の注意

  • ビューの待機時間は最大3時間です。

  • このビューをクエリするには、 SNOWFLAKE.USAGE_VIEWER データベースロール を付与するロールを使用します。

  • 次の引数を使用して、結果をフィルタリングできます。

    • NAME:Cortex Search Service名でフィルタリングします。

    • DATA_TIMESTAMP_START:指定されたタイムスタンプ以降に発生したリフレッシュに結果をフィルタリングします。

    • DATA_TIMESTAMP_END:指定されたタイムスタンプ以前に発生したリフレッシュに結果をフィルタリングします。

    • RESULT_LIMIT:返される結果の数を制限します。

過去1週間に失敗したCortex Search Serviceのリフレッシュを検索します。

SELECT
    data_timestamp,
    database_name,
    schema_name,
    name,
    state,
    error,
    refresh_trigger
  FROM snowflake.account_usage.cortex_search_refresh_history
  WHERE state = 'FAILED' AND data_timestamp >= dateadd(WEEK, -1, current_date())
  ORDER BY data_timestamp DESC
  LIMIT 10;
Copy

特定のCortex Search Serviceの最近の手動リフレッシュを検索します。

SELECT
    data_timestamp,
    refresh_start_time,
    refresh_end_time,
    refresh_action,
    state
  FROM snowflake.account_usage.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;
Copy

Cortex Search Serviceのリフレッシュパフォーマンスを分析します。

SELECT
    name,
    data_timestamp,
    index_preprocessing_duration,
    indexing_duration,
    (refresh_end_time::TIMESTAMP_NTZ - refresh_start_time::TIMESTAMP_NTZ) AS total_refresh_duration_sec,
    index_preprocessing_statistics:numInsertedRows AS rows_processed
  FROM snowflake.account_usage.cortex_search_refresh_history
  WHERE name = 'MYSVC'
    AND state = 'SUCCEEDED'
    AND data_timestamp >= dateadd(DAY, -30, current_date())
  ORDER BY data_timestamp DESC;
Copy