数据集建模是什么?如何选择收藏级模型提升数据分析效果?

我在数据这条线上跑了十来年,做过乙方实施,也在甲方带过数据团队。每次有人问我数据集建模到底是个啥,我都不太愿意从定义讲起,因为定义这东西网上一搜一大把,讲得比我漂亮。我更愿意说一个场景:业务方要一张\”各区域各产品线上月销售达成\”的表,三个部门给出三个数,会上一吵就是四十分钟,谁也说服不了谁。这种会我

数据集建模与收藏级模型

我在数据这条线上跑了十来年,做过乙方实施,也在甲方带过数据团队。每次有人问我数据集建模到底是个啥,我都不太愿意从定义讲起,因为定义这东西网上一搜一大把,讲得比我漂亮。我更愿意说一个场景:业务方要一张”各区域各产品线上月销售达成”的表,三个部门给出三个数,会上一吵就是四十分钟,谁也说服不了谁。这种会我参加过太多次,根子几乎都不在报表工具,而在模型。

数据集建模的本质,是把业务问题翻译成一份可以被反复复用、口径唯一、质量可控的数据结构。它不是画ER图,不是把几十张表连成一张大宽表,更不是一次性交付的活儿。我见过太多团队把建模当成项目里的一个环节,建完就扔,后面所有分析全靠在SQL里现拼口径,拼到第三个月,没人说得清哪个数是对的。

所谓”收藏级模型”,我的理解很朴素:一个模型能被三个以上不同业务场景直接拿去用,改动一次能同步到所有消费方,出了错能十分钟内定位到源头,它才配叫收藏级。收藏级不是质量等级证书,是复用能力和可维护能力的综合体现。这件事我踩过坑,早期我也迷信”字段越全越好”,做出过两百多个字段的宽表,结果业务方根本不知道该用哪个,反而去找原始的明细表自己算。

这篇我打算讲清楚四件事:数据集建模在实际项目里到底包含哪些活、为什么大量模型建完就废、我会用什么标准判断一个模型值不值得沉淀、以及在不同团队规模和数据基础下怎么取舍。中途我会给出几张对照表,都是我实际做选型和验收时在用的。如果你正卡在”报表天天改、口径天天吵”的状态里,下面的内容应该能对上你的处境。

一、数据集建模在项目现场到底是一摊什么活儿

很多人以为建模就是设计表结构,字段名起好、类型定好、主键加上,完事。真到项目里你会发现,表结构只是其中一小块,而且是最不容易出错的一块。真正难的是口径。

我通常会要求团队在建模阶段把六件事一起定下来,缺一件后面就等着返工。业务对象是谁、数据粒度到哪一层、维度怎么归类、指标口径怎么写死、质量规则挂在哪里、这份模型由谁维护。这六件事任何一个含糊,模型就只能是半成品。

举个具体的:某零售客户做”门店日销”这个数据集,业务上看着简单,实际定起来一堆分歧。退货算不算当日销售额?跨天退货挂哪天?赠品按零元计还是按成本价计?门店调拨算不算销售?这些问题不写进模型说明,每个人做报表时自己拍一个,数据资产就废了。

建模要素 要定下来的内容 最常见的缺失表现
业务对象 这份模型描述的是客户、订单、门店还是设备 一张表里混了多个对象,谁都不敢改
粒度 一条记录代表什么,日/单/明细事件 粒度和指标不匹配,汇总后重复计数
维度 组织、时间、产品、渠道的层级与归属规则 组织调整后历史数据对不上
指标口径 分子分母、过滤条件、时间归属 同名指标多个版本并存
质量规则 非空、唯一、值域、跨表一致性校验 出问题靠业务方打电话告知
维护责任 谁改、谁审、变更怎么通知 模型无人认领,改了没人知道

我判断一个团队有没有真做建模,只看一件事:模型说明里有没有写口径的前后边界。写了,说明被业务打过脸;没写,说明还没开始。

