3、数据目录核心功能:资产搜索与发现、数据血缘追踪、数据质量评估、数据权限管理

数据目录这东西,说白了就是企业数据资产的「导航地图」。你想想看,一个几千张表、几万个字段的数据平台,如果没有目录,找数据就跟大海捞针一样。我这些年做数据治理,见过太多团队把时间花在「找数据」上,而不是「用数据」上。

今天咱们就聊聊数据目录的四个核心功能。嗯,这四个功能缺一个,目录的价值就打折扣了。

3.1 资产搜索与发现:让数据「找得到」

这是数据目录最基础、也最直观的功能。用户进来第一件事就是搜表、搜字段、搜指标。我习惯把搜索能力分成三个层次:

层次 能力描述 我踩过的坑
基础搜索 按表名、字段名、描述关键词匹配 只做精确匹配,用户搜「用户」找不到「user」
语义搜索 理解同义词、近义词、业务术语 没做分词,搜「订单金额」找不到「交易额」
智能推荐 基于用户行为、数据热度、血缘关系推荐 推荐逻辑太简单,总推一些没人用的表
我的建议:搜索功能上线前,先找业务方做一轮「关键词测试」。把业务人员常用的词收集起来,建一个同义词库。我曾经在一个项目中,光同义词库就整理了 2000 多个词条,搜索命中率从 40% 直接飙到 85%。

除了搜索,数据目录还应该支持「浏览式发现」。比如按数据域、按业务板块、按数据源类型层层下钻。我见过做得好的目录,用户就像逛超市一样,顺着分类就能找到想要的数据。

3.2 数据血缘追踪:让数据「说得清」

数据血缘,就是数据的「族谱」。从源系统到数据仓库,再到报表和模型,每一步的流转关系都要能追溯。为什么需要这个?

  • 问题排查:报表数据对不上,顺着血缘往上查,看是哪个环节出了问题
  • 影响分析:要改一个源表字段,先看下游有哪些表、哪些报表会受影响
  • 合规审计:监管问你这个数据从哪来的,你得能说清楚

我参与过一个项目,业务方说「这个报表的销售额不对」。我们顺着血缘一路查下去,发现是 ETL 脚本里有个 join 条件写错了,把一部分订单给过滤掉了。如果没有血缘,这种问题可能要排查好几天。

血缘追踪的核心要素:

  • 字段级血缘:不只是表到表,要精确到字段到字段
  • 转换逻辑:记录每一步的 SQL 或脚本逻辑
  • 时间戳:记录血缘关系的生效时间和变更时间

下面这张图展示了数据血缘的基本流转关系:

数据血缘追踪示例 源系统 A 源系统 B ETL 清洗层 数据仓库 报表系统 说明: 字段级血缘会记录每个字段的源头、转换函数和过滤条件。 例如:报表中的「订单金额」= 源系统A.订单表.金额 × 汇率(来自源系统B.汇率表)
注意:血缘追踪的粒度很重要。表级血缘只能告诉你「这张表依赖哪些表」,但字段级血缘才能告诉你「这个字段是怎么算出来的」。我建议一开始就做字段级,后面补成本很高。

3.3 数据质量评估:让数据「信得过」

数据质量是数据目录的「体检报告」。用户找到数据了,也看到血缘了,但数据到底能不能用?质量怎么样?

我习惯把数据质量评估分成六个维度:

维度 定义 常见检查项
完整性 数据是否有缺失 空值率、必填字段检查
准确性 数据是否真实反映业务 与源系统对账、业务规则校验
一致性 不同系统间数据是否一致 跨表关联校验、汇总数据比对
及时性 数据是否在预期时间内可用 调度延迟监控、数据新鲜度检查
唯一性 数据是否有重复 主键唯一性检查、重复记录检测
规范性 数据格式是否符合标准 日期格式、编码规范、长度限制

数据目录应该把质量评估结果直接展示在资产详情页上。比如一张表旁边有个「质量评分」:85 分。点进去能看到具体哪个字段扣了分、什么原因。

避坑指南:我曾经在一个项目中,把所有质量规则都设成「告警级别」,结果一天收到几百条告警,运维团队直接无视了。后来我们改成「分级告警」:严重问题发钉钉,一般问题发邮件,轻微问题只记录。告警处理率从 10% 提升到 80%。

3.4 数据权限管理:让数据「用得起」

权限管理是数据目录的「门禁系统」。谁可以看什么数据?谁可以下载?谁可以修改?这些都得管起来。

我见过最混乱的情况:一个数据平台上,所有开发人员都有生产库的读写权限。结果有人误操作,把一张核心表给 truncate 了。嗯,那场面,真是惨不忍睹。

数据目录的权限管理,我建议至少做到这几点:

  • 细粒度权限:不只是表级别,要支持字段级别、行级别。比如「销售金额」这个字段,普通员工只能看脱敏后的值,经理才能看原始值
  • 基于角色的权限:按角色分配权限,而不是按人。人多了根本管不过来
  • 权限申请流程:用户申请权限,审批通过后自动生效。流程要可追溯
  • 权限审计:定期检查权限是否合理,有没有「僵尸权限」

权限模型示例:

角色层级:
├── 数据管理员:所有权限,包括元数据修改
├── 数据开发者:读写权限,可创建临时表
├── 数据分析师:只读权限,可查询和导出
└── 业务用户:只读权限,只能看脱敏数据

权限管理还有一个容易被忽略的点:数据脱敏。比如身份证号、手机号、银行卡号,这些敏感信息在查询时应该自动脱敏。我建议在数据目录层面做统一的脱敏策略,而不是让每个应用自己实现。

特别提醒:权限管理不是「一劳永逸」的事。人员变动、业务调整、数据迁移,都会影响权限配置。我建议每季度做一次权限审计,把长期不用的账号、不合理的权限清理掉。我曾经在一个客户那里发现,有 30% 的账号是离职员工的,权限还都开着。

这四个功能,说白了就是让数据「找得到、说得清、信得过、用得起」。它们不是孤立的,而是相互配合的。搜索发现让你找到数据,血缘追踪让你理解数据,质量评估让你信任数据,权限管理让你安全地使用数据。嗯,这才是数据目录该有的样子。