云器科技开源“增量Skill”:一句话让AI搞定增量数据开发,任意AI Agent生产级可用

📅 2026/7/9 15:23:44 👁️ 阅读次数 📝 编程学习
云器科技开源“增量Skill”:一句话让AI搞定增量数据开发,任意AI Agent生产级可用

近日,云器科技正式对外公布了面向AI时代的重要开源项目——incremental-skills(增量Skill),并同期发布配套的生产级工具cz-cli。云器科技将过去数年积累的增量计算核心算法,系统性封装为一套可被主流AI编码Agent直接调用的“算法手册”,使AI具备了将传统全量批处理SQL自动改写为增量计算逻辑的能力,真正做到“一句话让AI搞定增量数据开发”

云器科技CTO 关涛与增量Skill核心研发工程师陈唯共同介绍了这一新能力,并通过三组现场演示,完整展示了增量Skill从算法生成到生产级落地的全过程。

从"不可能三角"说起:为什么需要增量计算

数据处理领域长期存在一个被称为"不可能三角"的核心难题:数据新鲜度(Freshness)、执行效率与成本(Efficiency)、查询性能(Performance)三者难以被单一引擎同时满足。这也是为什么当前企业数据栈中往往需要流处理、批处理、交互分析等多套专用系统协同工作,分别覆盖三角形的不同侧面,由此带来了高昂的架构复杂度与维护成本。


云器科技提出的增量计算,核心思路可以概括为一个简洁的公式:ResultSet(T0) + Δ(T0,T1) = ResultSet(T1)——当新数据到达时,系统无需从零开始重新计算,而是复用此前已算得的结果,仅针对新增(或变化)的"增量数据"进行计算,并将结果与历史结果融合,从而以远低于全量计算的代价得到最新结果。计算周期越短,其行为越接近流计算;计算周期越长,则接近批处理,由此实现在"数据新鲜度"与"执行成本"之间的灵活调节。

CREATE DYNAMIC TABLE sales AS SELECT p.product_name, SUM(o.price) AS total_sales_amount FROM products p INNER JOIN orders o ON p.product_id = o.product_id WHERE product_name != 'Latte' GROUP BY p.product_name;

在云器Lakehouse引擎中,用户只需将建表语句中的CREATE TABLE替换为CREATE DYNAMIC TABLE,业务SQL逻辑无需任何改动,系统即可自动完成增量化改造。

实测数据:性能提升近10倍,成本最高可降90%

云器Lakehouse是完全自主研发AI+Data下一代数据基础设施,以Single-Engine架构统一流处理、批处理与交互分析三种计算形态。在权威的TPC-DS 10TB基准测试中,云器引擎性能达到Spark的9.51倍;依托增量执行、避免重复计算的核心机制,客户综合成本最高可降低50%-90%。目前,云器已在小红书、快手、长安汽车、大众(Volkswagen)、Ninja Van、长城汽车(GWM)、火花思维、Synagie等头部客户中落地,覆盖汽车、金融、零售电商、社交媒体、物流、电信等多个行业,业务跨中国与东南亚多个市场。

小红书案例:在小红书App全量行为日志(数千亿/天)及维度表更新(数亿/天)分析链路中,相较此前"Flink+ClickHouse"方案,云器Lakehouse方案将资源投入从5000 core降至1800 core,数据延迟优化至5分钟量级的同时,准确性由Diff<5%提升到Diff<1%,指标维度也可自由扩展至上百个。综合来看,单一引擎带来架构、开发、存储成本"三个1/3"的下降。

快手案例:不同复杂度场景下,增量计算均展现出显著的时效性与资源优势。中等复杂度场景中,端到端时效性从离线T+1小时缩短至5-30分钟,资源消耗(核*天)从200降至64.3左右;复杂场景下,离线需T+3.5小时产出,增量最快30分钟内完成,资源消耗从280降至最低154.3核*天。收益主要来自单次增量数据量小、避免重复全量计算,且更早产出也降低了关键指标的破线风险。

AI时代的新命题:能否让大模型学会增量计算?

增量计算本质上是一套具备严谨数学基础的形式化算法。以一个最简单的双表Inner Join为例,若表A、表B各有历史数据100行,此后各新增1行增量数据,全量重算的计算量为101×101,理论上超过1万行;而增量计算的公式为Δ(A⋈B) = ΔA⋈B + A⋈ΔB + ΔA⋈ΔB,最终计算量仅为100×1+100×1+1×1=201行,相比全量计算**节省约98%**的计算量。

但这套算法改写起来并不简单:原本一行的Join语句,改写为增量形式后需要拆分为三个子查询再做UNION ALL合并,最终通过MERGE INTO语句更新目标表;算子越复杂,手写改写的难度呈非线性上升,规则复杂度和空间复杂度在生产场景中往往难以控制,这也是SQL级别的增量改写此前长期未能被大规模采用的核心原因。

