关于 snowflake-development
snowflake-development 是面向数据工程师的技能,用于处理 Snowflake SQL 分析和仓库规格建议。其命令行工具可分析或优化查询,并依据工作负载类型和数据量推荐仓库规格。
主要功能
- 01Snowflake SQL 分析
- 02查询优化建议
- 03按工作负载推荐仓库规格
- 04根据数据量生成建议
适用场景
- 01检查运行缓慢的 Snowflake SQL 查询
- 02优化 SQL 文件
- 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 |
工作流
查询性能优化
- 从查询历史记录中收集慢查询
- 运行分析器以识别优化机会
- 应用建议的更改
- 对比更改前后的执行计划
仓库规格调整
- 确定工作负载类型(ETL、BI、ad-hoc 等)
- 根据数据量运行 warehouse-sizing
- 查看建议
- 在适用时实施多集群设置
参考文档
- Snowflake 最佳实践 - 查询模式、仓库管理、成本优化
常见模式
降低成本
- 为仓库选择合适的规格(不要为小型查询使用 XL)
- 将 ad-hoc 仓库的 auto-suspend 设置为 60 秒
- 对频繁访问的聚合使用物化视图
- 使用聚类键对大型表进行分区
- 在生产查询中避免使用 SELECT *
评论
支持 Markdown