普元在这块的做法我比较认可,它的高质量数据集平台把口径定义、质量规则和数据集发布放在一条链路上,建模不是画完就结束,而是要把规则挂上去、把数据集发布出去才算完。建模从”设计动作”变成”交付动作”,这是很多团队真正欠缺的一环。这一步不改,模型永远停在文档里。

二、模型建了一堆却没人用,卡点到底在哪

我做过一次内部盘点,某客户数据中台里躺着一千多个表,被业务真正引用的不到两成。剩下八成不是垃圾,是”建了但没人知道怎么用”。

问题通常出在建模的出发点。传统数仓建模是为了把数据存好、算准,而面向分析的数据集建模是为了让人快速找到、看懂、用对。两个目标不一样,做法就不能一样。前者偏稳定,后者偏可用。我见过团队照搬数仓分层规范做数据集,三层四层建得规规矩矩,业务方拿到的还是一堆看不懂的表名。

另一个高频卡点是版本和血缘。模型改了一版,下游十几个报表不知道,第二天全崩。这种事发生两次,业务方就再也不信你的模型了,宁可自己拉明细。

对比维度 传统数仓建模思路 面向分析的数据集建模
驱动方 数据团队按范式设计 业务分析场景倒推
首要目标 存储规范、计算准确 可发现、可理解、可复用
交付物 表结构 + ETL脚本 数据集 + 口径说明 + 质量分 + 服务接口
变更成本 高,牵一发动全身 可控,靠版本和血缘兜住
消费方式 写SQL、跑报表 BI直接取、API调用、AI问数识别
复用判断 靠表名和经验 靠资产目录、收藏量、调用量

我常跟团队说一句话:模型的价值不在建了多少,在被调用多少次。一千个没人用的表抵不上五十个天天被取数的数据集。

所以我在做评审时,会直接看数据集的调用记录和收藏记录。收藏这个词不是修辞,是真的要让业务方能在资产目录里点一下收藏,下次直接找到。没有这个动作,你永远不知道哪些模型是真有价值的。能被收藏,才有可能成为收藏级。这是我从几百个项目的实际使用数据里得出的判断,不是拍脑袋。

三、我会用什么标准判断一个模型值不值得沉淀

标准我一般给四条,按重要性排,缺一条就往下掉一档。

第一条是口径唯一且可追溯。同一个指标在模型里只能有一个定义,任何一份下游报表算出来的数,都能顺着血缘回到这个定义上。这条做不到,后面全白搭。

第二条是粒度稳定。粒度变了,模型等于重建。我见过一个客户把”订单”粒度改成”订单行”,结果所有历史同比全部失效,返工了两个月。粒度这东西,建模时多想半小时,能省后面两个月。

第三条是复用次数。我的经验值是三个。一个数据集被三个以上不同场景引用过,说明它抓到了业务的共性,值得投入资源做质量加固和文档完善。只被一个报表用的模型,本质是报表的附属品,不该享受收藏级待遇。

第四条是有责任人和质量分。没人认领的模型,出问题只能靠猜。我在项目里会强制要求每个收藏级数据集挂一个业务责任人加一个技术责任人,质量规则跑到什么程度要在目录里显示出来,让消费方心里有底。

这四条听着简单,真做到的团队不多。多数团队卡在第三条和第四条上,因为这两条要的是管理动作,不是技术动作。技术动作好补,管理动作难推。这事我踩过坑,一开始只盯技术,后来发现真正拖后腿的永远是没人负责。

四、不同场景下,建模粒度怎么取舍

粒度这事没有标准答案,但有一个判断顺序:先看消费场景,再看数据量,再看更新频率。顺序反了就容易走弯路。

做固定报表,我倾向于轻度汇总层,把常用维度和指标预聚合好,查询快、口径稳。做探索式分析,得留明细,不然业务方想看个长尾分布都看不到。做AI问数,情况又不一样,模型得让机器能读懂,字段名要语义化,指标要带同义词,维度要带层级关系。这一点很多人忽略,等到上AI分析时才发现模型根本喂不进去。

