大数据-数据中台与业务中台

前言

在国内,阿里最早提出了“数据中台”的概念。

2014年,马云率队参观了实力强大的游戏公司supercell,它的成功的游戏产品有很多,其独特优势是能够快速推出新产品,而依靠的就是中台系统(这里其实是组织模式)。

马云深受启发,回到阿里后,便提出了“大中台、小前台”战略:沉淀共享服务,打破系统壁垒,业务快速创新。其中“大中台”包含两部分,一个是业务中台,另一个是数据中台。

Supercell

Supercell(超级细胞),芬兰移动游戏巨头。拥有《部落冲突》、《卡通农场》、《海岛奇兵》、《皇室战争》和《荒野乱斗》等全球热门游戏。

高效“细胞-部落”组织模式

在Supercell,每个独立游戏开发团队,称为“细胞”团队。

这些“细胞”团队多了以后,也会混乱,Supercell引入了“部落”组织,按照产品模块划分成不同组织,比如:用户、积分、社区、基础组件等等,跟“细胞”一样,“部落”也是独立运行的,但是都围绕着一个特定目标建立起来。

Supercell的“部落”,也就是我们熟悉的“中台”,它的作用是将游戏开发过程中公共和通用的游戏素材和算法整合起来,为“细胞”团队提供工作的工具和框架,从而支持好几个“细胞”团队,能够在短时间内开发出一款新的游戏,并鼓励员工充分试错。

2016年6月21日 腾讯将以总金额为86亿美元收购总共占最多约84.3%的Supercell证券。

数据仓库、数据平台和数据中台的区别是什么

image-20221014151841507

概括地说,三者的关键区别有以下几方面:

  1. 数据中台是企业级的逻辑概念,体现企业 D2V(Data to Value)的能力,为业务提供服务的主要方式是数据 API;
  2. 数据仓库是一个相对具体的功能概念,是存储和管理一个或多个主题数据的集合,为业务提供服务的方式主要是分析报表;
  3. 数据平台是在大数据基础上出现的融合了结构化和非结构化数据的数据基础平台,为业务提供服务的方式主要是直接提供数据集;
  4. 数据中台距离业务更近,为业务提供速度更快的服务;
  5. 数据仓库是为了支持管理决策分析,而数据中台则是将数据服务化之后提供给业务系统,不仅限于分析型场景,也适用于交易型场景;
  6. 数据中台可以建立在数据仓库和数据平台之上,是加速企业从数据到业务价值的过程的中间层。

数据仓库具有历史性,其中存储的数据大多是结构化数据,这些数据并非企业全量数据,而是根据需求针对性抽取的,因此数据仓库对于业务的价值是各种各样的报表,但这些报表又无法实时产生。数据仓库报表虽然能够提供部分业务价值,但不能直接影响业务。

数据平台的出现是为了解决数据仓库不能处理非结构化数据和报表开发周期长的问题,所以先撇开业务需求、把企业所有的数据都抽取出来放到一起,成为一个大的数据集,其中有结构化数据、非结构化数据等。当业务方有需求的时候,再把他们需要的若干个小数据集单独提取出来,以数据集的形式提供给数据应用。

而数据中台是在数据仓库和数据平台的基础上,将数据生产为为一个个数据 API 服务,以更高效的方式提供给业务。

数据中台可以解决的问题

  1. 效率问题:为什么应用开发增加一个报表,就要十几天时间?为什么不能实时获得用户推荐清单?当业务人员对数据产生一点疑问的时候,需要花费很长的时间,结果发现是数据源的数据变了,最终影响上线时间。
  2. 协作问题:当业务应用开发的时候,虽然和别的项目需求大致差不多,但因为是别的项目组维护的,所以数据还是要自己再开发一遍。
  3. 能力问题:数据的处理和维护是一个相对独立的技术,需要相当专业的人来完成,但是很多时候,我们有一大把的应用开发人员,而数据开发人员很少。

业务中台和数据中台

例子

淘宝 天猫 1688 菜鸟

通用的业务可以用中台实现。

解决烟囱式建设带来的问题。

烟囱式架构

烟囱式建设是:一种不能与其他系统进行有效协调工作的信息系统,又称为孤岛系统。

这样的数据中心是基于单个项目建设的,其特点为“烟囱式”,也就是垂直的体系结构,每一个IT系统都有自己的存储和IT设备,以及独立的管理工具和数据库,不同的系统不能共享资源,不能交付和访问,形成了资源孤岛和信息孤岛。

image-20220708160052421

阿里巴巴数据中台

阿里巴巴的数据中台

20220627154151930

20220627154224869

image-20220706152627812

