热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

数据中台:企业的数据化引擎

根据网易严选建设数据中台的经验和

本文作者魏文庆,网易严选数据技术及产品部总监, 文中根据网易严选建设数据中台的经验和方法论,解读数据中台。


数据中台最早是阿里提出的,但真正火起来是2018年,我们能感受到行业文章谈论数据中台的越来越多。大量的互联网、非互联网公司都开始建设数据中台。为什么很多公司开始建设数据中台?尽管数据中台的文章很多,但是一千人眼里有一千个数据中台,到底什么是数据中台?数据中台包含什么?

2017年开始,当网易严选有了一定量的数据,我们就开始规划建设我们的数据中台,目前我们已经完成了数据中台体系的搭建,我将根据我们建设数据中台的经验和方法论试图解答上面这些问题。

为什么大家开始建设数据中台?


2018年开始,朋友圈里讲数据中台的文章开始逐渐变多,当然拿着手机看世界并不一定看到真实的世界。我也跟各个行业的一些大公司的CIO交流,发现很多行业的大公司都开始组建大数据团队,建设数据中台。结合文章和交流获取的信息,我切身感受到宏观经济对技术的影响。2018年开始经济下行,生意不好做了,粗放的经营已经不行了,越来越多的企业想通过数据驱动来进行精细化的运营和数据化转型。






如上图所示,企业需要数字化转型,需要更多的触点去跟自己的用户/客户建立联系,很多企业就需要做自己的公众号、小程序(各家的小程序)甚至app。我们希望用户更容易找到我们的商品/服务,我们就需要搜索。我们希望用户更多的浏览/使用我们的商品/服务就需要推荐。我们维护用户/客户的生命周期,根据生命周期采取不同的营销动作,就需要CRM。我们需要拉来更多的新用户,就需要投放广告,为了更好的投放效果,我们需要建设我们的DMP。当我们生意做大,我们需要对抗黑产(羊毛党),让我们的优惠能让真正的用户享受,我们需要风控。这一切都需要底层大数据的支持。

企业需要精细化运营,就需要不断的提升运营的频次(如下图所示)和粒度。我们需要把运营的节奏提升到周级、天级甚至实时。我们随时随地了解我们企业经营状况,需要不断的更精细(细粒度)的分析我们的业务,快速做出业务决策。我们就需要能够快速地构建大量的BI报表,在一些重要的节点(大促)时,甚至需要盯着数据大屏。如果我们有能力,还可以建设场景化的数据产品来支持业务的决策。这一切都需要底层大数据的支持。




如何快速地利用底层大数据的支持,让我们的数据化转型、精细化运营能够高频的迭代,这就需要我们的数据中台提供强有力的支持。

这里也提醒一点,当我们需要大规模的数据应用时(搜索/推荐/BI报表...),我们才需要构建数据中台。因为建设数据中台的投入大。打个比方,当我一家人要吃饭,我自己买菜,在自己的厨房用普通的厨具自己做就好了,如果是富士康,几万几十万人吃饭,就需要建食材的加工配送中心(类比数据中台)。本质上是“需求规模量级的变化,导致解决方案的质变”。所以我们看到的,基本是大公司在建设数据中台。尽管你们可能现在不适合建设数据中台,但数据中台的思想大家都可以借鉴。

小结一下, 当企业需要数据化转型、精细化运营,进而产生大规模数据应用需求的时候,就需要建设数据中台。

什么是数据中台?


这是一个千人千面的问题。我们的定义是 “数据中台是高质量、高效赋能数据前台的一系列数据系统和数据服务的组合”。因为规范最终是在系统和服务中落地的,所以定义中就没有包含规范部分。

数据中台的核心职责是高效地赋能数据前台为业务提供价值。要想理解数据中台先要理解数据前台,上文说到的搜索、推荐、BI报表、数据大屏等都属于数据前台。我们来看下面网易严选数据体系的图就更清楚数据中台的定位了。


数据中台的下层是数据平台,数据平台主要解决跟业务无关的问题,主要是大数据的存储和计算问题。


数据中台的上层就是数据前台,主要包括BI报表、数据产品和业务系统。数据中台首先赋能分析师通过BI报表的形式来驱动业务精细化运营。如下图所示,基于数仓里已经半加工好的数据,分析师使用严选有数敏捷BI平台可以快速的根据业务需求进行数据可视化和数据分析。严选有数现在每周的UV超过800,每天报表浏览次数超过12w,目前的图表数超过7W。对于一个事业部级的BI平台,应该算是一个非常好的成绩。这里特别感谢下我们的分析师团队,她们的辛勤工作才会有这样的成绩。



