mcpField
R
risingwave-best-practices

risingwave-best-practices

github.com/risingwavelabs数据与数据库994 次安装29 周前更新
代码仓库

关于 risingwave-best-practices

risingwave-best-practices 是用于审查 RisingWave 设计和 SQL 的技能,按 Schema、物化视图、流式 SQL、Sink 和性能整理 14 条规则,并说明问题影响与修正方式。

主要功能

  1. 01覆盖 14 条设计与性能规则
  2. 02检查 Schema 与数据源选择
  3. 03审查物化视图及流式 SQL
  4. 04检查 Sink 配置与输出行为
  5. 05评估共享数据源、索引和并行度

适用场景

  1. 01审查 RisingWave Schema 设计
  2. 02检查物化视图定义与创建方式
  3. 03评估流式 SQL 和 CDC 模式
  4. 04排查 Sink 配置与性能问题

安装

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

$npx skills add https://github.com/risingwavelabs/agent-skills --skill risingwave-best-practices

安装后在 Claude Code 中输入/risingwave-best-practices确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

README.md
rules/
_sections.md
_template.md
mv-background-ddl.md
mv-emit-on-window-close.md
mv-no-order-by.md
perf-indexes-on-mv.md
perf-parallelism.md
perf-shared-source.md
schema-append-only.md
schema-source-vs-table.md
schema-watermark.md
sink-force-compaction.md
sink-snapshot-false.md
stream-cdc-pattern.md
stream-temporal-join.md
stream-tumble-windows.md

详细介绍

RisingWave 最佳实践

涵盖架构设计、流式 SQL 模式、Sink 配置和性能的 14 条规则。

如何应用

  1. 根据下方的评审类型,阅读相关规则文件
  2. 将规则应用于待评审的设计或代码
  3. 说明违规项及其影响和修复方法

评审流程

架构评审
物化视图评审
流式 SQL 评审
Sink 评审
性能评审

规则类别

优先级类别影响前缀规则
1架构设计CRITICAL / HIGHschema-3
2物化视图CRITICAL / HIGHmv-3
3流式 SQLCRITICAL / HIGHstream-3
4Sink 配置HIGH / MEDIUMsink-2
5性能HIGH / MEDIUMperf-3

快速参考

架构:

  • schema-source-vs-table — CDC 需要 TABLE;SOURCE 用于仅追加流
  • schema-append-only — APPEND ONLY 可启用优化;用于不可变事件数据
  • schema-watermark — 在数据摄取点(source/table)定义水印,而不是在 MV 中定义

物化视图:

  • mv-emit-on-window-close — 使用 EOWC 获取最终窗口结果;默认会发出部分更新
  • mv-background-ddl — 在大型表上创建 MV 之前设置 SET BACKGROUND_DDL=true
  • mv-no-order-by — MV 中的 ORDER BY 仅在创建时生效,不影响后续结果

流式 SQL:

  • stream-tumble-windows — 流式窗口使用 TUMBLE/HOP/SESSION,而不是 date_trunc
  • stream-cdc-pattern — 两步流程:CREATE SOURCE(共享)→ CREATE TABLE ... FROM source
  • stream-temporal-join — 使用 FOR SYSTEM_TIME AS OF 将流式 source 与 CDC 表连接

Sink:

  • sink-snapshot-false — 向现有 MV 添加 Sink 时,始终使用 snapshot = false
  • sink-force-compaction — 对高基数 upsert Sink 使用 force_compaction = true

性能:

  • perf-shared-source — 从一个 Kafka topic 创建多个 MV 时应使用共享 source
  • perf-indexes-on-mv — 在 WHERE/JOIN 谓词中使用的 MV 列上创建索引
  • perf-parallelism — 提高高吞吐量 MV 的并行度

评论

支持 Markdown