- Categorias:
Funções do sistema (Informações do sistema)
SYSTEM$GET_DIRECTORY_TABLE_STATUS¶
Retorna uma lista de registros que contém o status de consistência da tabela de diretórios para estágios em sua conta. O status de consistência indica se uma tabela de diretório em um estágio replicado possui informações sobre (é consistente com) todos os arquivos replicados no estágio.
- Consulte também:
Replicação de histórico de carregamento, canal e estágio , Tabelas de diretório
Sintaxe¶
$SYSTEM_GET_DIRECTORY_TABLE_STATUS( [ '<stage_name>' ] )
Argumentos¶
Opcional:
'stage_name'
Estágio para o qual você deseja recuperar o status de consistência da tabela de diretórios. Quando você especifica um nome de estágio, a função retorna uma lista com um único registro para a tabela de diretórios nesse estágio.
Retornos¶
Retorna uma lista de registros de consistência da tabela de diretórios para cada estágio da sua conta. A lista contém, no máximo, 10.000 registros. Se você especificar um argumento 'stage_name'
, a função retornará uma lista com um único registro para a tabela de diretórios nesse estágio.
Os registros estão no formato JSON e contêm os seguintes pares nome/valor:
{
"stage" : "STAGE1",
"status" : "INCONSISTENT"
}
Onde:
stage
O estágio no qual a tabela de diretórios está habilitada.
status
Status de consistência da tabela de diretórios.
CONSISTENT
se a tabela de diretórios for totalmente consistente com o conteúdo replicado no estágio; caso contrário,INCONSISTENT
. Um statusINCONSISTENT
significa que o Snowflake não pode verificar a consistência e que a tabela de diretórios pode não ter as informações sobre alguns arquivos existentes no estágio.
Notas de uso¶
Para chamar essa função, você deve usar uma função que receba ou herde o privilégio READ no(s) estágio(s) para os quais deseja recuperar o status de consistência.
Para atualizar o status de consistência de
INCONSISTENT
paraCONSISTENT
, execute uma atualização completa usando o comando ALTER STAGE … REFRESH.
Exemplos¶
O exemplo a seguir recupera uma lista de registros de status de consistência para os estágios da conta:
SELECT SYSTEM$GET_DIRECTORY_TABLE_STATUS();Saída:
[ { "stage" : "STAGE1", "status" : "CONSISTENT" }, { "stage" : "STAGE2", "status" : "INCONSISTENT" } ]
O exemplo a seguir recupera um registro de status de consistência para um estágio denominado stage1
:
SELECT SYSTEM$GET_DIRECTORY_TABLE_STATUS('stage1');Saída:
[ { "stage" : "STAGE1", "status" : "CONSISTENT" } ]