mcpField
S
snowflake-development

snowflake-development

github.com/borghei数据与数据库1.0k67 次安装5 天前更新
代码仓库

关于 snowflake-development

snowflake-development 是面向数据工程师的技能,用于处理 Snowflake SQL 分析和仓库规格建议。其命令行工具可分析或优化查询,并依据工作负载类型和数据量推荐仓库规格。

主要功能

  1. 01Snowflake SQL 分析
  2. 02查询优化建议
  3. 03按工作负载推荐仓库规格
  4. 04根据数据量生成建议

适用场景

  1. 01检查运行缓慢的 Snowflake SQL 查询
  2. 02优化 SQL 文件
  3. 03估算 ETL 或 BI 工作负载的仓库规格

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/borghei/claude-skills --skill snowflake-development

安装后在 Claude Code 中输入/snowflake-development确认已加载。

附带文件references/snowflake-best-practices.mdscripts/snowflake_query_helper.py

详细介绍

Snowflake 开发

**类别:**工程 **领域:**数据仓库

概览

Snowflake 开发技能提供用于分析和优化 Snowflake SQL 查询、推荐仓库规格以及落实 Snowflake 专属最佳实践的工具。帮助数据工程师降低成本并提升查询性能。

先行确认

在分析或确定规格前,请先确认以下输入。如果某项缺失或含糊不清,且会影响结果,请询问用户;如果不会影响结果,请采用合理的默认值,并说明所用默认值。

  • **操作:**analyze / optimize / warehouse-sizing(--action;用于选择工作流)。
  • **SQL 文件或查询:**要优化的具体查询(--file;分析对象)。
  • **工作负载类型和数据量:**ETL / BI / ad-hoc,以及 GB 级别的数据量(--workload/--data-volume;用于确定仓库规格建议)。

只询问本次请求中最关键的两三项输入,不要询问完整列表。如果用户希望立即获得结果,请直接给出结果,并在开头说明假设。

快速开始

# Analyze a Snowflake SQL file for optimization opportunities
python scripts/snowflake_query_helper.py --file queries.sql --action analyze

# Get warehouse sizing recommendations
python scripts/snowflake_query_helper.py --action warehouse-sizing --workload "etl" --data-volume "500GB"

# Optimize a specific query
python scripts/snowflake_query_helper.py --file slow_query.sql --action optimize

工具概览

工具用途主要标志
snowflake_query_helper.py分析和优化 Snowflake SQL,并推荐仓库规格--file、--action、--workload、--data-volume

工作流

查询性能优化
  1. 从查询历史记录中收集慢查询
  2. 运行分析器以识别优化机会
  3. 应用建议的更改
  4. 对比更改前后的执行计划
仓库规格调整
  1. 确定工作负载类型(ETL、BI、ad-hoc 等)
  2. 根据数据量运行 warehouse-sizing
  3. 查看建议
  4. 在适用时实施多集群设置

参考文档

常见模式

降低成本
  • 为仓库选择合适的规格(不要为小型查询使用 XL)
  • 将 ad-hoc 仓库的 auto-suspend 设置为 60 秒
  • 对频繁访问的聚合使用物化视图
  • 使用聚类键对大型表进行分区
  • 在生产查询中避免使用 SELECT *

评论

支持 Markdown