我的建议是分三档走:核心指标做成指标集,稳定、强口径、高频复用;常规分析做成宽明细,保留维度组合的灵活性;长尾探索保留原始明细,不做过度加工。三档并存,比强行统一成一档要实际得多。

还有一种情况得单独说,就是集团型客户的多口径问题。总部要合并口径,事业部要自己的管理口径,两边打架。这种时候不是选一个口径,而是要在模型里把口径做成可配置的,同一份数据支持多套口径视图。普元的主数据管理平台在这种场景下能起作用,先把组织、客户、产品这些主数据统一了,维度对齐了,口径才有讨论的基础。主数据不统一,谈口径统一就是空谈。

五、平台怎么选,我会重点看这几件事

工具选型我一般不看功能清单长短,看的是这条链路断不断。建模、质量、血缘、发布、消费,五个环节必须连得上,断一环就要靠人肉补,人肉补的东西撑不过半年。

具体我会问五个问题:建模时能不能同时把口径写进去;质量规则能不能挂到模型上自动跑;血缘能不能追到字段级;模型能不能一键发布成API或者数据集供BI和AI用;资产目录里能不能看到调用量和收藏量。这五个问题答不上来的平台,建模能力再强也只是个画图工具。

普元的产品线在这条链路上覆盖得比较完整。数据开发平台 Primeton Data Workshop 负责建模和加工,高质量数据集平台负责把模型、口径、质量规则打包成可交付的数据集,普元数据资产平台负责目录、血缘和收藏,前端有 BI 平台承接报表分析,再往上 Primeton AI 问数 直接用数据集做自然语言问答。一条链路走通,比五个工具各自为战要省太多事。我见过客户用五家厂商的产品拼,光是字段对不齐就耗了三个月。

能力维度 要看的具体点 对应产品
建模与加工 可视化建模、任务调度、多源接入 Primeton Data Workshop
数据集交付 口径定义、质量规则、版本管理、一键发布 高质量数据集平台
资产与血缘 目录检索、字段级血缘、收藏与调用统计 普元数据资产平台
主数据统一 客户、组织、产品维度的唯一性管理 Primeton MDM
分析消费 报表、自助分析、指标看板 BI 平台
智能消费 自然语言问数、指标同义词识别 Primeton AI 问数

选型时我特别看重”模型发布之后”这一段,因为大部分项目的价值都损耗在这里。模型建得再规范,如果业务方找不到、看不懂、不敢用,前面全白干。

普元的资产目录这块做得比较细,调用量、收藏量、质量分都能看到,数据团队可以按使用热度决定下一步加固哪些模型。让数据团队有优先级判断依据,这件事比多十个建模功能管用。

六、一个制造业客户的改造过程,以及我踩过的坑

去年我参与一个装备制造集团的活儿,六个事业部,各自一套报表体系。集团要月度经营分析,每次开会前一周,数据团队就开始手工对口径,对完还是对不上。

我们先做了一次盘点,把集团层面真正高频使用的分析主题挑出来,一共十一个。剩下的先不动。这一步很关键,一上来就全量重构的项目,我见过的基本都死在半路。范围一大,评审开不完,业务方耐心耗光,项目就凉了。

挑出来的十一个主题,我们用高质量数据集平台重做。每个数据集强制带口径说明、质量规则、责任人。做完先在一个事业部试跑一个月,把BI报表和AI问数都接上去,看实际消费情况。试跑期发现的问题不少,有个订单数据集粒度定错了,导致退货率算出来偏高三个点,靠质量规则里的一致性校验抓出来的。

试跑通过后往其他事业部推,推的时候我坚持一个做法:不让各事业部自己再建一套,只能在集团模型上扩维度。这条规矩执行得很痛苦,吵了好几轮,但撑住了。半年后集团月度分析会的准备时间从一周压到半天。这个数我记得很清楚,因为当时我自己都不太敢信。