大模型的通用编码能力为这一命题提供了新的解法,但云器科技的测试也表明,直接依赖大模型"裸写"增量算法并不可靠——由于算法本身存在理论门槛,模型生成的改写结果有时会包含隐蔽的逻辑遗漏,且这类错误人工排查成本极高。基于此,云器科技选择了一条更稳健的路径:不是让AI自由发挥,而是为AI安装一套"专业知识插件"(Agent Skill),使其系统地选择正确算法、生成正确的增量代码,而非凭记忆猜测或即兴发挥。

incremental-skills:算法与数据源解耦,适配任意引擎

incremental-skills 采用分层架构设计:

  • 核心算法层(incremental-computation):负责分析SQL结构(涵盖Filter、JOIN、AGG、Window等主要算子),匹配最优增量算法,并生成可运行的增量脚本。运行前只需确认四个数据源前置条件:如何读取某版本的全量快照(Snapshot)、如何获取两个版本间的行级变更(Delta)、当前版本标识符(Version)、以及列名与类型(Schema)。
  • Adapter适配层:项目已预置两类典型Adapter——面向Iceberg/Spark原生CDC能力的iceberg-versioned-reads,以及面向无原生CDC能力场景的business-driven-versioning。后者揭示了一个关键洞察:分区的进出,本质上就是增量变更——新增分区可视为+1权重,滑出窗口的分区可视为-1权重,无需依赖CDC即可推导完整的增量语义,理论上可覆盖append-only(日志表/事实表)、overwrite(维度表定期刷新,需对新旧快照做Diff)、sliding-window(滚动窗口聚合)三类典型ETL场景,适配Hive、Spark、Iceberg等任意引擎及自定义DWD分区表——开发者只需实现Snapshot、Delta、Version、Schema四个接口,核心算法层无需任何修改即可立即接入。

现场实测:从单表滑窗求和到双流Left Join,收益量化可见

增量skill研发工程师 陈唯在会上演示了三组由浅入深的真实改造场景:

Demo #1:单表SUM滑动窗口。 针对每日全量重算近7天分类别销售额的典型报表需求(SELECT category, SUM(amount) ... WHERE dt >= CURRENT_DATE - 6 DAY GROUP BY category),开发者只需输入一句指令——/incremental-computation Convert target_7day_sum to incremental. sales: sliding-window, partitioned by dt.——increment-skills即自动生成带权重Delta的增量脚本:新进分区权重记为+1,滑出分区权重记为-1,通过SUM(amount * __weight)更新状态表与结果表。实测显示,全量重算需扫描21行(7个分区),增量刷新仅需扫描6行(2个分区,即新进与滑出各一个),性能节省71%,且窗口宽度固定时无论历史数据积累多久,每次刷新的扫描成本恒定为O(1),结果与全量重算逐行比对完全一致(PASS)。
Demo #2:双流LEFT JOIN + SUM聚合。 这是一个复杂得多的双流场景:orders与payments两张append-only分区表各自按天追加数据,且payments存在"迟到"问题——订单先到、支付延迟到达时,LEFT JOIN会先产生NULL结果,待支付数据到达后,该NULL行必须被"撤回并重新计算"(Retract & Insert),普通增量脚本难以正确处理这种撤回逻辑。increment-skills自动将该查询分解为JOIN与可撤回聚合(Retractable AGG)两层带状态算子,分别维护state_join与state_agg两张状态表,并通过精心设计的Sentinel机制(用固定占位值代替NULL参与JOIN,避免NULL语义歧义)保证撤回与重算的正确性。全部测试场景——包括NULL分组出现、跨批撤回、迟到数据触发的Term重算等边界条件——均通过与全量重算结果的逐行对比验证(PASS),且验证证明:每次刷新只处理有变化的Delta数据,不扫描全表;数据量越大,增量计算相较全量计算的收益越大,而增量处理量只与新增行数相关,与历史数据总量无关。

Demo #3接入cz-cli,动态表生产级验证。 团队进一步展示了如何用云器的cz-cli将Demo #2中的LEFT JOIN案例改造为可直接生产运行的Dynamic Table:仅需在原始SELECT语句前加一段CREATE DYNAMIC TABLE ... REFRESH ON DEMAND ...表头声明,业务SQL本身零改动。实测中,初始30个订单、25笔付款对应4行结果;新增5个订单及8笔付款(含5笔历史未付款订单完成结算)后,结果更新为5行,且Dynamic Table查询结果与直接SQL全量查询100%一致;关键的是,增量刷新仅处理了34行输入数据,相较全表扫描的55行,行级增量捕获能力使得计算量随数据量的增长而进一步凸显收益,且无需依赖分区假设。

引擎无关、完全开源:一条命令即可安装

