- Catégories :
REPLICATION_GROUP_REFRESH_PROGRESS, REPLICATION_GROUP_REFRESH_PROGRESS_BY_JOB, REPLICATION_GROUP_REFRESH_PROGRESS_ALL¶
Vous pouvez utiliser la famille de fonctions de table REPLICATION_GROUP_REFRESH_PROGRESS pour interroger le statut des opérations d’actualisation des groupes 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.
REPLICATION_GROUP_REFRESH_PROGRESS_ALL renvoie un objet JSON indiquant le statut d’actualisation de tous les groupes de réplication et de basculement secondaires.
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 et REPLICATION_GROUP_REFRESH_PROGRESS_ALL renvoient l’activité d’actualisation du groupe de réplication ou du groupe de basculement au cours des 14 derniers jours. Par défaut (si aucun argument de plage de dates n’est fourni), REPLICATION_GROUP_REFRESH_PROGRESS_ALL renvoie les données des 12 dernières heures. Utilisez les arguments facultatifs
DATE_RANGE_STARTetDATE_RANGE_ENDpour interroger une plage personnalisée dans la fenêtre de conservation de 14 jours.
Syntaxe¶
Arguments¶
'secondary_group_name'Nom du groupe de réplication ou de basculement secondaire. Notez que le nom entier doit être entre guillemets simples.
'query_id'ID de la requête d’actualisation du groupe de réplication. L’ID de requête peut être obtenu à partir de la page History
dans l’interface Web.
Les arguments suivants sont facultatifs pour REPLICATION_GROUP_REFRESH_PROGRESS_ALL.
DATE_RANGE_START => constant_expr, .DATE_RANGE_END => constant_exprLa plage date/heure pour laquelle renvoyer la progression de l’actualisation de la réplication.
Si ni date de début, ni date de fin n’est spécifiée, la valeur par défaut correspondra aux 12 dernières heures.
Si une date de début est spécifiée, mais qu’aucune date de fin ne l’est, CURRENT_DATE à minuit est utilisé comme fin de plage.
Si une date de fin est spécifiée, mais qu’aucune date de début ne l’est, la plage commence 12 heures avant le début de
DATE_RANGE_END.
Les données sont conservées pendant 14 jours. Si la plage demandée dépasse la fenêtre de conservation de 14 jours, la fonction renvoie une erreur.
Sortie¶
La fonction renvoie les colonnes suivantes. REPLICATION_GROUP_REFRESH_PROGRESS_ALL comporte des colonnes supplémentaires qui sont les deux premières colonnes du jeu de résultats.
Nom de la colonne |
Type de données |
Description |
|---|---|---|
GROUP_NAME |
TEXT |
Indique le groupe de réplication ou de basculement secondaire correspondant à cette ligne dans le jeu de résultats. Ne s’applique qu’à REPLICATION_GROUP_REFRESH_PROGRESS_ALL. |
GROUP_TYPE |
TEXT |
Indique si le groupe correspondant à cette ligne dans le jeu de résultats est un groupe de basculement ou un groupe de réplication. La valeur est |
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¶
Lorsqu’aucun argument
DATE_RANGE_STARTouDATE_RANGE_ENDn’est fourni, REPLICATION_GROUP_REFRESH_PROGRESS_ALL renvoie les données des 12 dernières heures. Pour récupérer des données au-delà des 12 dernières heures, indiquez explicitement la plage de dates. Les données sont disponibles pour un maximum de 14 jours.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_MEMBERSHIPLe 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_INVENTORYLe groupe de réplication secondaire ou de basculement envoie un inventaire de ses objets dans le compte cible au groupe principal.
3
PRIMARY_UPLOADING_METADATALe 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_DATALe 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_METADATALe 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_DATALe groupe de réplication secondaire ou de basculement copie les fichiers envoyés par le groupe principal vers le compte cible.
7
COMPLETED/FAILED/CANCELEDActualiser le statut de l’opération.
Dans les phases
PRIMARY_UPLOADING_DATAetSECONDARY_DOWNLOADING_DATA, la valeurtotalBytesToReplicateest estimée avant l’opération de réplication. Cette valeur peut différer de la valeurtotalBytesToUploadoutotalBytesToDownloaddans 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,totalBytesToUploadserait 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 :
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 :
Pour récupérer la progression de l’actualisation des 12 dernières heures (par défaut) pour tous les groupes de basculement et tous les groupes de réplication, exécutez l’instruction suivante :
Pour récupérer la progression de l’actualisation des 7 derniers jours pour tous les groupes :