カテゴリ:

情報スキーマテーブル関数

PIPE_USAGE_HISTORY

このテーブル関数は、指定された日付範囲内で Snowpipe を使用してSnowflakeテーブルにロードされたデータの履歴をクエリするために使用できます。この関数は、Snowflakeアカウント全体のロードされたデータとクレジットの履歴を返します。

注釈

この関数は、過去14日以内のパイプアクティビティを返します。

構文

PIPE_USAGE_HISTORY(
      [ DATE_RANGE_START => <constant_expr> ]
      [, DATE_RANGE_END => <constant_expr> ]
      [, PIPE_NAME => '<string>' ] )

引数

すべての引数はオプションです。

DATE_RANGE_START => 定数式. DATE_RANGE_END => 定数式

データロード履歴を取得する、過去2週間以内の日付/時間範囲です。

  • 終了日が指定されていない場合、 CURRENT_DATE が範囲の終了として使用されます。

  • 開始日が指定されていない場合、範囲は DATE_RANGE_END の開始の10分前に開始されます。つまり、デフォルトでは過去10分のデータロード履歴が表示されます。例えば、 DATE_RANGE_ENDCURRENT_DATE の場合、デフォルトの DATE_RANGE_START 日の11:50 PMです。

履歴は5分、1時間、または24時間の増分で表示されます(指定された範囲の長さに応じる)。

範囲が過去15日間外の場合、エラーが返されます。

PIPE_NAME => 文字列

パイプを指定する文字列です。指定されたパイプを使用するデータロードのみが返されます。

パイプ名が指定されていない場合、結果の PIPE_NAME 列には NULLが表示されます。各行には、時間範囲内で使用中のすべてのパイプの合計が含まれます。

使用上の注意

  • ACCOUNTADMIN ロールまたは MONITOR USAGE グローバル権限が明示的に付与されているロールの結果のみを返します。

  • 情報スキーマテーブル関数を呼び出す場合、セッションには使用中の INFORMATION_SCHEMA スキーマ または 完全修飾の関数名が必要です。詳細については、 情報スキーマ をご参照ください。

出力

この関数は、次の列を返します。

列名

データ型

説明

START_TIME

TIMESTAMP_LTZ

データのロードが行われた指定時間範囲の開始です。

END_TIME

TIMESTAMP_LTZ

データのロードが行われた指定時間範囲の終了です。

PIPE_NAME

TEXT

データのロードに使用されるパイプの名前です。クエリでパイプ名が指定されていない場合、 NULL を表示します。各行には、時間範囲内で使用中のすべてのパイプの合計が含まれます。

CREDITS_USED

TEXT

START_TIME および END_TIME ウィンドウ中にSnowpipeデータのロードに対して請求されたクレジットの数。

BYTES_INSERTED

NUMBER

START_TIME および END_TIME ウィンドウ中にロードされたバイト数。

FILES_INSERTED

NUMBER

START_TIME および END_TIME ウィンドウ中にロードされたファイルの数。

アカウントの30分範囲のデータロード履歴を5分周期で取得します。

select *
  from table(information_schema.pipe_usage_history(
    date_range_start=>to_timestamp_tz('2017-10-24 12:00:00.000 -0700'),
    date_range_end=>to_timestamp_tz('2017-10-24 12:30:00.000 -0700')));

アカウントの過去12時間のデータロード履歴を1時間周期で取得します。

select *
  from table(information_schema.pipe_usage_history(
    date_range_start=>dateadd('hour',-12,current_timestamp()),
    pipe_name=>'mydb.public.mypipe'));

アカウントの過去14日間のデータロード履歴を1日周期で取得します。

select *
  from table(information_schema.pipe_usage_history(
    date_range_start=>dateadd('day',-14,current_date()),
    date_range_end=>current_date()));

アカウントの指定されたパイプの過去14日間のデータロード履歴を1日周期で取得します。

select *
  from table(information_schema.pipe_usage_history(
    date_range_start=>dateadd('day',-14,current_date()),
    date_range_end=>current_date(),
    pipe_name=>'mydb.public.mypipe'));