- Categorias:
REPLICATION_GROUP_REFRESH_PROGRESS, REPLICATION_GROUP_REFRESH_PROGRESS_BY_JOB¶
A família de funções REPLICATION_GROUP_REFRESH_PROGRESS pode ser usada para consultar o status de uma atualização de grupo de replicação ou failover:
REPLICATION_GROUP_REFRESH_PROGRESS retorna um objeto JSON indicando o status de atualização de uma replicação secundária ou grupo de failover por nome.
REPLICATION_GROUP_REFRESH_PROGRESS_BY_JOB retorna um objeto JSON indicando o status de atualização de uma replicação secundária ou grupo de failover por ID de consulta.
Nota
REPLICATION_GROUP_REFRESH_PROGRESS só retorna a atividade de atualização do grupo de replicação ou failover para a atualização mais recente se ela tiver ocorrido nos últimos 14 dias.
REPLICATION_GROUP_REFRESH_PROGRESS_BY_JOB retorna a atividade de atualização do grupo de replicação ou failover nos últimos 14 dias.
Sintaxe¶
REPLICATION_GROUP_REFRESH_PROGRESS( '<secondary_group_name>' )
REPLICATION_GROUP_REFRESH_PROGRESS_BY_JOB( '<query_id>' )
Argumentos¶
Saída¶
A função retorna as seguintes colunas:
Nome da coluna |
Tipo de dados |
Descrição |
---|---|---|
PHASE_NAME |
TEXT |
Nome das fases de replicação concluídas (ou em andamento) até o momento. Para a lista de fases, consulte as notas de uso. |
START_TIME |
TIMESTAMP_LTZ |
Hora em que a fase de replicação começou. |
END_TIME |
TIMESTAMP_LTZ |
Hora em que a fase terminou, se aplicável. |
PROGRESS |
TEXT |
Vazio para as fases restantes |
DETAILS |
VARIANT |
|
Notas de uso¶
Só retorna linhas para uma função com qualquer privilégio sobre o grupo de replicação ou failover.
Só retorna linhas para um grupo de replicação ou failover secundário na conta atual.
Ao chamar uma função de tabela do Information Schema, a sessão deve ter um esquema INFORMATION_SCHEMA em uso ou o nome da função deve ser totalmente qualificado. Para obter mais detalhes, consulte Snowflake Information Schema.
A seguir está a lista das fases na ordem processada:
#
Nome da fase
Descrição
1
SECONDARY_SYNCHRONIZING_MEMBERSHIP
O grupo de failover de replicação ou failover secundário recebe informações do grupo primário sobre os objetos inclusos no grupo e atualiza seus metadados de associação.
2
SECONDARY_UPLOADING_INVENTORY
O grupo de failover de replicação ou failover secundário envia um inventário de seus objetos na conta de destino para o grupo primário.
3
PRIMARY_UPLOADING_METADATA
O grupo de failover ou replicação primário cria uma captura de metadados na conta de origem e a envia ao grupo secundário.
4
PRIMARY_UPLOADING_DATA
O grupo primário de replicação ou grupo de failover copia os arquivos que o grupo secundário precisa para reconciliar quaisquer deltas entre os objetos nas contas de origem e de destino.
5
SECONDARY_DOWNLOADING_METADATA
O grupo de failover ou replicação secundário aplica o instantâneo dos metadados que foram enviados pelo primário. As atualizações de metadados não são aplicadas atomicamente, mas sim ao longo do tempo.
6
SECONDARY_DOWNLOADING_DATA
O grupo de failover ou replicação secundário copia os arquivos enviados pelo grupo primário para a conta de destino.
7
COMPLETED
/FAILED
/CANCELED
Atualiza o status da operação.
Nas fases
PRIMARY_UPLOADING_DATA
eSECONDARY_DOWNLOADING_DATA
, o valortotalBytesToReplicate
é estimado antes da operação de replicação. Esse valor pode ser diferente do valortotalBytesToUpload
outotalBytesToDownload
na respectiva fase.Por exemplo, se durante a fase
PRIMARY_UPLOADING_DATA
, uma operação de replicação anterior carregasse alguns bytes mas fosse cancelada antes que a operação fosse concluída, esses bytes não seriam carregados novamente. Nesse caso,totalBytesToUpload
seria inferior atotalBytesToReplicate
.
Exemplos¶
Para recuperar o progresso de atualização atual do grupo de replicação rg1
, execute a seguinte instrução:
SELECT phase_name, start_time, end_time, progress, details
FROM TABLE(INFORMATION_SCHEMA.REPLICATION_GROUP_REFRESH_PROGRESS('rg1'));
Para recuperar o progresso da atualização do grupo de replicação por ID de consulta, substitua o ID de consulta no exemplo e execute a seguinte instrução:
SELECT phase_name, start_time, end_time, progress, details
FROM TABLE(
INFORMATION_SCHEMA.REPLICATION_GROUP_REFRESH_PROGRESS_BY_JOB(
'012a3b45-1234-a12b-0000-1aa200012345'));