Notas de versão 9.20: 21 de julho de 2025 – 25 de julho de 2025

Atenção

A versão foi concluída. Para conhecer as diferenças entre as versões antecipada e final destas notas de versão, consulte Log de mudanças das notas de versão.

Atualizações de SQL

O comando CREATE INDEX suporta colunas INCLUDE

Nesta versão, você pode usar o comando CREATE INDEX para criar índices secundários com colunas INCLUDE. Em versões anteriores, as colunas INCLUDE eram suportadas apenas para índices secundários definidos dentro de instruções CREATE HYBRID TABLE.

Exibições semânticas: Listagem de dimensões e métricas em uma exibição, esquema, banco de dados ou conta

Para listar as dimensões e métricas em uma exibição semântica, esquema, banco de dados ou conta, execute os seguintes comandos:

Você também pode listar as dimensões que pode especificar ao consultar uma métrica específica. Ao especificar uma dimensão e uma métrica em uma consulta, a tabela base da dimensão deve estar relacionada à tabela base da métrica. Além disso, a tabela base da dimensão deve ter um nível de granularidade igual ou inferior à tabela base da métrica.

Por exemplo, o exemplo a seguir consulta a exibição tpch_analysis e retorna a métrica customer_order_count e a dimensão order_date:

SELECT * FROM SEMANTIC_VIEW (
  tpch_analysis
  DIMENSIONS orders.order_date
  METRICS customer.customer_order_count
);
Copy

Esta consulta falha porque a tabela orders para a dimensão tem um nível de granularidade mais alto do que a tabela customer para a métrica:

010234 (42601): SQL compilation error:
Invalid dimension specified: The dimension entity 'ORDERS' must be related to and
have an equal or lower level of granularity compared to the base metric or dimension entity 'CUSTOMER'.

Para listar as dimensões que têm tabelas base relacionadas a e que estão em um nível igual ou inferior de granularidade do que a tabela base para uma métrica, execute o comando SHOW SEMANTIC DIMENSIONS FOR METRIC. Por exemplo:

SHOW SEMANTIC DIMENSIONS IN tpch_analysis FOR METRIC customer_order_count;
Copy

Novos insights de consulta sobre desempenho e otimização de junção

A exibição QUERY_INSIGHTS agora inclui insights sobre as seguintes condições que podem ter afetado o desempenho da consulta:

  • Uma consulta ou subconsulta não tem a cláusula WHERE, o que significa que a consulta examina uma tabela inteira e pode retornar mais linhas do que o pretendido.

  • Uma junção que inclui a saída de pelo menos uma outra junção está retornando muito mais linhas do que nas tabelas que estão sendo unidas.

  • Uma junção de dois conjuntos de dados (por exemplo, tabelas, exibições ou saída de chamadas de função de tabela) está retornando muito mais linhas do que nas tabelas que estão sendo unidas.

  • O desempenho de uma consulta foi melhorado através da otimização de pesquisa.

Cada insight inclui uma mensagem que explica como o desempenho da consulta pode ter sido afetado e fornece uma recomendação geral para as próximas etapas.

Para obter mais informações, consulte Uso de insights de consulta para melhorar o desempenho.

Atualizações do pipeline de dados

Tarefas: Nova opção EXECUTE AS USER e privilégio IMPERSONATE para objetos de usuário

Neste versão, as organizações que atribuem privilégios de segurança Snowflake por usuário podem permitir que os usuários executem tarefas de equipe usando suas contas de usuário existentes.

Como prática recomendada, sugerimos que as equipes criem um usuário de serviço que represente uma equipe e atribuam os privilégios necessários a esse usuário. Você pode então usar GRANT IMPERSONATE ON USER <user_name> TO ROLE <role_name> para conceder privilégios aos usuários e criar ou modificar tarefas com base na conta de usuário da equipe. Os usuários individuais podem então executar tarefas em nome do usuário da equipe para usar seus privilégios com os novos parâmetros: CREATE TASK … EXECUTE AS USER <user_name> e ALTER TASK … EXECUTE AS USER <user_name>.

Para obter mais informações, consulte Executar tarefas com privilégios de usuário.

Tabelas dinâmicas: Uso não permitido do atributo COPY_SESSION ao atualizar manualmente tabelas dinâmicas em um warehouse sem servidor

Uso de COPY_SESSION com uma tabela dinâmica em um contexto sem servidor faz com que a atualização herde o warehouse sem servidor, levando a um comportamento sem suporte e indefinido. Esta configuração agora resulta em um erro.

Para obter mais informações, consulte REFRESH [ COPY SESSION ].

Log de mudanças das notas de versão

Anúncio

Update

Data

Notas de lançamento

Publicação inicial (versão preliminar)

24 de julho de 2025

Tarefas: Nova opção EXECUTE AS USER e privilégio IMPERSONATE para objetos de usuário

Anúncio removido temporariamente até que a documentação de suporte esteja disponível.

28 de julho de 2025

Tarefas: Nova opção EXECUTE AS USER e privilégio IMPERSONATE para objetos de usuário

Anúncio restaurado.

28 de julho de 2025