数仓优劣指标化判断
如何评价数仓的优劣,众说纷纭,其实数仓的优劣评价可以从内部、外部两个方面来评估,也可以从业务角度和技术层面来看。评价的理论很多,实际上我们可通过osm的指标体系来衡量数仓的优劣。
O:数仓优劣判断; S:数据监控、元数据管理、业务流程的理解、预先计算好的中间表或者应用表; M:核心度量指标;
内部的评价标准主要是通过跨层引用率、表引用数、引用链路长度、表命名规范率、表迭代次数、数据泄露率、数据准时率、数据正确率等指标来判断,外部主要通过”三易”来判断,易找、易查、易用,既数据找起来容易,无歧义,数据查询效率高,数据使用安全便捷,质量靠谱,具体可考虑通过以下指标来判断:数据查阅数、数据用户数占比、数据授权人数、数据服务业务数、自助取数平均耗时、自助取数生成平均耗时等。
假设数仓分层分为ods,dwd,dws,dm,ads共5层。
分类 | 指标名 | 指标定义 | 作用 |
内部 |
跨层引用率 |
dws,dm,ads有跨层引用的的表个数和总表数的比例 |
判断数仓是否按照规范进行分层以及数据分层是否合理 |
表引用数 |
表被其他表引用的次数 |
判断表的重要性,如果被引用的次数多,说明这个表服务的应用多,可判断为核心重点表 |
|
引用链路长度 |
生成目标表前串行生成的表个数 |
判断是否生成过多中间结果表,比如ads层的表如果是串行调度,最多5层 |
|
表命名规范率 |
表名的命名按照规则命名的和总表名数的比例 |
判断命名是否规范 |
|
表迭代次数 |
针对单个表的上线次数进行统计 |
判断表的指标定义是否清晰,迭代次数多,说明该表的稳定性有待评估 |
|
数据泄露率 |
统计数据泄露或者安全事故次数与数据提取出的总次数比例 |
判断数据安全体系的完善度 |
|
外部 |
数据准时率 |
表数据按时输出次数与总输出次数的比例 |
评估集群及任务失败情况 |
数据正确率 |
表数据正确输出次数与表输出总次数的比例 |
评估指标定义是否明确,数据质量 |
|
数据查阅数 |
应用层表被用户或者探索的次数 |
评估表的使用情况,是否有意义 |
|
数据用户数占比 |
使用数据用户数和授权用户数比例 |
方便权限管理 |
|
数据授权用户数 |
统计应用表授权的用户数 | ||
数据表服务业务数 |
统计数据表服务的业务数 |
数据表提供的业务方数,评估相关表是否可以下线 |
|
自助取数平均耗时 |
统计用户从探索到提交语句耗时 |
方便评估表是否易于业务理解 |
|
自助取数生成平均耗时 |
统计用户提交语句到数据展示耗时 |
方便评估数据生成效率,集群资源情况 |