当前位置 : 主页 > 编程语言 > java >

数据中台实战(00)-大数据的尽头是数据中台吗?

来源:互联网 收集:自由互联 发布时间:2023-10-10
除了支撑集团的大数据建设,团队还提供To B服务,因此我也有机会接触到一些正在做数字化转型的传统企业。从2018年末开始,原先市场上各种关于大数据平台的招标突然不见了,取而

除了支撑集团的大数据建设,团队还提供To B服务,因此我也有机会接触到一些正在做数字化转型的传统企业。从2018年末开始,原先市场上各种关于大数据平台的招标突然不见了,取而代之的是数据中台项目,建设数据中台俨然成为传统企业数字化转型的首选,甚至不少大数据领域的专家都认为,数据中台是大数据下一站。

为啥数据中台是大数据的下站?与数仓、数据湖、大数据平台啥区别?来深入大数据发展史,先从数仓出现讲起,途径数据湖,再到大数据平台,这样才能理解大数据发展的每阶段的问题,深入理解数据中台在大数据发展中的历史定位。

1 数据仓库

商业智能(Business Intelligence,BI)诞生在1990s,将企业已有数据转化为知识,帮企业经营分析决策。如零售行业门店管理,如何使单门店利润max,就要分析每个商品的销售数据和库存信息,为每个商品制定销售采购计划:

  • 有的商品存在滞销,应该降价促销
  • 有的商品比较畅销,要根据对未来销售数据的预测,提前采购

都离不开大量数据分析。

而数据分析需聚合多个业务系统的数据,如集成交易系统、仓储系统的数据,同时需保存历史数据,进行大数据量的范围查询。传统DB面向单一业务系统,主要实现面向事务的增删改查,已不满足数分场景,于是催生数据仓库。

1991年出版的《Building the Data Warehouse》中,数据仓库之父比尔·恩门(Bill Inmon)首次给出数据仓库完整定义:

数据仓库是在企业管理和决策中面向主题的、集成的、与时间相关的,不可修改的数据集合。

1.1 深入理解数据仓库四要素-电商案例

电商有:

  • DB专门存放订单数据
  • 另一DB存放会员相关数据
构建数仓

先要把不同业务系统的数据同步到一个统一的数仓,然后按主题域方式组织数据。

image-20230926171735601

1.1.1 主题域

业务过程的一个高层抽象,像商品、交易、用户、流量都能作为一个主题域,可理解为数仓的一个目录。数仓中的数据一般按时间进行分区存放,一般保留5年以上,每个时间分区内的数据追加写,对某条记录不可更新。

1.1.2 设计方法

他和金博尔(Kimball) 共同开创的数仓建模的设计方法,对后来基于数据湖的现代数仓设计有重要意义。

自顶向下

恩门的建模方法,顶指数据来源,在传统数仓就是各业务DB。

基于业务中各实体及实体之间的关系,构建数仓。

如买家购买商品,先要理清业务过程涉及的实体。

买家、商品是一个实体,买家购买商品是一个关系。得到如下模型:

买家表:

商品表:

image-20230927093453021

买家商品交易表:

image-20230927093627617

自底向上

金博尔建模与恩门正相反,从数据分析的需求出发,拆分维度和事实:

  • 用户、商品就是维度
  • 库存、用户账户余额是事实

对应刚才完全一样的表,分别叫:

  • 用户维度表
  • 商品维度表
  • 账户余额事实表
  • 商品库存事实表
对比
  • 恩门建模从数据源开始构建,构建成本较高,适用应用场景较固定的业务,如金融领域,冗余数据少是优势

  • 金博尔建模从分析场景出发,适用变化速度较快的业务,如互联网业务。现在业务变化都快,更推荐金博尔建模法

传统数仓,第一次明确数分的应用场景应该用单独的解决方案去实现,不再依赖业务DB。模型设计上,提出数仓模型设计的方法论,为后来数分的大规模应用奠定基础。但互联网时代后,传统数仓没落,互联网技术催生大数据时代。

2 从Hadoop到数据湖

进入互联网的

2.1 重大变化

数据规模空前

一个成功的互联网产品日活过亿,抖音每天产生几千亿用户行为。传统数仓难扩展,无法承载如此规模海量数据

数据类型变得异构化

互联网数据来自:

  • 业务DB结构化数据
  • App、Web前端埋点数据或业务后端埋点日志,这些数据一般是半结构化甚至无结构。传统数仓对数据模型有严格要求,在数据导入数仓前,数据模型须事先定义好,数据须按模型设计存储

所以,数据规模和数据类型的限制,导致传统数仓无法支撑互联网BI。

谷歌互联网巨头率先开始探索,2003年开始,先后发表论文:

  • 《The Google File System》
  • 《MapReduce:Simplified Data Processing on Large Clusters》
  • 《Bigtable:A Distributed Storage System for Structed Data》

奠定现代大数据技术基础。提出新的,面向数分的海量异构数据的统一计算、存储方法。

2005年Hadoop出现,大数据技术才普及。Hadoop是论文的开源实现