大数据

大数据技术

大数据的生态

大数据两大核心技术

  1. 分布式存储
  2. 分布式处理

大数据技术是以谷歌技术为代表的

  • 分布式数据库BigTable
  • 分布式文件系统GFS
  • 分布式并行处理技术MapReduce

对应的开源实现

  • Hbase
  • Hadoop(HDFS)
  • Hadoop(MapReduce)、Spark、Flink

20220422144142(1)

数据中台

获取数据的发展阶段

数据库阶段(数据存储起源)=>传统数仓(分析计算起源)=>大数据平台(数据工厂时代)=>大数据中台(数据价值时代)

数据库 VS 数据仓库

数据库就是我们常用的关系型数据库(MySQL、Oracle、PostgreSQL…),还有什么非关系型数据库,它主要存放业务数据,那数据仓库有有些什么数据呢?
说到他们的区别,我们一般会提到OLTP和OLAP,

  • OLTP:on-line transaction processing,联机事务处理,主要是业务数据,需要考虑高并发、考虑事务
  • OLAP:On-Line Analytical Processing,联机分析处理,重点主要是面向分析,会产生大量的查询,一般很少涉及增删改

数据仓库:数据仓库系统的主要应用主要是 OLAP(On-Line Analytical Processing),支持复杂的分析操作,侧重决策支持,并且提供直观易懂的查询结果。也就是说,数据仓库汇总有可能有很多维度数据的统计分析结果,取百家之长(各个数据源的数据),成就自己的一方天地(规划各种业务域的模型,指标)。

img

一般来说,数据中台是指通过数据技术对海量数据进行采集、计算、存储和处理,同时统一标准和口径,形成全域级、可复用的数据资产中心和数据存储能力中心,形成大数据资产层,进而为客户提供高效的服务。

形象地讲,数据中台构建的服务考虑了”可复用性”,每项服务都像一个积木,可以随意组合,灵活高效地解决前台的个性化需求。

  • 从效用意义上讲,狭义的数据中台是一套实现数据资产化的工具;广义的数据中台是一套利用数据,进而帮助企业实现数字化转型的机制和方法;
  • 从技术角度来看,数据中台是一种新型的IT架构;
  • 从管理角度看,数据中台是一种新型的组织管理模式和理念;
  • 从战略角度来看,数据中台是为了应对日益复杂的环境而构建的一种新型战略工具和竞争壁垒。

总之,数据中台的核心理念是”数据取之于业务,用之于业务”,跟传统数据平台相比,数据中台着眼于业务的积累和沉淀,构建了从数据生产到消费、消费后数据返回到生产的闭环过程。

“让一切业务数据化,一切数据业务化”是对数据中台系统功能的精要概括。

常用场景

image-20220706151819269

实现的功能

数据中台主要实现的功能有:

  1. 数据汇聚

  2. 数据治理

  3. 数据加工

  4. 数据资产管理

  5. 自助统计分析

  6. 数据供应

数据汇聚平台

汇聚平台主要是从数据存储角度来表述,指将原始数据进行集中存放,便于后续使用的读取使用。

数据汇聚平台的主要目标是将不同来源的异构数据存放到数据仓库中。

企业一般数据分成几类:

  • 业务数据,指企业业务办理过程中产生的数据,比如订单数据、客户数据、商品数据、供应链数据。这类数据由业务信息系统产生,已存放在现有信息系统中,比如ERP系统、CRM系统等。

  • 在线监测数据,比如企业自有媒体上部署代码能够获得用户媒体行为日志数据;或者传感器实时产生的监测数据。这类数据需要实时在线服务接收并记录相应的日志数据。

  • 第三方平台数据,数据存在第三方平台,比如微信公众号、支付宝等平台数据。这类数据平台往往提供API能进行数据拉取。
  • 数据汇聚,或者称作ETL,将不同的业务系统的数据加载到数据仓库中。数据汇聚有多种方式,按照数据汇聚的传输方式,可以分为文件传输、数据抽取、消息推送等方式。

数据汇聚平台依托于基础支撑软件和基础网络设施,通过图形化的配置界面实现分布的、异构的、跨网络的各场景数据汇聚。

数据治理平台

数据治理的主要目标确保数据满足标准,标准主要有两个方面:

正确性;描述语言一致性因此数据治理平台主要包括两个层次:

第一层:数据清洗,确保数据正确性,将数据中错误的数据排斥。包括清洗规则算法管理、数据分布查看。

第二层:字段体系统一,将不同来源的同一语义的字段进行名称和值的统一。主要包括语义标准命名管理、字段体系管理、字段映射管理等。

