warehouse-optimization
Provides concrete SQL examples for partitioning, clustering, and query optimization across Snowflake, BigQuery, and Redshift. Includes practical patterns for materialized views and cost management with specific anti-patterns to avoid.
Packaged view
This page reorganizes the original catalog entry around fit, installability, and workflow context first. The original raw source lives below.
Install command
npx @skill-hub/cli install timequity-plugins-warehouse-optimization
Repository
Skill path: craft-coder/data/warehouse-optimization
Provides concrete SQL examples for partitioning, clustering, and query optimization across Snowflake, BigQuery, and Redshift. Includes practical patterns for materialized views and cost management with specific anti-patterns to avoid.
Open repositoryBest for
Primary workflow: Analyze Data & AI.
Technical facets: Data / AI.
Target audience: Data engineers and analysts working with cloud data warehouses who need to optimize query performance and reduce costs.
License: Unknown.
Original source
Catalog source: SkillHub Club.
Repository owner: timequity.
This is still a mirrored public skill entry. Review the repository before installing into production workflows.
What it helps with
- Install warehouse-optimization into Claude Code, Codex CLI, Gemini CLI, or OpenCode workflows
- Review https://github.com/timequity/plugins before adding warehouse-optimization to shared team environments
- Use warehouse-optimization for data workflows
Works across
Favorites: 0.
Sub-skills: 0.
Aggregator: No.
Original source / Raw SKILL.md
---
name: warehouse-optimization
description: Query optimization, partitioning, clustering, and warehouse tuning.
---
# Warehouse Optimization
## Partitioning
```sql
-- Snowflake: Automatic clustering
ALTER TABLE fct_sales
CLUSTER BY (date_key, store_key);
-- BigQuery: Partition by date
CREATE TABLE fct_sales
PARTITION BY DATE(ordered_at)
CLUSTER BY store_id, product_id;
-- Redshift: Distribution and sort keys
CREATE TABLE fct_sales (
...
)
DISTKEY(store_id)
SORTKEY(ordered_at, store_id);
```
## Query Optimization
### Use EXPLAIN
```sql
EXPLAIN ANALYZE
SELECT ...
FROM fct_sales
WHERE date_key BETWEEN 20240101 AND 20240131;
```
### Common Issues
| Problem | Solution |
|---------|----------|
| Full table scan | Add partition filter |
| Skewed joins | Redistribute data |
| Large sorts | Pre-aggregate |
| Too many columns | Select only needed |
### Efficient Joins
```sql
-- ❌ Bad: Large table on left
SELECT * FROM fct_sales s
JOIN dim_date d ON s.date_key = d.date_key;
-- ✅ Good: Small table on left (broadcast)
SELECT * FROM dim_date d
JOIN fct_sales s ON d.date_key = s.date_key;
```
## Materialized Views
```sql
CREATE MATERIALIZED VIEW mv_daily_sales AS
SELECT
date_key,
store_key,
SUM(amount) as total_sales,
COUNT(*) as transaction_count
FROM fct_sales
GROUP BY 1, 2;
```
## Cost Management
- Monitor credit/byte usage
- Set query timeouts
- Use warehouse scheduling
- Archive old partitions
- Implement query tagging