2.2 Hadoop V.S 传统数仓

  • 完全分布式,易扩展,可用价格低廉机器堆出计算、存储能力强的集群,满足海量数据处理要求
  • 弱化数据格式,数据被集成到Hadoop后,可不保留任何数据格式,数据模型与数据存储分离,数据在被使用的时候,可按不同模型读取,满足异构数据灵活分析需求

随Hadoop成熟,2010年,Pentaho创始人兼CTO James Dixon在Hadoop World大会提出

2.3 数据湖(Data Lake)

以原始格式存储数据的存储库或系统。数据湖是Hadoop从开源走向商业化成熟的标志。企业可基于Hadoop构建数据湖,将数据作为企业核心资产。

但一个商用Hadoop包含20多种计算引擎, 数据研发流程多,技术门槛限制Hadoop商用化。如何让数据加工像工厂,直接在设备流水线完成?

3 数据工厂:大数据平台

3.1 数据开发流程

  • 先将数据导入大数据平台
  • 再按需求进行数据开发
  • 开发完成后,数据验证比对,确认是否符合预期
  • 把数据发布上线,提交调度
  • 日常任务运维,确保任务每日能够正常产出数据

若无高效平台,就跟写代码没有IDE,别人完成十个需求,你一个需求都完成不了。

大数据平台就是为提高数据研发效率,降低数据研发门槛,让数据在一个设备流水线快速完成加工。

大数据平台面向数据研发场景,覆盖数据研发的完整链路的数据工作台

3.2 大数据平台使用场景

  • 数据集成
  • 数据开发
  • 数据测试
  • 发布上线
  • 任务运维

大数据平台使用对象是数据开发。大数据平台底层以Hadoop为代表的基础设施,分为计算、资源调度和存储。

3.3 大数据计算引擎

  • Hive、Spark 解决离线数据清洗、加工,Spark用得越来越多,性能要比Hive 高不少
  • Flink解决实时计算
  • Impala解决交互式查询

这些计算引擎统一运行在Yarn,Yarn来分配计算资源。也有基于k8s实现资源调度,如Spark版本(2.4.4)能运行在k8s管理的集群,可实现在线和离线的资源混合部署,节省机器成本。

3.4 数据存储

  • HDFS 不可更新,主要存全量数据
  • HBase提供了一个可更新的KV,主要存一些维度表
  • ck/Kudu 提供实时更新,一般用在实时数仓的构建场景中

大数据平台像一条设备流水线,经过大数据平台的加工,原始数据变成了指标,出现在各个报表或者数据产品中。随着数据需求的快速增长,报表、指标、数据模型越来越多,找不到数据,数据不好用,数据需求响应速度慢等问题日益尖锐,成为阻塞数据产生价值的绊脚石。

4 数据中台(数据价值)

2016年前后,互联网高速发展,对数据需求越来越多,数据应用场景也越来越多,大量数据产品进入运营日常工作,成为运营工作。电商业务有供应链系统,会根据各个商品的毛利、库存、销售数据以及商品的舆情,产生商品的补货决策,然后推送给采购系统。

4.1 大规模数据的应用暴露问题 - 数据割裂

不敢用数据

业务发展前期,为快速实现业务,烟囱式开发导致企业不同业务线,甚至相同业务线不同应用数据都割裂。两个数据应用的相同指标,展示结果不一致,导致运营对数据信任度下降。如你是运营,当你想看一下商品的销售额,发现两个报表都叫销售额的指标出现两值,第一反应数据算错,不敢用这数据。

大量重复计算、开发

导致的研发效率的浪费,计算、存储资源的浪费,大数据的应用成本越来越高。

  • 运营想要一个数据时,开发说至少一周,能不能快?
  • 数据开发面对大量需求,抱怨需求太多,干不完
  • 老板看到每月账单成指数级增长,觉得这也太贵,能不能再省

这些问题根源是

4.2 数据无法共享

2016年,阿里巴巴提“数据中台”。数据中台的核心,是避免数据的重复计算,通过数据服务化,提高数据的共享能力,赋能数据应用。

  • 之前,数据是要啥没啥,中间数据难于共享,无法积累
  • 建设数据中台之后,要啥有啥,数据应用的研发速度不再受限于数据开发的速度,一夜就可根据场景,孵化出很多数据应用,这些应用让数据产生价值

5 总结

  1. 数据中台构建于数据湖之上,具备数据湖异构数据统一计算、存储的能力,同时让数据湖中杂乱的数据通过规范化的方式管理起来。
  2. 数据中台需要依赖大数据平台,大数据平台完成了数据研发的全流程覆盖,数据中台增加了数据治理和数据服务化的内容。
  3. 数据中台借鉴了传统数据仓库面向主题域的数据组织模式,基于维度建模的理论,构建统一的数据公共层。

数据中台:

  • 吸收传统数仓、数据湖、大数据平台优势
  • 又解决数据共享的难题,通过数据应用,实现数据价值落地
【转自:美国多ip服务器 http://www.558idc.com/mgzq.html 欢迎留下您的宝贵建议】
上一篇:git 将本地分支与远程master主分支合并
下一篇:没有了
网友评论