- Categorias:
Funções do sistema (Informações do sistema)
SYSTEM$VERIFY_EXTERNAL_VOLUME¶
Verifica a configuração de um volume externo especificado.
Para volumes externos com acesso de gravação, o Snowflake tenta as seguintes operações adicionais para verificar a configuração:
Escreve um arquivo de teste.
Lê o arquivo de teste.
Lista os arquivos no local de armazenamento.
Exclui o arquivo de teste.
- Consulte também:
Armazenamento para tabelas Apache Iceberg™, Configuração de um volume externo, CREATE EXTERNAL VOLUME
Sintaxe¶
SYSTEM$VERIFY_EXTERNAL_VOLUME('<external_volume_name>')
Argumentos¶
external_volume_nameNome do volume externo a ser verificado. Se o identificador contiver espaços ou caracteres especiais, toda a cadeia de caracteres deverá ser delimitada por aspas duplas. Identificadores entre aspas duplas também diferenciam maiúsculas de minúsculas.
Retornos¶
A função retorna um objeto JSON com as propriedades descritas abaixo:
Propriedade |
Descrição |
|---|---|
|
O status do teste de verificação. Retorna |
|
O resultado da seleção de um local de armazenamento ativo para o volume externo. Retorna |
|
O nome do local de armazenamento ativo. |
|
As propriedades da entidade de serviço Snowflake para o provedor de nuvem do local de armazenamento ativo. |
|
O |
|
Para o Azure, a conta de armazenamento do local de armazenamento ativo. |
|
A região do local de armazenamento ativo. |
|
O resultado da gravação de um arquivo de teste no local de armazenamento ativo. Ignorado para volumes externos somente leitura. |
|
O resultado da leitura de um arquivo de teste do local de armazenamento ativo. Ignorado para volumes externos somente leitura. |
|
O resultado da listagem do conteúdo do local de armazenamento ativo. Ignorado para volumes externos somente leitura. |
|
O resultado da exclusão de um arquivo de teste gravado no local de armazenamento ativo. Ignorado para volumes externos somente leitura. |
|
Para o Amazon S3, retorna o resultado da validação do nome de recurso da Amazon (ARN) para a função IAM usada pelo volume externo. |
|
Para o Azure, retorna o resultado da obtenção de uma chave de delegação de usuário. |
Valores de resultado¶
Propriedades de retorno que indicam que um resultado pode ter os seguintes valores:
Valor do resultado |
Descrição |
|---|---|
|
A operação foi bem-sucedida. |
|
A operação não é aplicável ao volume externo especificado. Por exemplo, as operações de leitura, gravação, listagem e exclusão são ignoradas para volumes externos somente leitura. |
|
Uma mensagem de erro detalhada. |
Exemplo de saída¶
{
"success": true,
"storageLocationSelectionResult": "PASSED",
"storageLocationName": "my-azure-westus-1",
"servicePrincipalProperties": "AZURE_MULTI_TENANT_APP_NAME: powerful-azure-ad-auth-test-snowflake-app_...; AZURE_CONSENT_URL: https://login.microsoftonline.com...",
"location": "azure://myStorageAccount.blob.core.windows.net/myStorageLocation/",
"storageAccount": "myStorageAccount",
"region": "westus",
"writeResult": "PASSED",
"readResult": "PASSED",
"listResult": "PASSED",
"deleteResult": "PASSED",
"awsRoleArnValidationResult": "SKIPPED",
"azureGetUserDelegationKeyResult": "PASSED"
}
Requisitos de controle de acesso¶
A função usada para executar essa operação deve ter, no mínimo, os seguintes privilégios:
Privilégio |
Objeto |
Notas |
|---|---|---|
OWNERSHIP |
Volume externo |
Para instruções sobre como criar uma função personalizada com um conjunto específico de privilégios, consulte Criação de funções personalizadas.
Para informações gerais sobre concessões de funções e privilégios para executar ações de SQL em objetos protegíveis, consulte Visão geral do controle de acesso.
Notas de uso¶
Para volumes externos do Amazon S3:
Se você receber o seguinte erro, o administrador da sua conta deverá ativar o AWS STS na região de implantação do Snowflake. Para obter instruções, consulte Gerenciamento do AWS STS em um região da AWS na documentação da AWS.
Error assuming AWS_ROLE: STS is not activated in this region for account:<external volume id>. Your account administrator can activate STS in this region using the IAM Console.
Exemplos¶
Verifique um volume externo nomeado my_s3_external_volume.
SELECT SYSTEM$VERIFY_EXTERNAL_VOLUME('my_s3_external_volume');