数据加工平台

加工平台承担了数据字段、数据指标的衍生计算任务,为数据开发人员提供可视化或者可编码的环境进行加工规则的管理和实施,是将数据资产化的重要环节。数据加工平台完成的典型任务有用户标签计算、ID打通计算、电商典型购买指标计算等。

数据加工平台主要包括:体系指标管理、计算模型管理;

指标体系管理:指标体系、指标的定义、增删改查等;计算模型管理:计算模型定义、调度等配置管理。比如标签的任务、ID计算的任务等。数据加工平台形成不同业务含义域,形成企业的数据地图。这些域中的数据都是可以进行直接使用的正确数据。

数据资产管理平台

数据资产管理实际上是从元数据角度展现关联关系和统计量,本质上是数据字典的图形化版本,阿里有多少数据、如何存储、数据之间关系如何、如何找、如何用都可以从资产地图找到答案,蛮形象的,从网上资料看,其设计还是值得借鉴。

数据资产管理平台,主要包括两个部分:数据看板、数据地图。

自助统计分析平台

中台作为企业数据的基础平台,面向对象从公司老板到具体一线业务人员,其数据统计、分析需求区别较大,如果每一个都定制开发,基本上是一个不可完成的任务。

自助统计分析平台的定位是,使用者可以通过平台选择需要的数据域和数据表,选择需要的指标、维度、过滤条件以此为基础进行统计分析。

在建设过程中,自助统计分析平台不一定需要重新建设,市面上有很多成熟产品可以使用,进行对接。比如帆软、达芬奇和supset等。

数据供应平台

数据供应平台就是将数据业务化,包括了与业务相关的、可复用的一些公共技术组件或产品,如数据目录、数据标签、数据分析、数据开放接口、机器学习算法模型等,它们可以使用SAAS方式直接对外提供服务,也可以以更小粒度如API、消息接口、文件接口、服务接口、SDK软件包等方式只提供组件能力或数据服务,内部或外部第三方应用不必关心底层数据准备情况,直接调用数据服务模块对外提供的服务接口,就可以方便进行二次开发,借以增强自身的能力。

目前数据供应平台更多指以微服务,API方式对业务系统直接提供数据业务服务,数据供应平台类似一个API的开放市场,包括API注册、发布、搜索、调用支持等。

除了上面内容,本身这些功能的生产过程可视化也是重要的功能模块。

什么样的企业适合构建数据中台?

什么样的企业适合构建数据中台?

数据中台的构建需要非常大的投入:一方面数据中台的建设离不开系统支撑,研发系统需要投入大量的人力,而这些系统是否能够匹配中台建设的需求,还需要持续打磨。另外一方面,面对大量的数据需求,要花费额外的人力去做数据模型的重构,也需要下定决心。

所以数据中台的建设,需要结合企业的现状,根据需要进行选择。

我认为企业在选择数据中台的时候,应该考虑这样几个因素。

  • 企业是否有大量的数据应用场景:数据中台本身并不能直接产生业务价值,数据中台的本质是支撑快速地孵化数据应用。

    所以当你的企业有较多数据应用的场景时(一般有3个以上就可以考虑),就像我在课程开始时提到电商中有各种各样的数据应用场景,此时你要考虑构建一个数据中台。

  • 经过了快速的信息化建设,企业存在较多的业务数据的孤岛,需要整合各个业务系统的数据,进行关联的分析,此时,你需要构建一个数据中台。比如在我们做电商的初期,仓储、供应链、市场运营都是独立的数据仓库,当时数据分析的时候,往往跨了很多数据系统,为了消除这些数据孤岛,就必须要构建一个数据中台。

  • 当你的团队正在面临效率、质量和成本的苦恼时,面对大量的开发,却不知道如何提高效能,数据经常出问题而束手无策,老板还要求你控制数据的成本,这个时候,数据中台可以帮助你。当你所在的企业面临经营困难,需要通过数据实现精益运营,提高企业的运营效率的时候,你需要构建一个数据中台,同时结合可视化的BI数据产品,实现数据从应用到中台的完整构建,在我的接触中,这种类型往往出现在传统企业中。

  • 企业规模也是必须要考虑的一个因素,数据中台因为投入大,收益偏长线,所以更适合业务相对稳定的大公司,并不适合初创型的小公司。

技术中台

技术中台可以理解为随着代码平台化架构而演化出的产物,基础服务通常是底层的服务,面向技术。

