- Catégories :
DATABASE_REFRESH_PROGRESS , DATABASE_REFRESH_PROGRESS_BY_JOB¶
La famille de fonctions DATABASE_REFRESH_PROGRESS permet d’interroger le statut d’une actualisation de la base de données selon différentes dimensions :
DATABASE_REFRESH_PROGRESS renvoie un objet JSON indiquant le statut d’actualisation actuel d’une base de données secondaire par son nom.
DATABASE_REFRESH_PROGRESS_BY_JOB renvoie un objet JSON indiquant le statut d’actualisation actuel d’une base de données secondaire par requête d’actualisation.
Chaque fonction est optimisée pour les requêtes au sein de la dimension spécifiée.
Note
DATABASE_REFRESH_PROGRESS renvoie uniquement l’activité d’actualisation de la base de données pour la plus récente actualisation de la base de données si elle a eu lieu au cours des 14 derniers jours.
DATABASE_REFRESH_PROGRESS_BY_JOB renvoie l’activité d’actualisation de la base de données au cours des 14 derniers jours.
- Voir aussi :
Syntaxe¶
DATABASE_REFRESH_PROGRESS( '<secondary_db_name>' )
DATABASE_REFRESH_PROGRESS_BY_JOB( '<query_id>' )
Arguments¶
secondary_db_name
Nom de la base de données secondaire. Cet argument est facultatif si la base de données secondaire est la base de données active de la session en cours.
Notez que le nom entier doit être entre guillemets simples.
query_id
ID de la requête d’actualisation de la base de données. L’ID de requête peut être obtenu à partir de la page History dans l’interface Web.
Notes sur l’utilisation¶
Renvoie uniquement les résultats des administrateurs de compte (utilisateurs dotés du rôle ACCOUNTADMIN).
Lors de l’appel d’une fonction de la table de schémas d’informations, 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 :
SECONDARY_UPLOADING_INVENTORY
PRIMARY_UPLOADING_METADATA
PRIMARY_UPLOADING_DATA
SECONDARY_DOWNLOADING_METADATA
SECONDARY_DOWNLOADING_DATA
COMPLETED / FAILED / CANCELED
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. |
RESULT |
TEXT |
Statut de la phase de réplication. Les statuts valides sont |
START_TIME |
NUMBER |
Heure à laquelle la phase de réplication a commencé. Le format est l’heure de l’époque. |
END_TIME |
NUMBER |
Heure de fin de la phase, le cas échéant. Le format est l’heure de l’époque. |
DETAILS |
VARIANT |
Retourné par la fonction DATABASE_REFRESH_PROGRESS uniquement. Un objet JSON qui fournit des informations détaillées pour les phases suivantes : . - Données de chargement principales : horodatage de l’instantané actuel de la base de données principale. . - Données de chargement principales et Données de téléchargement secondaires : nombre total d’octets dans l’actualisation de la base de données ainsi que le nombre d’octets copiés jusqu’à présent dans la phase. . - Métadonnées de téléchargement secondaire : nombre de tables, de colonnes de table et de tous les objets de base de données (y compris les tables et les colonnes de table) dans le dernier instantané de la base de données principale. |
Exemples¶
Récupérez la progression actuelle de l’actualisation de la base de données pour la base de données mydb1
:
select * from table(information_schema.database_refresh_progress(mydb1));
Récupérez la progression actuelle d’une actualisation de la base de données à l’aide de l’ID de requête :
select * from table(information_schema.database_refresh_progress_by_job('012a3b45-1234-a12b-0000-1aa200012345'));