- カテゴリ:
REPLICATION_GROUP_REFRESH_HISTORY, REPLICATION_GROUP_REFRESH_HISTORY_ALL¶
テーブル関数の REPLICATION_GROUP_REFRESH_HISTORY ファミリーを使用すると、1つのセカンダリ複製グループまたはフェールオーバーグループ、またはそのようなすべてのグループの複製履歴をクエリできます。
デフォルトでは(日付範囲の引数が指定されていない場合)、これらの関数は過去12時間のデータを返します。オプションの DATE_RANGE_START および DATE_RANGE_END 引数を使用して、14日の保持期間内のカスタム範囲をクエリできます。
- こちらもご参照ください。
構文¶
引数¶
'secondary_group_name'セカンダリグループの名前。名前全体を一重引用符で囲む必要があります。REPLICATION_GROUP_REFRESH_HISTORY には必須です。REPLICATION_GROUP_REFRESH_HISTORY_ALL では使用されません。
次の引数は、どちらの関数でもオプションです。
DATE_RANGE_START => constant_expr、 .DATE_RANGE_END => constant_expr複製の更新履歴を返す日付/時刻の範囲。
開始日も終了日も指定されていない場合、過去12時間がデフォルトです。
開始日は指定されているが、終了日は指定されていない場合は、:doc:`/sql-reference/functions/current_date`の午前0時が範囲の終了として使用されます。
終了日は指定されているが、開始日は指定されていない場合、範囲は:samp:`DATE_RANGE_END`の開始12時間前に開始します。
データは14日間保持されます。リクエストされた範囲が14日の保持期間を超えている場合、関数はエラーを返します。
出力¶
この関数は、次の列を返します。REPLICATION_GROUP_REFRESH_HISTORY_ALL には、結果セットの最初の2列として追加の列が含まれています。
列名 |
データ型 |
説明 |
|---|---|---|
GROUP_NAME |
TEXT |
結果セットのこの行に対応するセカンダリの複製またはフェールオーバーグループを指定します。REPLICATION_GROUP_REFRESH_HISTORY_ALL にのみ適用されます。 |
GROUP_TYPE |
TEXT |
結果セットのこの行に対応するグループがフェールオーバーグループであるか複製グループであるかを指定します。値は |
PHASE_NAME |
TEXT |
複製操作の現在のフェーズ。フェーズのリストについては、 使用上の注意 をご参照ください。 |
START_TIME |
TIMESTAMP_LTZ |
複製操作が開始された時刻。 |
END_TIME |
TIMESTAMP_LTZ |
複製操作が終了した時刻(該当する場合)。進行中の場合は |
JOB_UUID |
TEXT |
更新ジョブのクエリ ID。 |
TOTAL_BYTES |
VARIANT |
更新されたデータベースに関する詳細情報を提供する JSON オブジェクト:
|
OBJECT_COUNT |
VARIANT |
更新されたオブジェクトに関する詳細情報を提供する JSON オブジェクト:
|
PRIMARY_SNAPSHOT_TIMESTAMP |
TIMESTAMP_LTZ |
プライマリスナップショットが作成されたときのタイムスタンプ。 |
ERROR |
VARIANT |
更新操作に成功した場合は NULL。更新操作に失敗した場合は、エラーに関する詳細情報を提供する JSON オブジェクトを返します。
|
使用上の注意¶
DATE_RANGE_STARTまたはDATE_RANGE_END引数が指定されていない場合、関数は過去12時間のデータを返します。過去12時間を超えるデータを取得するには、日付範囲を明示的に指定します。データは最大14日間利用できます。複製またはフェールオーバーグループに対する権限を持つロールの行のみを返します。
現在のアカウント内にあるセカンダリ複製またはフェールオーバーグループの行のみを返します。
Information Schemaテーブル関数を呼び出す場合、セッションには使用中の INFORMATION_SCHEMA スキーマ または 完全修飾の関数名が必要です。詳細については、 Snowflake Information Schema をご参照ください。
次は、処理される順序のフェーズのリストです。
#
フェーズ名
説明
1
SECONDARY_SYNCHRONIZING_MEMBERSHIPセカンダリ複製グループまたはフェイルオーバーグループが、グループに含まれるオブジェクトに関する情報をプライマリグループから受け取り、そのメンバーシップメタデータを更新します。
2
SECONDARY_UPLOADING_INVENTORYセカンダリ複製またはフェイルオーバーグループが、ターゲットアカウント内のオブジェクトのインベントリを、プライマリグループに送信します。
3
PRIMARY_UPLOADING_METADATAプライマリ複製グループまたはフェイルオーバーグループが、ソースアカウントのメタデータのスナップショットを作成し、セカンダリグループに送信します。
4
PRIMARY_UPLOADING_DATAプライマリ複製グループまたはフェイルオーバーグループが、セカンダリグループがソースアカウントとターゲットアカウントのオブジェクト間の差分を調整するために使用するファイルをコピーします。
5
SECONDARY_DOWNLOADING_METADATAセカンダリ複製グループまたはフェイルオーバーグループが、プライマリから送信されたメタデータのスナップショットを適用します。メタデータの更新はアトミックに適用されるのではなく、時間をかけて適用されます。
6
SECONDARY_DOWNLOADING_DATAセカンダリ複製グループまたはフェイルオーバーグループが、プライマリグループから送信されたファイルをターゲットアカウントにコピーします。
7
COMPLETED/FAILED/CANCELED更新処理のステータス。
例¶
セカンダリグループ myfg の更新履歴を取得するには、以下のステートメントを実行します。
すべてのフェールオーバーグループと複製グループの過去12時間(デフォルト)の更新履歴を取得するには、以下のステートメントを実行します。
すべてのグループの過去7日間の更新履歴を取得するには:
セカンダリグループ myfg の特定の日付範囲の更新履歴を取得するには: