Hi 大家好,我是大樊,一枚热爱数据的,具有8年开发经验的程序猿,目前就职于一家中型互联网公司,主要负责部门内的数据仓库建设,历经多年时间,从0到1建设了整个部门的数据规范化流程和配套的仓库管理工具体系,也沉淀了很多的实战经验,在这里分享给大家。
说到数据仓库,大家一定不陌生,它的官方介绍:是一个面向主题的、集成的、相对稳定的数据集合,用于支持管理决策目的而创建的,我们在生产环境中一般会将数据导入到数仓,然后进行我们的业务数据流程的研发,最后输出最终数据来指导我们的企业决策,帮助企业进行运营。
那再说说我们进行数据仓库建设的背景,我们为什么要进行数据仓库的建设?当时企业内的数据仓库有哪些核心的痛点呢?总结起来有以下几个方面:
1.数据缺乏规范性,数据不统一和重复建设的现象严重
由于缺乏规范化定义与强制措施,导致数据表多,数据重复建设现象非常严重:当时的情况是:各个业务线可以自主随意创建表,且各个业务线之间信息孤立,相互都不知道对方建立了什么表,内部开发人员按照自己的认知对已经存在的表由底层开始创建(即烟囱式开发),这样导致各个数据流程孤立,整个数据体系臃肿庞大;
2.数据指标膨胀和口径定义模糊
仓库需要承接大量的来自于不同需求方的数据统计需求,由于缺乏数据指标规范,很容易导致数据指标膨胀和定义口径模糊,给数据使用方在使用数据时带来歧义和混乱;
3.数据字典和数据地图不完整(元数据覆盖率低达1.3%)
由于规范缺乏强制措施,同时数据进入数据仓库的方式也多种多样,开发人员创建表时候无注释等等,导致数据字典不完整;
4.数据定位困难,研发效能低下
由于前述2种原因,导致业务线研发人员在数据研发时不容易快速定位到所需要的数据,开发数据流程总是从底层向上建设,导致研发效能的低下;
5.缺乏系统化工具体系来提效
研发人员在进行数据开发时,不仅需要熟悉业务知识,还需要熟悉数据开发流程所涉及到的底层技术细节,这些都给研发过程带来了较高的成本和门槛,不利于快速有效的支持数据化运营。
基于以上的痛点,并且进行了大量调研,确立了我们的目标:
在部门原有数据仓库的基础上进行升级,来提升数库治理能力,保障数据口径的规范和统一,建设数据全面(全),数据规范统一(统),数据打通(通)的商业数据仓库:
1.数据全面:将数据入口统一管理,控制数据源头,覆盖所有分析主题。
2.数据规范:强制实施数据规范,解决数据不规范带来的一系列问题。
3.数据融通:通过宽表和公共数据表实现数据的共享和打通,最大限度减少数据重复建设。
4.高效赋能:通过工具和平台固化和强制规范,为数据研发和数据的获取查询提供更好的功能和性能支撑,高效赋能业务;
本专栏提供了从痛点通往目标的桥梁,是经过了完整验证的企业级可落地执行方案,若你是一名企业数据管理者,存在和我司类似的痛点,想要达到相同的目标,却又不知道如何下手,相信我的专栏可以帮助你有效建立高效开发规范化的数据体系,最终达到数据快速赋能业务,让数据快速指导业务决策,帮助业务发展的终极目标。
数据仓库的规范化建设是非常复杂的体系,涉及到管理组织体系,数据定义体系,数据开发流程体系和支撑整个体系从方法到实施的工具体系,在本专栏中,我将内容统一切分为两个篇章进行阐述:1.数据规范化建设,2.工具体系建设;事实上在我司进行规范化数据仓库建设落地过程中,也是分为这两个子项目并行去实现的,所有的上层业务数据建设均依赖于底层第1篇的数据规范化建设和第2篇的工具体系建设,在1,2步完成后便能规范化进行上层的业务数据建设,输出到各个数据应用中去;在每个子章节中,我会结合理论和实践一起进行说明,便于大家的理解:
在数据规范化方面,我会结合具体痛点分析,给出具体方案,从管理组织规范,数据定义规范,数据建模规范,研发流程规范,以及规范推进多个方面阐述,结合一些方法来保障建立的规范化会一直持续,而不会因为时间的推进导致规范化失效;
在工具体系建设方面,旨在对数据的规范化进行管理,以及数据开发方面的提效,里面会涉及到如血缘采集分析技术,通用BI系统建设技术等;总体分为5个大的方面:数据开发,数据管理,数据查询,数据服务,数据输出,我会讲到各个模块的作用以及实践;
通过该专栏的学习,你将会有如下收获:
1.企业级标准化数据仓库建设经验;
2.规范化数据建设方法;
3.可落地的工具化技术体系;
这些实践经验的沉淀,是我们数据组同事共同努力的结果,经过大量行业调研,结合我们自身部门业务特点,所形成的具有通用性的解决方案,希望能帮助到大家。最后,有什么问题,欢迎随时留言!~