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>' ] )
Copy

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 status INCONSISTENT 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 para CONSISTENT, 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();
Copy

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');
Copy

Saída:

[
  {
    "stage" : "STAGE1",
    "status" : "CONSISTENT"
  }
]