数据中台还会赋能业务系统开发通过统一查询服务(主要是统一查询服务和标签服务)来辅助业务过程中的决策。基于数仓里面加工好的数据模型,业务系统开发人员使用统一查询服务获取到的模型数据在业务系统中增加辅助决策功能。比如供应商系统需要对供应商进行评级,供应商评级需要供应商的商品销售数据、评论数据、退货数据、质量数据,供应商采购的交期数据等等。数仓会根据这些数据加工模型,供应商系统可以通过统一查询获取模型在供应商系统中使用。在严选,统一查询服务已经接入了67个应用、670个模型、每天有300w的调用。




我们自己做的数据产品(如下图所示),基本会用到我们数据中台所有的能力支持,包括统一查询服务、标签服务、指标监控服务、数据产出服务等数据服务,也会使用严选有数创建BI报表挂载到数据产品中。




数据中台包含什么?


从上文的图中,我们已经初步了解了数据中台包含了哪些系统和服务。概括来说, 数据中台包含数仓体系、数据服务集和BI平台。

数仓体系

数仓体系是数据中台的核心,数据是新能源,是生产资料。数仓体系包含数仓和一系列的管理系统,用来管理数据,保证数据的完整、一致和准确。数仓体系的构成和关系,如下图所示。数仓是数仓体系的核心,也是整个中台的核心。数仓的开发和存储,主要依赖网易猛犸数据平台




夸父-埋点管理系统和精卫-数据填报系统从供应侧保障数据的完整性和质量。埋点数据由于来源广(web端、ios、android、小程序等)、链路长、格式(日志的scheme约束)等问题,一直是数据质量的重灾区。夸父-埋点管理系统提供了埋点的管理、埋点流程协同和埋点测试,提供了埋点日志的scheme,保障了埋点数据质量。精卫-数据填报系统提供数据导入数仓及导入时的验证功能,提升数据的完整性。整个电商的业务过程非常多,所有业务过程都线上化的过程非常漫长。当我们下游的数据应用需要某个业务过程的数据,而这个业务过程还没有线上化时,就可以通过精卫-数据填报系统导入数据到数仓,下游就可以使用这份数据。

仓颉-指标管理系统和燧人-指标地图是从需求侧提升数据(指标)的一致性。仓颉-指标管理系统顾名思义是管理指标定义,在提供指标统一管理的同时,提供了指标定义规范的约束。数据开发可以根据指标定义里的指标口径来进行指标开发。燧人-指标地图是提供给业务方查看当前的指标分类与指标定义。

数仓开发本身要解决的核心问题是质量和效率(所有开发也都需要解决),无论是质量和效率都需要好的架构设计。北斗-数仓设计管理系统就是来完成数仓设计。数仓的开发原本总是非常的经验化,很多知识都是存在数据开发的脑子里。我们通过北斗-数仓设计管理系统来推行数仓先设计再开发,通过北斗-数仓设计管理系统将数仓开发的经验知识化、标准化、工具化。数据质量中心(如下图所示)提供全链路的数据保障体系,提供任务监控、数据监控、应用监控、影响范围评估和恢复的支撑。




数据服务集

数据服务主要是数据场景下的解决方案的沉淀。数据服务集极大的加速了数据应用开发效率。核心的数据服务是统一查询服务和标签服务,提供指标模型和标签模型对数据应用系统(业务系统和数据产品)的统一配送。统一查询服务核心提供表转接口和数据网关的功能。数仓管理的是数据模型表,通过统一查询,数据应用系统就可以通过接口的形式来访问数据模型表。统一查询服务是数据体系和数据应用系统之间的总网关,需要提供模型级限流、熔断等网关功能。




BI平台

BI平台我们用的是严选有数,也就是在网易有数在严选的版本。网易有数是一款敏捷BI平台,在设计上通过以终为始的设计理念和类PPT操作模式,在保障灵活性的基础上,提供了极大的操作便利。想进一步了解的,可以搜索网易有数。





在性能方面,我们结合数据产出服务做的基于数据产出的缓存策略极大地提升了报表的性能。图表首访缓存命中率基本稳定在100%,整体缓存命中率超过80%。

数据中台的内容非常长,本文非常概括的从严选实践介绍了数据中台。总结一下: 当企业需要数据化转型、精细化运营,进而产生大规模数据应用需求的时候,就需要建设数据中台。据中台是高质量、高效赋能数据前台的一系列数据系统和数据服务的组合。数据中台包含数仓体系、数据服务集和BI平台。



