カテゴリ:

Information Schemaテーブル関数

DATABASE_REPLICATION_USAGE_HISTORY

このテーブル関数は、指定された日付範囲内の指定されたデータベースの複製履歴をクエリするために使用できます。この関数によって返される情報には、データベース名、消費されたクレジット、および複製のために転送されたバイトが含まれます。

注釈

この関数は、過去14日以内におけるデータ複製の使用状況のアクティビティを返します。

構文

DATABASE_REPLICATION_USAGE_HISTORY(
  [ DATE_RANGE_START => <constant_expr> ]
  [ , DATE_RANGE_END => <constant_expr> ]
  [ , DATABASE_NAME => '<string>' ] )
Copy

引数

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

DATE_RANGE_START => constant_expr. DATE_RANGE_END => constant_expr

データベース複製履歴を表示する日付/時間範囲:

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

  • 開始日が指定されていない場合、範囲は DATE_RANGE_END の開始10分前に開始します(デフォルトでは過去10分の履歴が表示)。

たとえば、 DATE_RANGE_END が CURRENT_DATE の場合、デフォルトの DATE_RANGE_START は前日の11:50 PM です。

DATABASE_NAME => 'string'

データベース名。指定した場合、指定したデータベースの履歴のみを表示します。

名前が指定されていない場合、結果には、指定された時間範囲内で複製された各データベースのデータが含まれます。

出力

この関数は、 JSON オブジェクトで次の要素を返します。

列名

データ型

説明

START_TIME

TIMESTAMP_LTZ

指定された時間範囲の開始です。

END_TIME

TIMESTAMP_LTZ

指定された時間範囲の終了です。

DATABASE_NAME

TEXT

データベースの名前。

CREDITS_USED

TEXT

START_TIME から END_TIME の期間にデータベースの複製に対して請求されたクレジットの数です。

BYTES_TRANSFERRED

NUMBER

START_TIME から END_TIME の期間にデータベースの複製に対して転送されたバイト数です。

使用上の注意

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

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

アカウントの30分の範囲の複製履歴を取得します。

select database_name, credits_used, bytes_transferred
  from table(information_schema.database_replication_usage_history(
    date_range_start=>'2023-03-28 12:00:00.000 +0000',
    date_range_end=>'2023-03-28 12:30:00.000 +0000'));
Copy

アカウントの過去12時間の履歴を取得します。

select database_name, credits_used, bytes_transferred
  from table(information_schema.database_replication_usage_history(
    date_range_start=>dateadd(H, -12, current_timestamp)));
Copy

アカウントの過去1週間の履歴を取得します。

select start_time, end_time, database_name, credits_used, bytes_transferred
  from table(information_schema.database_replication_usage_history(
    date_range_start=>dateadd(d, -7, current_date),
    date_range_end=>current_date));
Copy

アカウント内にあるデータベース mydb の過去1週間の複製履歴を取得します。

select start_time, end_time, database_name, credits_used, bytes_transferred
  from table(information_schema.database_replication_usage_history(
    date_range_start=>dateadd(d, -7, current_date),
    date_range_end=>current_date,
    database_name=>'mydb'));
Copy