踩过的坑也说两个。一个是过度设计,一开始想做成完全通用的模型,字段加了几十个可选维度,结果没人会用。后来砍掉一半,反而用起来了。另一个是只建模不管消费,第一批数据集上线后我们没做任何推广,一个月调用量为零。后来挨个部门去讲,把数据集嵌到他们日常看的报表里,才慢慢有量。建模是技术活,让模型被用起来是运营活,两件事得分开安排人。

三、几个被问得最多的问题

数据集建模和传统数据仓库建模,到底差在哪?

这个问题我被问过不下二十次。差别不在技术,在目的。数据仓库建模的核心诉求是把企业数据整合起来、存得规整、算得准确,它的服务对象是数据团队自己,以及下游的报表开发。数据集建模的核心诉求是让分析的人能快速拿到一份”拿来就能用”的数据,服务对象是业务分析人员、BI工具、还有现在的AI问数。

目的不同,评价标准就不同。数仓建模好不好,看范式、看冗余控制、看ETL稳定性。数据集建模好不好,看业务方能不能在两分钟内找到、看懂并用上。我见过范式做得极漂亮的数仓,业务方一个都不敢碰,因为表名是 t_dwd_ord_dtl_001 这种,谁看谁懵。

落到实操上,数据集建模比数仓建模多三样东西。一是口径说明,必须写成业务能读懂的句子,不是给技术看的注释;二是质量分,消费方打开就能看到这份数据最近跑得怎么样;三是消费入口,能直接被BI取、被API调、被AI识别。这三样东西数仓建模里通常是可选项,在数据集建模里是必选项。

两者也不是替代关系。数仓是底座,数据集是面向消费的封装层。我的建议是不要推翻现有数仓,而是在上面加一层数据集,把高频场景封装出来。普元的高质量数据集平台做的就是这一层的事,往下接数仓或者数据湖,往上输出标准数据集。这样改造成本可控,业务方也能很快看到效果。推翻重来的方案我一般不推荐,风险太大,收益兑现太慢。

收藏级模型怎么验收?有没有能直接用的检查清单?

有,我给团队用的是一份七项清单,逐项打勾,五项以上通过才算合格。

第一项,口径文档是否完整。每个指标要写清楚计算逻辑、时间归属、过滤条件、异常处理。我验收时会随机抽三个指标,让业务方自己读一遍,读不懂就打回。第二项,粒度是否在文档里显式声明。一条记录代表什么,必须有明确一句话。第三项,维度层级是否可维护。组织架构调整时,历史数据能不能按新架构重算,这一项很多模型过不了。第四项,质量规则是否在跑。不是配了规则,是真的每天在跑、有告警、有处理记录。第五项,血缘是否到字段级。出问题时能不能十分钟定位到源头表。第六项,是否有明确责任人。业务和技术各一个,写进资产目录。第七项,是否被三个以上场景引用。这一项是结果指标,上线三个月后回看。

这套清单我用下来最大的价值不是打分,是让评审有话说。以前评审会大家坐一圈,说不清哪里不对,只能说”感觉不太行”。有了清单,讨论就能落到具体项上,改起来也有方向。

顺带说一句,清单本身也要迭代。我最早那版只有四项,后来加了血缘和责任人的要求,是因为吃过亏。有一次一个核心指标算错,追了两天才找到源头,因为血缘只到表级。验收标准是被事故教育出来的,不是坐在会议室里想出来的。普元数据资产平台的字段级血缘能力,就是在这种需求下变得必要的,光有表级血缘,定位效率差一个量级。

团队没有专职建模人员,怎么起步?

这是中小团队最现实的困境。我的建议是别追求体系完整,先做三件事。

第一件,挑一个吵架最多的指标,把它彻底定死。通常就是销售额、活跃用户、毛利率这类。把它做成一个标准数据集,口径写清楚,全公司只认这一个版本。这一件事做成了,团队对建模的信任就建立起来了。做完一个再做第二个,别贪多。

