技术实践
淘天直播将自然语言编译为实时数据DSL与SQL
概述
直播业务存在大量实时数据场景:对内的直播 360 大促分析,对外的主播数据大屏、实时榜单,以及嵌入主链路的平台策略调控、实时算法特征、广告投放。相比离线,实时开发还要处理窗口设计、双流关联语义、状态生命周期、时间属性与乱序等复杂度。团队把数据链路的业务逻辑归约为「维度 + 指标」,建成 AI 辅助、指标驱动的开发系统:用户用自然语言提需求且全文手动输入总计在 200 个字符以内,系统自动完成指标检索召回与窗口等逻辑识别,用户确认指标/维度/窗口后由 AI 生成 DSL,工程侧再把 DSL 100% 准确地转成 SQL,生成的脚本包含 TT Topic 订阅与资源/变量/参数配置后可一键发布到 Dataphin。 引擎侧以目标指标为驱动做两件事——依赖回溯建骨架(自主回溯所有过程指标,构建 DAG 拓扑)与维度双路填充(被指标引用的过程维度经关联关系补全,输出维度从产出结果一路回溯到源),中间需要多少 tmp_view、每条支路的加工职责都由目标指标的计算依赖、窗口语义、字段派生、聚合加工、维表关联与输出适配共同决定,而非预置模板。 链路支持直通型/复合型、扇出复用(一次聚合多路消费避免重复计算)、维表旁路增强(LOOKUP 横向贴入)与全链路血缘(任意产出指标可单向回溯到确定的物理源表与原始字段)。