用途:在 Confluent Cloud 上编写、调试 Flink SQL,重点防止把 Apache Flink OSS 语法误用于 CC。CC 与 OSS 方言存在大量行为差异,训练数据中的 OSS 语法可能在 CC 被拒绝或静默错处理。
主要能力:提供 CC 与 OSS 方言陷阱参考、CC 校验过的 SQL 模式(窗口、连接、去重、MATCH_RECOGNIZE、JSON、外部表)、支持的表格式与序列化说明、CC 专属报错排查、保留字列表,以及基于 CLI 的验证循环。范围限于两方言共有但行为不同的构造;CC 独有 DDL(如 CREATE MATERIALIZED TABLE、CREATE MODEL/AI_COMPLETE、CREATE AGENT、USE CATALOG)未收录,需直接查 CC 参考。
使用方式:按需加载参考文件,勿全部预先读取。写 SQL 前先看 dialect-traps,跑 CLI 前看 cli-reference,写模式看 sql-patterns-cc,配置格式看 formats-and-serialization,排错看 troubleshooting-cc,解析错误看 reserved-words。验证循环:先 EXPLAIN 捕获语法/类型错误且不耗 CFU;写最小复现;说明语句名、SQL、目标计算池/数据库/环境和副作用并等待用户确认;再运行 confluent flink statement create <name> --sql "$(cat repro.sql)" --compute-pool <id> --database <cluster> --environment <env> --wait;用 confluent kafka topic consume <topic> --cluster <id> --from-beginning --value-format <matching-format> 验证并记录。
限制与红线:CC 不支持 DataStream API;catalog 不可创建;检查点由 CC 管理;表从 topic 自动映射,不用 connector;value.format 须为 json-registry 等 SR 格式;CTE 须在 INSERT INTO 之后;窗口用 TVF 形式;用 CROSS JOIN UNNEST;不支持 PROCTIME();UDF 须上传 artifact;无 savepoint;--sql-file 不存在;DROP TABLE 会删除物理 Kafka topic 及数据。密钥不入库,EXPLAIN 先于 CREATE,不编造标识符。验证不得用 mock,任何端到端验证须真实 CLI。新陷阱应告知用户决定是否记录,勿直接改技能自身文件。