snowflake-semanticview
github/awesome-copilot
Crie, altere e valide visualizações semânticas do Snowflake usando o Snowflake CLI (snow). Utilize-o quando for solicitado a criar ou solucionar problemas em definições de visualizações semânticas/camadas semânticas com os comandos CREATE/ALTER SEMANTIC VIEW, para validar o DDL das visualizações semânticas no Snowflake por meio do CLI, ou para orientar na instalação e configuração de conexão do Snowflake CLI.
...Expandir tudoSobre o snowflake-semanticview
Este guia orienta o assistente na criação, alteração e validação de visualizações semânticas do Snowflake por meio da CLI oficial do Snowflake (snow). Ele resolve o problema da construção de definições confiáveis em camadas semânticas ao adotar um fluxo de trabalho disciplinado que dá prioridade à validação: em vez de gerar DDL não testado, o assistente elabora instruções CREATE/ALTER SEMANTIC VIEW, as valida no Snowflake por meio da CLI usando um nome temporário, repete o processo até que sejam aprovadas e só então aplica a definição final. Ele também fornece orientações únicas para instalar a CLI do Snowflake e configurar uma conexão por meio de “snow connection add”, com links para a documentação oficial do Snowflake.
O fluxo de trabalho é completo. Ele faz com que o assistente confirme o banco de dados, esquema, papel, armazém e nome da visualização-alvo, verifique um modelo de esquema estrela e elabore o DDL seguindo a sintaxe oficial. Exige que sejam preenchidos sinônimos e comentários para cada dimensão, fato e métrica, priorizando os comentários existentes nas colunas do Snowflake como fonte e solicitando permissão antes de criar novos comentários. Utiliza instruções SELECT somente de leitura, com DISTINCT e um limite máximo de 1000 linhas, para identificar relações e tipos de coluna, valida o DDL sob um nome temporário (por exemplo, com o sufixo __tmp_validate) para evitar sobrescrever a visualização real, executa uma consulta de exemplo SEMANTIC_VIEW para confirmar o comportamento e limpa os objetos temporários posteriormente.
Os usuários-alvo são engenheiros de dados e engenheiros de análise que criam camadas semânticas ou definições de métricas no Snowflake. O gerenciamento de credenciais é delegado à configuração oficial de conexão da CLI do Snowflake, em vez de ser feito pelo próprio guia; a ênfase em nomes temporários para validação, limites de quantidade e solicitação de permissão antes da criação de comentários reflete práticas de tratamento de dados cuidadosas e de baixo risco.
Perguntas frequentes
Quais são os pré-requisitos?
É necessário ter a CLI do Snowflake (snow) instalada e uma conexão configurada por meio de “snow connection add”. O guia fornece links para a documentação oficial do Snowflake sobre instalação e configuração de conexão, tratando esses passos como únicos.
Como são gerenciadas as credenciais?
A autenticação é delegada à configuração oficial de conexão da CLI do Snowflake. O guia utiliza a conexão configurada para validação e execução, sem gerenciar ou armazenar as credenciais por conta própria.
Como evita sobrescrever uma visualização existente?
Ele valida o DDL sob um nome temporário, como adicionando o sufixo __tmp_validate no mesmo banco de dados e esquema, e só então aplica o DDL final após a validação ser bem-sucedida, limpando o objeto temporário em seguida.
Ele consulta meus dados reais?
Ele executa instruções SELECT somente de leitura, com DISTINCT e um limite máximo de 1000 linhas, para identificar relações entre fatos e dimensões e tipos de coluna, a fim de criar comentários e sinônimos significativos.
Ele cria sinônimos ou comentários por conta própria?
Não. Ele prioriza os comentários existentes nas colunas do Snowflake como fonte e pergunta se pode criá-los, se você deseja fornecer o texto ou se deve elaborar sugestões para aprovação antes de adicionar qualquer conteúdo.
One-Time Setup
- Verify Snowflake CLI installation by opening a new terminal and running
snow --help. - If Snowflake CLI is missing or the user cannot install it, direct them to https://docs.snowflake.com/en/developer-guide/snowflake-cli/installation/installation.
- Configure a Snowflake connection with
snow connection addper https://docs.snowflake.com/en/developer-guide/snowflake-cli/connecting/configure-connections#add-a-connection. - Use the configured connection for all validation and execution steps.
Workflow For Each Semantic View Request
- Confirm the target database, schema, role, warehouse, and final semantic view name.
- Confirm the model follows a star schema (facts with conformed dimensions).
- Draft the semantic view DDL using the official syntax:
- https://docs.snowflake.com/en/sql-reference/sql/create-semantic-view
- Populate synonyms and comments for each dimension, fact, and metric:
- Read Snowflake table/view/column comments first (preferred source):
- https://docs.snowflake.com/en/sql-reference/sql/comment
- If comments or synonyms are missing, ask whether you can create them, whether the user wants to provide text, or whether you should draft suggestions for approval.
- Read Snowflake table/view/column comments first (preferred source):
- Use SELECT statements with DISTINCT and LIMIT (maximum 1000 rows) to discover relationships between fact and dimension tables, identify column data types, and create more meaningful comments and synonyms for columns.
- Create a temporary validation name (for example, append
__tmp_validate) while keeping the same database and schema. - Always validate by sending the DDL to Snowflake via Snowflake CLI before finalizing:
- Use
snow sqlto execute the statement with the configured connection. - If flags differ by version, check
snow sql --helpand use the connection option shown there.
- Use
- If validation fails, iterate on the DDL and re-run the validation step until it succeeds.
- Apply the final DDL (create or alter) using the real semantic view name.
- Run a sample query against the final semantic view to confirm it works as expected. It has a different SQL syntax as can be seen here: https://docs.snowflake.com/en/user-guide/views-semantic/querying#querying-a-semantic-viewExample:
SELECT * FROM SEMANTIC_VIEW( my_semview_name DIMENSIONS customer.customer_market_segment METRICS orders.order_average_value)ORDER BY customer_market_segment;
- Clean up any temporary semantic view created during validation.
Synonyms And Comments (Required)
- Use the semantic view syntax for synonyms and comments:
WITH SYNONYMS [ = ] ( 'synonym' [ , ... ] )COMMENT = 'comment_about_dim_fact_or_metric'- Treat synonyms as informational only; do not use them to reference dimensions, facts, or metrics elsewhere.
- Use Snowflake comments as the preferred and first source for synonyms and comments:
- https://docs.snowflake.com/en/sql-reference/sql/comment
- If Snowflake comments are missing, ask whether you can create them, whether the user wants to provide text, or whether you should draft suggestions for approval.
- Do not invent synonyms or comments without user approval.
Validation Pattern (Required)
- Never skip validation. Always execute the DDL against Snowflake with Snowflake CLI before presenting it as final.
- Prefer a temporary name for validation to avoid clobbering the real view.
Example CLI Validation (Template)
# Replace placeholders with real values.snow sql -q "<CREATE OR ALTER SEMANTIC VIEW ...>" --connection <connection_name>
If the CLI uses a different connection flag in your version, run:
snow sql --help
Notes
- Treat installation and connection setup as one-time steps, but confirm they are done before the first validation.
- Keep the final semantic view definition identical to the validated temporary definition except for the name.
- Do not omit synonyms or comments; consider them required for completeness even if optional in syntax.
Todos os arquivos
0 arquivosInstalar snowflake-semanticview
Baixe e extraia os arquivos de habilidades para o seu diretório .claude/skills/.
Baixar ZIPClone o repositório e copie os arquivos da habilidade para o seu projeto.
git clone https://github.com/github/awesome-copilot/blob/main/skills/snowflake-semanticview/SKILL.md # Copy SKILL.md to your .claude/skills/ directory
Copiar





Lar
