All skills
clickhouse avatar

/clickhouse-architecture-advisor

@5e162d6 official
by clickhouseclickhouse/agent-skills543 stars
39

MUST USE when designing ClickHouse architectures, selecting between ingestion or modeling patterns, or translating best practices into workload-specific system designs. Complements clickhouse-best-practices with decision frameworks and explicit provenance labels.

Use this Skill: https://skilld.dev/gh/clickhouse/agent-skills/clickhouse-architecture-advisor

This session only. Nothing lands on disk.

rulesdecision-join-enrichment.md

≈522 tokens on demand. Your agent reads this file only when SKILL.md points to it.

Choose the right enrichment path: JOIN, dictionary, denormalization, or precomputed enrichment

Principle

Not every dimension lookup should remain a runtime JOIN. The right design depends on dimension volatility, cardinality, and the cost profile of repeated enrichment.

Decision framework

Condition Recommendation Category
Small, slowly changing lookup table used in many queries Dictionary official
Dimension is naturally embedded and storage duplication is acceptable Denormalize derived
Join logic is complex and refreshed on a schedule Refreshable MV official
Query is exploratory or infrequent and dimensions change often Runtime JOIN official

Guidance

Recommendation: dictionaries for repeated low-latency lookups

Why Dictionaries are often the best fit for repeated key-based enrichment when the lookup data is relatively static.

Official sources

Recommendation: denormalize when operationally simple

Why If the dimension is stable and queried constantly, denormalization may outperform repeated joins.

Category derived

Official context

Recommendation: use refreshable or incremental MVs for structured enrichment

Why Precomputed enrichment is often better than expensive runtime joins for recurring production queries.

Official sources

Validation

  • Identify top CPU-consuming JOIN patterns
  • Compare runtime JOIN cost vs dictionary lookup or precomputed enrichment
  • Check dimension update frequency before choosing dictionary lifetime

Source: SKILL.md on GitHub

No alerts17d4 checks · Risk SAFE
  • Gen Agent Trust Hub17d

    The skill is a safe architectural advisor for ClickHouse workloads. It provides structured decision frameworks for ingestion, partitioning, and schema design based on official documentation. No malicious patterns, data exfiltration, or dangerous execution triggers were detected.

  • Socket17d

    No alerts

  • Snyk17d

    Risk: LOW · No issues

  • ZeroLeaks5mo

    Score: 93/100 · 2 sections analyzed

Signed by skilld at 5e162d6. This ties the file your Agent reads to that commit on GitHub. It does not review the instructions.

Last checked against GitHub 3 days ago.

Activeupdated 6 months ago
metadata
{
  "author": "ClickHouse Inc",
  "version": "0.1.0"
}
  • clickhouse
  • architecture
  • olap
  • ingestion
  • time-series
  • schema-design
  • partitioning
  • joins
  • telemetry

README badge

README badge for clickhouse/agent-skills/clickhouse-architecture-advisor

Guides ClickHouse architecture decisions for specific workloads—observability, analytics, IoT, financial services—by mapping workload shape to ingestion, partitioning, and join strategies with official documentation links. Classifies recommendations by provenance (official, derived, field) to separate documented behavior from heuristic field guidance.

Generated from the current SKILL.md.

Does this skill replace the clickhouse-best-practices skill?
No. This skill complements clickhouse-best-practices by adding workload-aware decision frameworks and provenance labels. Official documentation remains the source of truth for both.
What workload types does this skill cover?
Observability, security/SIEM, product analytics, IoT/telemetry, market data/financial services, and mixed OLAP with point-lookups. Each has scenario-specific rule files for ingestion, time-series retention, enrichment, and late-arriving events.
How does this skill distinguish between official, derived, and field guidance?
Official recommendations are directly from ClickHouse docs. Derived recommendations follow logically from documented behavior. Field recommendations are experience-based and include a disclaimer that they are heuristic and workload-dependent.
What should I do if a recommendation is uncertain?
The skill explicitly states when a recommendation is uncertain rather than presenting it as confident guidance.

Generated from the current SKILL.md. These answers refresh after source changes.