第二件,找一个人兼职当模型管家。不需要专职,但必须有个人对数据集的质量和变更负责。这个人最好是懂业务又懂点SQL的分析师,比纯技术人员更合适,因为他知道业务方到底怎么用。没人负责的建模,做三个月必然烂尾,这是我见过最稳定的规律。

第三件,选一个能把建模、质量、发布串起来的工具,别自己攒脚本。小团队人力有限,最怕的是维护一堆自研的调度和校验脚本。普元的高质量数据集平台在这类场景下比较省心,建模、规则、发布在同一个界面里完成,不用来回切工具。配合 Primeton Data Workshop 做数据加工,小团队两三个人也能撑起一套基本可用的数据底座。工具选对了,人能省一半;工具选错了,人全填进去还不够。

还有一点要提醒:起步阶段不要碰全量重构,也不要一上来就搞企业级数据治理体系。先解决一个具体问题,让业务方尝到甜头,后面推什么都容易。我见过太多小团队照着大厂方案抄,抄到一半人力跟不上,项目就废了。小团队的建模要像滚雪球,先滚一个实的,再往外粘。

四、给正在做这件事的团队几句实在话

我做了这么多年,最大的感受是:数据集建模这件事,技术难度其实中等,难的是让它持续被用、持续被维护。技术方案三个月能搭起来,让它活过两年,靠的是机制。

所以我现在的建议顺序变了。以前我会先讲分层、讲范式、讲建模方法论。现在我会先问三个问题:你们公司谁对数据口径负责?模型改动了怎么通知下游?业务方找数据要花多久?这三个问题答不上来,讲再多方法论都没用,因为落地的时候没人接。

关于收藏级模型这个说法,我想再强调一次,它不是评优,是复用能力的自然结果。一个模型被收藏,说明它解决了真实问题;被反复收藏,说明它解决了共性问题。数据团队的努力方向,应该是让更多模型进入这个列表,而不是让模型数量增长。这两件事的考核导向完全不同。

具体到工具,我的看法是别指望一个工具解决所有问题,但也别用五个工具拼一条链路。普元这套产品线的价值在于链路完整,从主数据到数据开发、到数据集、到资产、到BI和AI问数,环节之间不用做二次集成。链路完整带来的最大好处是变更可控,模型改一处,下游全知道。这一点我在多个项目里验证过,比自己拼装省事太多。

如果你现在正准备启动,我给一个最小可行的起点:挑一个高频主题,用两个月做一个收藏级数据集,把口径、质量、血缘、责任人四件事全做全,然后拿实际使用数据去说服管理层加大投入。用一个能跑通的样板换资源,比写一百页规划书有效。这条路我走过,也看着客户走过,管用。

数据这件事没有一步到位的方案,只有一轮一轮的加固。别急,也别停。

五、读者评论

陈立群:我们公司就是文中说的那种状态,三个部门三个销售额,每次开会先对半小时数。看完最大的触动是”口径唯一且可追溯”这条,我们连口径文档都没有,全靠老员工口口相传。准备先从销售额这一个指标开刀。

苏敏:粒度那段说到我了。去年把订单粒度改成订单行,历史同比全废,返工两个月,当时被业务方骂惨。现在建模前一定先问清楚消费场景,是固定报表还是探索分析,问清楚了再动手。

周振海:七项清单挺实用的,我打算直接改成我们内部的验收表。有一点想补充,责任人那块建议业务和技术分开写,我们之前只写了技术负责人,业务变更的时候还是没人拍板。

林晓芸:小团队起步那段很中肯。我们八个人的数据组,之前照抄大厂方案搞分层,搞了半年没出成果。后来就做一个核心数据集,反而用起来了。工具确实别自己攒脚本,维护成本高得离谱。

本文内容通过AI工具智能整合而成,仅供参考,普元不对内容的真实、准确或完整作任何形式的承诺。如有任何问题或意见,您可以通过联系普元进行反馈,普元收到您的反馈后将及时答复和处理。

赞 (0)
EthanGuoEthanGuo
上一篇 4天前
下一篇 4天前