- Catégories :
Fonctions systĂšme (Informations systĂšme)
SYSTEM$DATABASE_REFRESH_PROGRESS , SYSTEM$DATABASE_REFRESH_PROGRESS_BY_JOB â ObsolĂšte¶
La famille de fonctions SYSTEM$DATABASE_REFRESH_PROGRESS permet dâinterroger le statut dâune actualisation de la base de donnĂ©es selon diverses dimensions :
SYSTEM$DATABASE_REFRESH_PROGRESS renvoie un objet JSON indiquant le statut dâactualisation actuel dâune base de donnĂ©es secondaire par son nom.
SYSTEM$DATABASE_REFRESH_PROGRESS_BY_JOB renvoie un objet JSON indiquant le statut dâactualisation actuel dâune base de donnĂ©es secondaire globale par requĂȘte dâactualisation.
Note
Ces fonctions renvoient lâactivitĂ© dâactualisation de la base de donnĂ©es au cours des 14 derniers jours.
Syntaxe¶
SYSTEM$DATABASE_REFRESH_PROGRESS( '<secondary_db_name>' )
SYSTEM$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.
Sortie¶
La fonction renvoie les éléments suivants dans un objet JSON :
Nom de la colonne |
Type de données |
Description |
---|---|---|
phaseName |
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. |
resultName |
TEXT |
Statut de la phase de réplication. |
startTimeUTC |
NUMBER |
Heure Ă laquelle la phase de rĂ©plication a commencĂ©. Le format est lâheure de lâĂ©poque. |
endTimeUTC |
NUMBER |
Heure de fin de la phase, le cas Ă©chĂ©ant. Le format est lâheure de lâĂ©poque. |
details |
VARIANT |
Un objet distinct JSON indiquant le nombre total dâoctets dans lâactualisation des donnĂ©es, ainsi que le nombre dâoctets copiĂ©s jusquâĂ prĂ©sent dans la phase. Si lâinstruction dâactualisation a prĂ©cĂ©demment Ă©chouĂ© ou a Ă©tĂ© annulĂ©e et a Ă©tĂ© lancĂ©e Ă nouveau, lâobjet indique le nombre dâoctets ignorĂ©s lors de la deuxiĂšme tentative. Lâobjet |
Notes sur lâutilisation¶
Renvoie uniquement les résultats des administrateurs de compte (utilisateurs dotés du rÎle ACCOUNTADMIN).
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
Exemples¶
Lâexemple suivant rĂ©cupĂšre le statut dâactualisation actuel de la base de donnĂ©es secondaire spĂ©cifiĂ©e. Les rĂ©sultats sont renvoyĂ©s dans un objet JSON :
SELECT SYSTEM$DATABASE_REFRESH_PROGRESS('mydb');
Lâexemple suivant rĂ©cupĂšre les mĂȘmes dĂ©tails que dans lâexemple prĂ©cĂ©dent, mais les rĂ©sultats sont sĂ©parĂ©s en colonnes relationnelles et les horodatages sont convertis en tant que TIMESTAMP_LTZ :
SELECT value:phaseName::string AS "Phase", value:resultName::string AS "Result", TO_TIMESTAMP_LTZ(value:startTimeUTC::numeric,3) AS "startTime", TO_TIMESTAMP_LTZ(value:endTimeUTC::numeric,3) AS "endTime", value:details AS "details" FROM table(flatten(INPUT=> PARSE_JSON(SYSTEM$DATABASE_REFRESH_PROGRESS('mydb1'))));
Lâexemple suivant rĂ©cupĂšre le statut de la requĂȘte dâactualisation de la base de donnĂ©es spĂ©cifiĂ©e. Les rĂ©sultats sont renvoyĂ©s dans un objet JSON :
SELECT SYSTEM$DATABASE_REFRESH_PROGRESS_BY_JOB('4cbd7187-51f6-446c-9814-92d7f57d939b');
Lâexemple suivant rĂ©cupĂšre les mĂȘmes dĂ©tails que dans lâexemple prĂ©cĂ©dent, mais les rĂ©sultats sont sĂ©parĂ©s en colonnes relationnelles et les horodatages sont convertis en tant que TIMESTAMP_LTZ :
SELECT value:phaseName::string AS "Phase", value:resultName::string AS "Result", TO_TIMESTAMP_LTZ(value:startTimeUTC::numeric,3) AS "startTime", TO_TIMESTAMP_LTZ(value:endTimeUTC::numeric,3) AS "endTime", value:details AS "details" FROM TABLE(FLATTEN(input=> PARSE_JSON(SYSTEM$DATABASE_REFRESH_PROGRESS_BY_JOB('4cbd7187-51f6-446c-9814-92d7f57d939b'))));