数据仓库有坑怎么办,如何从0到1来填坑

来源:晓阳的数据小站 晓阳的数据小站 日期:2021-07-07

本文转载自微信公众号「晓阳的数据小站」,作者晓阳的数据小站。转载本文请联系晓阳的数据小站公众号。

0x00 什么是数据仓库的坑

“填坑”是一个新人刚加入团队,或者是接手一个新业务,所以经常需要面对的事情。

“坑”的出现,与历史业务的发展,密切相关。通常体现在:业务快速变动、人员快速流动、系统化建设能力弱、强行上马面子工程等情况。虽然数据开发人员能够意识到数据仓库规范性的重要,但迫于日常的数据开发压力,往往只能匆忙的制订一份规范,在实际开发过过程中,往往又无法完全照搬落实,因此形成了一个“不成熟”的数据仓库体系。

这种数据仓库体系,最典型的特征,是找数据只能给表,无法通过规范自主查找;看逻辑只能问人,无法通过模型设计快速了解;问业务只能靠求,别人管不过来自己的事情了,哪有时间来管你?

但是!我们不能坐以待毙,面对“理想”与“现实”的差距,我们必须有一套成熟的应对方法,才能在纷乱的业务中,找到不变的哪条主线。

“对标!对标!再对标!”只有标杆有了,做事才能有章法,数据才能不错误。

0x01 理想的数据仓库是什么样子

这个标杆是什么?就是一个理想的数据仓库模板。

做过数据仓库的通过,基本上都了解,一个数据仓库从0到1的过程中,会经过三个阶段:

  • 第一个阶段:简单报表 + 数据库阶段;
  • 第二个阶段:数据集市 + 产品功能阶段;
  • 第三个阶段:数据仓库 + 主题划分阶段。

而相对成熟的数据仓库,则有如下几个发展的方向:

  • 数据产品,通过产品化方式来辅助决策,服务业务方;
  • 数据运营,革新公司的运作方式,通过数据来运营业务,常见于电商行业;
  • 实时数仓,通过前沿的数据技术,来革新数据使用方式,带来技术竞争力;
  • 数据分析,通过配合分析师,贴近业务并发现问题,指导产品或业务迭代;
  • 数据挖掘,通过算法的力量,来给业务带来智能化的色彩。

具体每个阶段就不展开描述了,但我们可以比较清楚的看出来,数据仓库是业务从混沌走向数字化的关键环节,是承上启下的枢纽,虽说没有数据仓库同样能够进行启下的工作,但是其投入与产出终会因投入产出不成正比而无法持续的进行下去。

数据仓库的建设,是一项系统化的工程,但核心点就在三处:

第一处,规范层,比如表命名规范、刷新策略规范、数据存储生命周期、字段命名规范、指标命名规范、时间维度规范、SQL编码规范,等等,旧的业务可以不改造,但新的业务必须按照新的规范来。

第二处,主题域,也可以根据主题域,再细分为数据域,当前很多大公司普遍开展比较广的业务范围,仅电商就包括B2C、C2C、B2B、B2B2C等多种不同的业务模式,每种模式都具有自己的特点。同时,ToB的企业服务市场也正在蓬勃发展,因此企业级市场又面临人力、行政、法务、场地、财务等多种不同的主题组合,因此找公司业务负责人聊一聊,先把公司的业务范围是什么、系统有哪些、数据库有多少分类、数据同步的方式如何,这些关键因素搞清楚,主题域才能够做到合理划分,避免后续大规模大范围的调整。

第三处,数据分层规范,通常情况下,数据是分为ODS/DWD/DWS/ADS四层,一致性维度放在DIM中。这里再强调一下各层不同的地方。

ODS:源系统数据接入的地方,也是数据仓库沉淀数据的核心,通常只存储、不改造;

DWD:数据明细层,可以遵循三范式关系模型,也可以按照维度建模针对事实表做设计,对生产数据进行各种经营分析口径的加工转换;

DWS:数据汇总层,主要是为了日常运营中快速反映各业务部门的数据需求,建立各种数据模型,对明细类数据进行分主题、分维度的聚合汇总;

ADS:数据出口层,面向需求做设计,是支撑需求和应用的数据重要出口,针对诸如行列转换、数据剪裁、数据加密等实际的业务场景;

DIM:一致性维度,不再赘述。

以上是一个理想数据仓库的“雏形”。

0x02 我们有哪些方法来填坑

我们识别出了业务的问题,也有了建设的目标,下一步就是找策略、讲打法的阶段了。

首先,针对数据仓库的改造,要有一套清晰的主线逻辑,大致包括如下几个部分:

  • 识别环境:包括外部环境和企业内部资产;
  • 寻找问题:发现并标记当前业务中存在的问题;
  • 整理业务:找熟悉公司业务的人,整理业务大图;
  • 制定标准:按照理想数据仓库的规范,整理团队自己的标准;
  • 建立流程:将日常的开发行为,不断的与规范进行对焦;
  • 执行落地:通过监控、CodeReview等方法,强力落地;
  • 总结思考:阶段性的总结问题,并进行改进。
    A+
声明:本文转载自其它媒体,转载目的在于传递更多信息,并不代表赞同其观点和对其真实性负责。