- Catégories :
REPLICATION_GROUP_REFRESH_PROGRESS, REPLICATION_GROUP_REFRESH_PROGRESS_BY_JOB¶
La famille de fonctions REPLICATION_GROUP_REFRESH_PROGRESS peut être utilisée pour interroger le statut d’actualisation d’un groupe de réplication ou de basculement :
REPLICATION_GROUP_REFRESH_PROGRESS renvoie un objet JSON indiquant le statut d’actualisation d’un groupe de réplication ou de basculement secondaire par nom.
REPLICATION_GROUP_REFRESH_PROGRESS_BY_JOB renvoie un objet JSON indiquant le statut d’actualisation d’un groupe de réplication ou de basculement secondaire par ID de requête.
Note
REPLICATION_GROUP_REFRESH_PROGRESS renvoie uniquement l’activité d’actualisation du groupe de réplication ou du groupe de basculement pour la plus récente actualisation si elle a eu lieu au cours des 14 derniers jours.
REPLICATION_GROUP_REFRESH_PROGRESS_BY_JOB renvoie l’activité d’actualisation du groupe de réplication ou du groupe de basculement au cours des 14 derniers jours.
Syntaxe¶
REPLICATION_GROUP_REFRESH_PROGRESS( '<secondary_group_name>' )
REPLICATION_GROUP_REFRESH_PROGRESS_BY_JOB( '<query_id>' )
Arguments¶
Sortie¶
La fonction renvoie les colonnes suivantes :
Nom de la colonne |
Type de données |
Description |
---|---|---|
PHASE_NAME |
TEXT |
Nom des phases de réplication terminées (ou en cours) jusqu’à présent. Pour la liste des phases, voir les notes d’utilisation. |
START_TIME |
TIMESTAMP_LTZ |
Heure à laquelle la phase de réplication a commencé. |
END_TIME |
TIMESTAMP_LTZ |
Heure à laquelle la phase s’est terminée, le cas échéant. |
PROGRESS |
TEXT |
Vide pour les phases restantes |
DETAILS |
VARIANT |
|
Notes sur l’utilisation¶
Ne renvoie que les lignes pour un rôle ayant un quelconque privilège sur le groupe de réplication ou de basculement.
Renvoie uniquement les lignes pour un groupe de réplication ou de basculement secondaire dans le compte actuel.
Lors de l’appel d’une fonction de table Information Schema, la session doit avoir un schéma INFORMATION_SCHEMA en cours d’utilisation ou le nom de la fonction doit être complètement qualifié. Pour plus de détails, voir Schéma d’information de Snowflake.
Voici la liste des phases de traitement dans l’ordre :
#
Nom de la phase
Description
1
SECONDARY_SYNCHRONIZING_MEMBERSHIP
Le groupe de réplication secondaire ou de basculement reçoit des informations du groupe principal sur les objets inclus dans le groupe et met à jour ses métadonnées d’appartenance.
2
SECONDARY_UPLOADING_INVENTORY
Le groupe de réplication secondaire ou de basculement envoie un inventaire de ses objets dans le compte cible au groupe principal.
3
PRIMARY_UPLOADING_METADATA
Le groupe de réplication ou de basculement principal crée un instantané des métadonnées dans le compte source et l’envoie au groupe secondaire.
4
PRIMARY_UPLOADING_DATA
Le groupe de réplication principal ou de basculement copie les fichiers dont le groupe secondaire a besoin pour réconcilier les deltas entre les objets des comptes source et cible.
5
SECONDARY_DOWNLOADING_METADATA
Le groupe de réplication ou de basculement secondaire applique l’instantané des métadonnées envoyées par le groupe principal. Les mises à jour des métadonnées ne sont pas appliquées de manière atomique mais au fil du temps.
6
SECONDARY_DOWNLOADING_DATA
Le groupe de réplication secondaire ou de basculement copie les fichiers envoyés par le groupe principal vers le compte cible.
7
COMPLETED
/FAILED
/CANCELED
Actualiser le statut de l’opération.
Dans les phases
PRIMARY_UPLOADING_DATA
etSECONDARY_DOWNLOADING_DATA
, la valeurtotalBytesToReplicate
est estimée avant l’opération de réplication. Cette valeur peut différer de la valeurtotalBytesToUpload
outotalBytesToDownload
dans la phase respective.Par exemple, si au cours de la phase
PRIMARY_UPLOADING_DATA
, une opération de réplication précédente a téléchargé certains octets mais a été annulée avant la fin de l’opération, ces octets ne seront pas téléchargés à nouveau. Dans ce cas,totalBytesToUpload
serait inférieur àtotalBytesToReplicate
.
Exemples¶
Pour récupérer la progression actuelle de l’actualisation du groupe de réplication rg1
, exécutez l’instruction suivante :
SELECT phase_name, start_time, end_time, progress, details
FROM TABLE(INFORMATION_SCHEMA.REPLICATION_GROUP_REFRESH_PROGRESS('rg1'));
Pour récupérer la progression de l’actualisation du groupe de réplication par ID de requête, remplacez l’ID de requête dans l’exemple et exécutez l’instruction suivante :
SELECT phase_name, start_time, end_time, progress, details
FROM TABLE(
INFORMATION_SCHEMA.REPLICATION_GROUP_REFRESH_PROGRESS_BY_JOB(
'012a3b45-1234-a12b-0000-1aa200012345'));