这些底层技术包括:安全认证,权限管理,流程引擎,门户,消息通知以及自动化测试、CI/CD持续部署、DevOPS智能运维等。这些技术组件通常与业务直接关联度不大,属于每个应用都需要使用的功能,技术中台强调资源整合、能力沉淀的平台体系,从技术层面来讲,大中台技术延续平台化架构的高聚合、松耦合、数据高可用、资源易集成等特性。

在实际业务中,技术中台更类似于粘合剂,将各顶层业务系统(如财务、销售、资金等)以及基础支撑平台(主数据、统一认证等)进行互通,不参与业务但支撑业务,通过基础支撑平台的能力实现各业务系统的统一化,支持跨系统之间的业务集成对接。

技术底座与数据中台

img

应用开放平台

开放平台(Open Platform) 在软件行业和网络中,开放平台是指软件系统通过公开其应用程序编程接口(API)或函数(function)来使外部的程序可以增加该软件系统的功能或使用该软件系统的资源,而不需要更改该软件系统的源代码。
在互联网时代,把网站的服务封装成一系列计算机易识别的数据接口开放出去,供第三方开发者使用,这种行为就叫做Open API,提供开放API的平台本身就被称为开放平台。

低代码平台

一、低代码开发是什么?

简单来说,低代码开发是一种用于应用程序开发的模块化方法,它能有效减少应用程序的开发时间。它能使用可重用的、基于组件的体系结构进行开发,从而加快了应用程序的开发和交付周期。在构建具有可重用组件的应用程序时,开发人员将有机会在不同的应用程序中使用现有组件,而不仅仅是原始开发应用程序,这里的组件是一个可重用的对象,它将一段代码转换为模块,这些组件可用于具有类似功能的不同应用程序中。通过将这些模块添加到新的应用程序中,开发人员可以避免针对类似的通用功能进行重复编码。这种灵活性极大地减少了测试和开发的工作量和时间。

二、低代码开发平台的好处及去缺点有哪些?

低代码开发平台的好处

1、开发快效率高

由于使用大量的组件和封装的接口进行开发,以及集成云计算的IaaS和PaaS层能力,使得开发效率大幅提升;普遍的观点,低代码能够提升30%以上的开发效率,而0代码(无代码)则能够数倍提升开发效率;并大幅降低开发成本。在激烈的市场竞争中,谁可以用最快的速度将商业创意推出上线,谁就占据了竞争的主导地位,而低代码恰巧可以完成这一使命。

2、维护成本低

一般情况下,低代码开发平台或0代码开发平台,由于采用组件形式,以及面向对象的开发方式,使得代码的结构化程度更高,通常来说更容易维护。低代码开发不仅减轻了软件维护的负担。与过去相比,要处理的错误和集成问题会大量减少。而且通过减少维护时间,开发人员可以专注于可带来更大业务价值的创新工作。

3、降低开发成本和部署时间

低代码开发降低了应用程序开发进入门槛、成本和部署时间,开发人员不需要用专业的编码器来进行全面开发。同时对一些业务专家进行简单的编码培训,也可以使他们参与到程序构建中。例如,医生和护士可以帮助编码和部署自己的工作流程,而不是让没有丝毫医学背景和经验的开发者自己去理解开发并不适用实际情况的工作流程。

4、提高团队效率

低代码开发弥合了IT和业务团队之间的沟通鸿沟,因此两者都可以解决影响公司的实际问题。业务团队可以创建自己的应用程序,而无需等待开发人员,从而提高了工作效率。可以快速启动和迭代新想法。

5、快速完成原型制作

企业可以通过低代码平台快速构建最低限度可行的产品(MVP),即时部署这些应用程序,学习和优化并扩展这些创新以促进持续创新。无需编写复杂的代码,企业可以轻松地将其应用程序扩展到更多渠道,直到它们被认为足够成熟。

低代码开发平台的缺点

1、使用门槛高。低代码开发仍需要编写代码,开发者必须具备数据库和代码编写的专业知识。

2、低代码开发平台封装的组件限制了专业程序员的使用。同时业务流程只能随着组件改变。组件的功能和种类,限制了应用程序的开发。

3、可靠性和安全性存在风险。如果低代码开发平台的组件存在质量或安全漏洞问题,开发出的应用程序的稳定性和安全性就会受到影响,而且是无法控制的。

推荐

文章推荐

https://blog.csdn.net/Yuan_CSDF/article/details/118230279

https://www.bilibili.com/video/BV1g3411y7XA/?spm_id_from=333.788.recommend_more_video.3&vd_source=7a18e414c2c1ea20f3c7f7ef1e449a7b

真正的业务中台是怎么样的?

https://www.bilibili.com/video/BV15A411e7py?p=1&vd_source=7a18e414c2c1ea20f3c7f7ef1e449a7b

视频推荐