推荐阅读
  • 微信小程序详解:概念、功能与优势
    微信公众平台近期向200位开发者发送了小程序的内测邀请。许多人对微信小程序的概念还不是很清楚。本文将详细介绍微信小程序的定义、功能及其独特优势。 ... [详细]
  • 在软件开发过程中,经常需要将多个项目或模块进行集成和调试,尤其是当项目依赖于第三方开源库(如Cordova、CocoaPods)时。本文介绍了如何在Xcode中高效地进行多项目联合调试,分享了一些实用的技巧和最佳实践,帮助开发者解决常见的调试难题,提高开发效率。 ... [详细]
  • MySQL的查询执行流程涉及多个关键组件,包括连接器、查询缓存、分析器和优化器。在服务层,连接器负责建立与客户端的连接,查询缓存用于存储和检索常用查询结果,以提高性能。分析器则解析SQL语句,生成语法树,而优化器负责选择最优的查询执行计划。这一流程确保了MySQL能够高效地处理各种复杂的查询请求。 ... [详细]
  • POJ3669题目解析:基于广度优先搜索的详细解答
    POJ3669(http://poj.org/problem?id=3669)是一道典型的广度优先搜索(BFS)问题。由于陨石的降落具有时间属性,导致地图状态会随时间动态变化。因此,可以利用结构体来记录每个陨石的降落时间和位置,从而有效地进行状态更新和路径搜索。 ... [详细]
  • 人人租机作为国内领先的信用免押租赁平台,为企业和个人提供全方位的新租赁服务。通过接入支付宝小程序功能,该平台实现了从零到百的迅猛增长,成为全国首家推出“新租赁小程序”开发服务的阿里巴巴小程序服务商(ISV)。这一创新举措不仅提升了用户体验,还显著增强了平台的市场竞争力。 ... [详细]
  • 对于众多创业公司而言,选择小程序或小视频的发展方向至关重要。本文将深入分析小程序和小视频的特点、优势及局限,帮助创业者做出更明智的选择。 ... [详细]
  • Dell Latitude 5290 2-in-1 平板电脑黑苹果体验评测
    本文基于notebookcheck的详细数据和个人实际使用体验,对Dell Latitude 5290 2-in-1平板电脑进行评测。评测内容包括外观设计、散热性能、基准测试、游戏表现和续航能力等方面,旨在为读者提供全面的参考。 ... [详细]
  • 本文介绍如何使用命令行工具查看和解析 iOS 应用崩溃日志,包括 UUID 和错误代码位置的详细步骤。 ... [详细]
  • Framework7:构建跨平台移动应用的高效框架
    Framework7 是一个开源免费的框架,适用于开发混合移动应用(原生与HTML混合)或iOS&Android风格的Web应用。此外,它还可以作为原型开发工具,帮助开发者快速创建应用原型。 ... [详细]
  • 秒建一个后台管理系统?用这5个开源免费的Java项目就够了
    秒建一个后台管理系统?用这5个开源免费的Java项目就够了 ... [详细]
  • 在《Cocos2d-x学习笔记:基础概念解析与内存管理机制深入探讨》中,详细介绍了Cocos2d-x的基础概念,并深入分析了其内存管理机制。特别是针对Boost库引入的智能指针管理方法进行了详细的讲解,例如在处理鱼的运动过程中,可以通过编写自定义函数来动态计算角度变化,利用CallFunc回调机制实现高效的游戏逻辑控制。此外,文章还探讨了如何通过智能指针优化资源管理和避免内存泄漏,为开发者提供了实用的编程技巧和最佳实践。 ... [详细]
  • PHP 各版本对比:标准版与最新顶级版的详细分析 ... [详细]
  • Python ATM与购物车项目实战:深入解析三层架构设计
    本文详细解析了Python ATM与购物车项目的三层架构设计,重点介绍了MVC(Model-View-Controller)模式的应用。在用户界面层,系统通过图形化界面与用户进行交互,接收并处理用户的输入数据,随后将这些数据传递给控制层进行进一步处理。该层不仅负责展示信息,还承担了用户请求的初步处理任务。 ... [详细]
  • ### 优化后的摘要本学习指南旨在帮助读者全面掌握 Bootstrap 前端框架的核心知识点与实战技巧。内容涵盖基础入门、核心功能和高级应用。第一章通过一个简单的“Hello World”示例,介绍 Bootstrap 的基本用法和快速上手方法。第二章深入探讨 Bootstrap 与 JSP 集成的细节,揭示两者结合的优势和应用场景。第三章则进一步讲解 Bootstrap 的高级特性,如响应式设计和组件定制,为开发者提供全方位的技术支持。 ... [详细]
  • 老杨谈IT运维 | 快速实现日志异常检测与根源分析
    在智能运维领域,指标和日志是最常用的数据来源,能够有效反映系统的运行状况和健康状态。通过对这些数据的深入分析,可以为监控和告警系统提供关键信息,帮助快速实现日志异常检测与根源分析,提升整体运维效率。 ... [详细]
author-avatar
梦三国
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有