数据中台学习笔记-原理篇概述最近使⽤鹅⼚的tbds和整套的数据中台产品,通过最近的使⽤和学习,略有些⼼得和体会,所以随笔记录以备学习和共享。⾸先聊⼀下,到底什么是数据中台?如何来建设数据中台?数据中台有哪些应⽤价值?说到数据中台,你肯定不陌⽣,从2018年末开始,它突然在⼤数据圈⼉⾛红。⼤家聊天如果不提中台,好像就落伍了。也正是因为数据中台,⼤数据受到了前所未有的关注。作为⼀个数据⼈,我⾮常⾼兴,也感到责任重⼤,因为⼤家对数据中台寄予了很⼤的期望,把它当作企业数字化转型的⾦钥匙,投⼊了上百万,甚⾄是千万,希望解决企业经营效率的问题。但是我们也看到⼀些企业未能达到预期的结果,⽐如说,指标⼝径不⼀致造成数据不可信;数据经常⽆法按时产出,影响⼯作效率;敏感数据泄露,引发安全危机。最终的结果就是数据不好⽤,⽆法发挥应有的价值。所以有⼈泼冷⽔说:数据中台就是⼀个充满诱惑的陷阱,看上去很美好,但是根本不可能落地成功。那数据中台到底是陷阱?还是⾦钥匙呢?为什么这些项⽬很难成功呢?在我看来,这⾥⾯既有客观原因,⼜有主观原因:客观上讲,数据中台的建设是⼀项系统性⼯程,从组织架构、⽀撑技术到流程规范,既要有宏观的顶层设计,⼜要有强有⼒的落地执⾏,所以对整个团队的要求会⽐较⾼;从主观上讲,这些企业本⾝数据建设经验不⾜,或者还处于⽐较初级的阶段,不知道数据建设中有哪些痛点,更不知道⽤什么样的技术⼿段和管理机制去解决这些问题。数据中台崛起过程深⼊⼤数据的发展历史,先从数据仓库的出现讲起,途径数据湖,再到⼤数据平台,因为这样,你才能理解⼤数据发展的每个阶段遇到的问题,从⽽深⼊理解数据中台在⼤数据发展中的历史定位。启蒙时代:数据仓库的出现商业智能(BusinessIntelligence)诞⽣在上个世纪90年代,它是将企业已有的数据转化为知识,帮助企业做出经营分析决策。⽐如在零售⾏业的门店管理中,如何使得单个门店的利润最⼤化,我们就需要分析每个商品的销售数据和库存信息,为每个商品制定合理的销售采购计划,有的商品存在滞销,应该降价促销,有的商品⽐较畅销,需要根据对未来销售数据的预测,进⾏提前采购,这些都离不开⼤量的数据分析。⽽数据分析需要聚合多个业务系统的数据,⽐如需要集成交易系统的数据,需要集成仓储系统的数据等等,同时需要保存历史数据,进⾏⼤数据量的范围查询。传统数据库⾯向单⼀业务系统,主要实现的是⾯向事务的增删改查,已经不能满⾜数据分析的场景,这促使数据仓库概念的出现。数据仓库之⽗⽐尔·恩门(BillInmon)⾸次给出了数据仓库的完整定义,他认为:数据仓库是在企业管理和决策中⾯向主题的、集成的、与时间相关的,不可修改的数据集合。为了帮你理解数据仓库的四要素,我举个电商的例⼦。在电商场景中,有⼀个数据库专门存放订单的数据,另外⼀个数据库存放会员相关的数据。构建数据仓库,⾸先要把不同业务系统的数据同步到⼀个统⼀的数据仓库中,然后按照主题域⽅式组织数据。主题域是业务过程的⼀个⾼层次的抽象,像商品、交易、⽤户、流量都能作为⼀个主题域,你可以把它理解为数据仓库的⼀个⽬录。数据仓库中的数据⼀般是按照时间进⾏分区存放,⼀般会保留5年以上,每个时间分区内的数据都是追加写的⽅式,对于某条记录是不可更新的。除了这个概念之外,我还要提⼀下他和⾦博尔(Kimball)共同开创的数仓建模的设计⽅法,这个⽅法对于后来基于数据湖的现代数据仓库的设计有重要的意义,所以你有必要了解。恩门提出的建模⽅法⾃顶向下(这⾥的顶是指数据的来源,在传统数据仓库中,就是各个业务数据库),基于业务中各个实体以及实体之间的关系,构建数据仓库。⾦博尔建模与恩门正好相反,是⼀种⾃底向上的模型设计⽅法,从数据分析的需求出发,拆分维度和事实。那么⽤户、商品就是维度,库存、⽤户账户余额是事实。这两种⽅法各有优劣,恩门建模因为是从数据源开始构建,构建成本⽐较⾼,适⽤于应⽤场景⽐较固定的业务,⽐如⾦融领域,冗余数据少是它的优势。⾦博尔建模由于是从分析场景出发,适⽤于变化速度⽐较快的业务,⽐如互联⽹业务。由于...