incremental-skills的定位是一套引擎无关的形式化知识体系。云器科技CTO 关涛在现场特别强调:“即便你的基础设施只有最基础的Parquet分区、连数据湖表格式都没有升级,也完全可以通过分区级别的逻辑定义接入这套体系。”

目前,incremental-skills已在GitHub正式开源(clickzetta/incremental-skills),遵循ClickZetta Incremental Skills License v1.0协议,面向非商业用途完全免费使用,欢迎社区Star与贡献。开发者仅需一条命令即可完成安装:

npx skills add clickzetta/incremental-skills

该Skill已适配Claude Code、Cursor、Kiro、Copilot CLI、Gemini CLI、Codex等所有主流AI编码Agent,理论上兼容任何支持Agent Skills规范的工具。安装后,开发者只需用自然语言描述改造需求(如"帮我把这个SQL改成增量的"),Skill即会自动完成数据源前置条件确认、SQL结构解析与算子匹配、增量脚本生成、正确性逐步验证的完整流程,并输出包含算法解析、正确性校验、性能量化分析的完整报告,帮助团队理性判断某段链路"是否值得改",而非"为了增量而增量"。

cz-cli:生产级增量能力,引擎接管数据一致性保障

云器科技特别指出:incremental-skills生成的增量脚本虽然算法正确、引擎无关,但严肃生产环境仍需要更多平台级工程保障——包括状态表与目标表的数据一致性维护、并发写入的互斥调度、业务SQL变更时状态表与脚本逻辑的同步维护、以及多层级联依赖失败时的补数与重跑机制。这些是工程问题,而非算法问题,需要的是引擎级保障,而不是更长的脚本。

为此,云器科技同期发布了cz-cli——面向ClickZetta Lakehouse的开源命令行工具,"你写SQL,引擎替你维护增量流程"。cz-cli具备三种使用形态,共享同一套云器账号、Profile与权限体系,便于统一治理与审计:

  1. Standalone Agent:无需配置任何上层AI工具,cz-cli agent直接进入完整对话式Agent模式,支持自然语言转SQL执行、智能Schema发现,高风险操作强制人工确认;
  2. Subagent:作为Claude Code、Cursor、Kiro、Gemini CLI、Codex等主流AI编码工具的子Agent被调用(cz-agent run),可读取真实Warehouse上下文、执行SQL、诊断Job,将ClickZetta操作无缝纳入AI开发工作流;
  3. CLI Commandline:传统命令行形态(cz-cli sql),适合脚本、CI/CD自动化及需要精确可复制命令的场景,支持多环境Profile切换(dev/test/prod)。

功能覆盖SQL查询执行、元数据浏览(Schema/Table)、Studio任务全生命周期管理(创建/发布/运行/监控)、Job性能诊断、多环境Profile管理、外部数据源管理及AI Gateway模型管理等数据工程师日常所需的核心能力。安全设计上,cz-cli遵循当前账号权限继承、不为AI Agent额外放大权限,并建议为AI Agent配置独立的低权限Profile(如prod-readonly);查询、巡检等只读操作可直接执行,而SQL写操作、任务发布下线、补数重跑、删除等高风险操作均需显式参数确认。

安装同样只需一条命令:

curl -fsSL https://cz-cli.ai/install.sh | sh

随后执行cz-cli setup完成快速配置,cz-cli status验证连接。新用户完成配置后即可获赠1000万免费Token,用于体验AI Agent原生湖仓接口能力。

写在最后:"能用"只是第一步

云器科技CTO 关涛表示:“增量计算的价值分为三个层次——先解决'能不能用',再解决'好不好用',最后追求'能不能做到秒级甚至毫秒级的极致实时'。这次开源的incremental-skills,解决的正是第一层'能用'的问题,让任何团队、任何引擎都能低成本地迈出增量化的第一步;而云器的Lakehouse引擎与cz-cli,则致力于在此基础上持续解决'好用'与'更实时'的问题。我们希望通过开源的方式,让增量计算这套沉淀多年的技术思想,真正成为整个数据社区可以共享和共建的公共知识。”

现在就可以开始

  • Star与安装 incremental-skills:GitHub仓库 https://github.com/clickzetta/incremental-skills,欢迎Star / Fork / Issue;安装命令 npx skills add clickzetta/incremental-skills,支持所有主流AI编码工具。
  • 安装 cz-cli:安装方式和更多详细信息请登录官方网站 cz-cli Official Site,新用户可获赠1000万免费Token。GitHub仓库地址 https://github.com/clickzetta/cz-cli。
  • 免费试用云器Lakehouse:官网地址 www.yunqi.tech,可获得30天免费试用并赠送代金券。合作咨询电话:400-6767-862,邮箱:service@yunqi.tech,欢迎关注云器公众号获取更多资讯!


云器科技官网 - 改变数据的使用方式
更多内容,欢迎关注「云器科技」官网!
云器科技-多云及一体化数据平台提供