1. 业务敏捷 or 数据有序的二选一困境
随着业务数据化的日益深入和大量数据工具的应用,数据驱动型企业收集数据变得更容易、存储数据变得更便宜、分析数据变得更简单,直接催生了业务敏捷自助用数在企业内部的兴起。但由此带来的数据无序增长直接导致了数据架构不可挽回地滑向腐朽深渊,大量的重复数据以及数不尽的数据烟囱成为数据“不好找、不敢用、风险大、成本高”的元凶。
业务敏捷和数据有序代表了数据驱动型业务的两个根本性诉求,即数据需求的交付效率和质量,两者不可偏废,然而现实情况是两者往往无法兼得。我们通常认为数据架构腐坏是研发人员和研发规范的管理问题,招聘优秀的数据架构师,采购或研发优秀的元数据管理平台和指标管理平台,重构一份好的中间层数据,并设定一系列数据研发规范和治理制度就能够轻松解决。然而实际上虽然这些措施短期有一定效果,但是随着业务的迅捷发展,往往老中间层还未完全迁移下线,新中间层就已经开始腐朽。
2. 无序增长的到底是什么数据?
在对多家数据驱动型企业的数据情况进行深入分析后,我们发现,这些快速增长的数据大多集中在轻粒度汇总层和应用层,这些数据由于离业务实际应用很近,大多需求各异,且数据随着业务变化而很快无人问津,这些表通常需要考虑业务使用的友好性和查询性能,因此往往以大宽表以及不同粒度、不同周期的汇总表形式出现。具体而言,分成以下几类:
1、同一逻辑模型拆分存储:因为数据来源不同、研发者不同、消费端对于数据产出时间的要求不同等原因,将原本面向消费侧应该归属一个概念模型的字段拆分到了不同表中去实现。比较典型的有:
- 维度模型场景:研发会员维表,由于数据来源不同、研发者不同、上游数据产出时效不同等原因,将会员基本信息、会员账号信息、资产标签信息、访问标签信息分别放在不同表中。
- 汇总模型场景:研发会员粒度指标,由于数据来源不同、研发者不同、上游数据产出时效不同等原因,将1天交易相关指标、n天交易相关指标(n天表往往基于1天表加工)、1天流量访问相关指标、n天流量访问相关指标分别放在不同表中。
这种方式下,由于缺乏一个统一可执行的拆分规范和标准,数据生产者往往会基于短期业务需求,随意拆分或拼装物理模型、各自按需建设,形成了大量相似表。
而对于数据消费者来说,要想找到或找全的自己需要的数据,需要一张张去查找和理解大量相似物理表,这就导致了沟通和理解成本成倍上升。
<