← 返回 Skills 市场
150
总下载
0
收藏
2
当前安装
1
版本数
在 OpenClaw 中安装
/install clickhouse-best-practices
功能描述
ClickHouse 数据库优化专家技能。MUST USE when reviewing ClickHouse schemas, queries, or configurations. 审查 CREATE TABLE、ALTER TABLE、SELECT、JOIN、聚合查询、写入策略和配置。包含 28 条规则,涵...
使用说明 (SKILL.md)
ClickHouse 最佳实践专家
全面的 ClickHouse 指南,涵盖表结构设计、查询优化和数据写入。包含 3 大类(表结构、查询、写入)共 28 条规则,按影响程度排序。
官方文档: ClickHouse 最佳实践
核心职责
- 表结构审查:分析 CREATE TABLE 和 ALTER TABLE 语句,确保设计最优
- 查询优化:审查 SELECT、JOIN 和聚合查询的性能表现
- 写入策略:指导用户进行批量写入、异步写入以及避免 mutation 操作
- 问题排查:帮助诊断和修复常见的 ClickHouse 性能问题
如何应用本技能
优先级顺序:
- 检查
rules/目录中是否有适用的规则 - 如果有规则:应用规则并使用"根据
规则名称..."的格式引用 - 如果没有规则:使用 LLM 的 ClickHouse 知识或搜索官方文档
- 如果不确定:使用网络搜索获取当前最佳实践
- 务必标注来源:规则名称、"ClickHouse 通用指南"或具体 URL
为什么规则优先: ClickHouse 具有特殊的行为特性(列式存储、稀疏索引、合并树机制),在这些场景下,通用的数据库直觉可能会产生误导。
审查输出格式
审查表结构、查询或配置时,请按以下格式组织输出:
## 检查的规则
- `规则名称-1` - 符合规范 / 存在问题
## 发现
### 问题项
- **`规则名称`**:问题描述
- 当前状态:[代码当前的做法]
- 应该做到:[正确的做法]
- 修复方案:[具体的修改建议]
### 符合规范项
- `规则名称`:简要说明为什么符合规范
## 建议
[按优先级排列的修改建议,并引用相关规则]
审查流程
表结构审查(CREATE TABLE, ALTER TABLE)
规则文件:
rules/schema-pk-plan-before-creation.mdrules/schema-pk-cardinality-order.mdrules/schema-pk-prioritize-filters.mdrules/schema-types-native-types.mdrules/schema-types-minimize-bitwidth.mdrules/schema-types-lowcardinality.mdrules/schema-types-avoid-nullable.mdrules/schema-partition-low-cardinality.mdrules/schema-partition-lifecycle.md
检查清单:
- PRIMARY KEY / ORDER BY 列顺序(从低基数到高基数)
- 数据类型是否匹配实际数据范围
- 对合适的字符串列应用 LowCardinality
- 分区键基数有界(100-1,000 个值)
- 如果使用 ReplacingMergeTree 需有版本列
查询审查(SELECT, JOIN, 聚合)
规则文件:
rules/query-join-choose-algorithm.mdrules/query-join-filter-before.mdrules/query-join-use-any.mdrules/query-index-skipping-indices.mdrules/schema-pk-filter-on-orderby.md
检查清单:
- 过滤条件使用 ORDER BY 前缀列
- JOIN 前先过滤表数据
- 根据表大小选择正确的 JOIN 算法
- 对非 ORDER BY 过滤列使用跳数索引
写入策略审查
规则文件:
rules/insert-batch-size.mdrules/insert-mutation-avoid-update.mdrules/insert-mutation-avoid-delete.mdrules/insert-async-small-batches.mdrules/insert-optimize-avoid-final.md
检查清单:
- 每次 INSERT 批量大小 10K-100K 行
- 频繁变更不要使用 ALTER TABLE UPDATE
- 更新场景使用 ReplacingMergeTree 或 CollapsingMergeTree
- 高频小批量写入启用异步插入
规则分类(按优先级排序)
| 优先级 | 分类 | 影响程度 | 前缀 | 关注点 | 规则数量 |
|---|---|---|---|---|---|
| 1 | 主键选择 | 关键 | schema-pk- |
ORDER BY 列顺序 | 4 |
| 2 | 数据类型选择 | 关键 | schema-types- |
原生类型、LowCardinality | 5 |
| 3 | JOIN 优化 | 关键 | query-join- |
算法选择、过滤优化 | 5 |
| 4 | 批量写入 | 关键 | insert-batch- |
每次 INSERT 10K-100K 行 | 1 |
| 5 | 避免 Mutation | 关键 | insert-mutation- |
ReplacingMergeTree 替代 UPDATE | 2 |
| 6 | 分区策略 | 高 | schema-partition- |
低基数、生命周期管理 | 4 |
| 7 | 跳数索引 | 高 | query-index- |
bloom_filter、minmax | 1 |
| 8 | 物化视图 | 高 | query-mv- |
增量/可刷新物化视图 | 2 |
| 9 | 异步写入 | 高 | insert-async- |
服务端缓冲 | 2 |
| 10 | 避免 OPTIMIZE | 高 | insert-optimize- |
让后台合并自然进行 | 1 |
| 11 | JSON 使用 | 中等 | schema-json- |
动态 schema | 1 |
快速参考
表结构设计 - 主键(关键)
schema-pk-plan-before-creation- 建表前规划 ORDER BY(不可更改)schema-pk-cardinality-order- 列按基数从低到高排序schema-pk-prioritize-filters- 包含常用过滤列schema-pk-filter-on-orderby- 查询过滤必须使用 ORDER BY 前缀
表结构设计 - 数据类型(关键)
schema-types-native-types- 使用原生类型,不要全用 Stringschema-types-minimize-bitwidth- 使用能容纳数据的最小数值类型schema-types-lowcardinality- 唯一值 \x3C10K 的字符串用 LowCardinalityschema-types-enum- 有限值集合用 Enum 并启用校验schema-types-avoid-nullable- 避免 Nullable,改用 DEFAULT
表结构设计 - 分区(高)
schema-partition-low-cardinality- 分区数量控制在 100-1,000schema-partition-lifecycle- 分区用于数据生命周期管理,而非查询优化schema-partition-query-tradeoffs- 理解分区裁剪的权衡schema-partition-start-without- 考虑先不分区
表结构设计 - JSON(中等)
schema-json-when-to-use- 动态 schema 用 JSON;已知结构用类型化列
查询优化 - JOIN(关键)
query-join-choose-algorithm- 根据表大小选择算法query-join-use-any- 只需一条匹配时用 ANY JOINquery-join-filter-before- JOIN 前先过滤query-join-consider-alternatives- 字典/宽表 vs JOINquery-join-null-handling- join_use_nulls=0 使用默认值
查询优化 - 索引(高)
query-index-skipping-indices- 非 ORDER BY 过滤列使用跳数索引
查询优化 - 物化视图(高)
query-mv-incremental- 实时聚合用增量物化视图query-mv-refreshable- 复杂 JOIN 用可刷新物化视图
写入策略 - 批量(关键)
insert-batch-size- 每次 INSERT 10K-100K 行
写入策略 - 异步(高)
insert-async-small-batches- 高频小批量用异步写入insert-format-native- Native 格式性能最佳
写入策略 - Mutation(关键)
insert-mutation-avoid-update- 用 ReplacingMergeTree 替代 ALTER UPDATEinsert-mutation-avoid-delete- 用轻量级 DELETE 或 DROP PARTITION
写入策略 - 优化(高)
insert-optimize-avoid-final- 让后台合并自然进行
适用场景
本技能适用于:
- CREATE TABLE 语句
- ALTER TABLE 修改
- ORDER BY 或 PRIMARY KEY 相关讨论
- 数据类型选择问题
- 慢查询排查
- JOIN 优化需求
- 数据写入管道设计
- 更新/删除策略问题
- ReplacingMergeTree 或特殊引擎使用
- 分区策略决策
重要提示
- 建议修改前务必在真实数据上测试
- 给出建议时要考虑各种权衡因素
- 适时引用 ClickHouse 官方文档
- 关注 ClickHouse 版本特性(24.x 及以上版本)
安全使用建议
This skill appears coherent and focused: it bundles a comprehensive set of ClickHouse rules and gives a clear output format for reviews. Before installing, consider: (1) whether the agent is allowed to access the public web (the skill may perform network searches when rules are missing); (2) validate that the suggested best-practices match your ClickHouse version and organizational constraints (some recommendations depend on ClickHouse 24.x+ features); and (3) test any schema or write-policy changes in staging — the rules are prescriptive and can require heavyweight migrations (e.g., changing ORDER BY requires table migration). There are no requests for credentials or installs, so the direct security risk from this skill bundle is low.
功能分析
Type: OpenClaw Skill
Name: clickhouse-best-practices
Version: 1.0.0
The skill bundle is a comprehensive and legitimate guide for ClickHouse database optimization. It contains 28 detailed rules covering schema design, query performance, and data ingestion strategies, all of which align with official ClickHouse best practices. The instructions in SKILL.md are strictly focused on providing expert database reviews, and there is no evidence of malicious intent, data exfiltration, or prompt injection across any of the files (e.g., rules/schema-pk-plan-before-creation.md, rules/insert-batch-size.md).
能力标签
能力评估
Purpose & Capability
Name, description, and the included rules (28 rule files) all relate to ClickHouse schema/query/write optimizations. There are no unrelated environment variables, binaries, or install steps requested — the required surface is proportionate to the stated purpose.
Instruction Scope
SKILL.md confines runtime behavior to consulting the rules/ directory and applying rule-based checks. It also allows falling back to LLM knowledge or network searches when no rule applies; that fallback is reasonable for keeping advice current but is an open-ended permission to fetch external web content. The skill does not instruct reading local system files or environment variables beyond its own bundle.
Install Mechanism
No install spec and no code to execute — instruction-only skill. Nothing will be downloaded or written to the agent's environment by the skill itself.
Credentials
Requires no environment variables, credentials, or config paths. The guidance and rule files do not request secrets or access to unrelated services.
Persistence & Privilege
always:false and default invocation settings. The skill does not request persistent/system-wide privileges or modify other skills' configurations.
如何使用
- 确保已安装 OpenClaw(本地或 Docker 部署)
- 在对话框中输入安装命令:
/install clickhouse-best-practices - 安装完成后,直接呼叫该 Skill 的名称或使用
/clickhouse-best-practices触发 - 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v1.0.0
- Initial release of the "clickhouse-best-practices" skill.
- Provides 28 rules covering schema design, query optimization, and data ingestion for ClickHouse.
- Includes structured review checklists and step-by-step auditing process for CREATE TABLE, ALTER TABLE, queries, and data writes.
- Supplies prioritized rule categories with specific guidance for ORDER BY, data types, partitioning, joins, and mutations.
- Review output follows a clear, standardized template.
- References official ClickHouse best practices and documentation for all recommendations.
元数据
常见问题
Clickhouse Best Practices 是什么?
ClickHouse 数据库优化专家技能。MUST USE when reviewing ClickHouse schemas, queries, or configurations. 审查 CREATE TABLE、ALTER TABLE、SELECT、JOIN、聚合查询、写入策略和配置。包含 28 条规则,涵... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 150 次。
如何安装 Clickhouse Best Practices?
在 OpenClaw 或 Claude Code 对话框中运行命令「/install clickhouse-best-practices」即可一键安装,无需额外配置。
Clickhouse Best Practices 是免费的吗?
是的,Clickhouse Best Practices 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。
Clickhouse Best Practices 支持哪些平台?
Clickhouse Best Practices 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。
谁开发了 Clickhouse Best Practices?
由 ShaNiu001(@shaniu001)开发并维护,当前版本 v1.0.0。
推荐 Skills