导读:本文将介绍滴滴在国际化出行场景中对数据指标体系建设的优秀实践。主要围绕以下三点展开:1. 国际化出行的业务场景;2. 国际化业务场景的指标建设痛点;3. 国际化业务场景的指标建设方案。
01 国际化出行的业务场景
首先分享一下滴滴国际化出行业务的背景。
1. 国际化出行的业务背景
国际化出行业务具有一些鲜明的特点,首先,其范围覆盖全球五大洲,包括亚洲、欧洲、美洲,大洋洲和非洲,横跨全球 15 个时区。同时,受到各国国情的差异化、网约车竞争对手以及不同国家发展阶段的影响,网约车业务变化非常迅速。业务侧也适配了一些新的产品品类,来支持国际化市场的差异。
技术侧采用中台模式,建立了全球一套系统和一套数据源,同时公司运营遍布全球,各地均需要按当地时间看到数据,这是全球业务跟国内业务最大的差异点。因此,指标数据生产需根据不同的时区产出以便消费。
2. 国际化指标使用场景
数据侧主要是通过指标来刻画业务场景进行反向赋能。我们产出的指标大致可以分为三大类:
决策指标:
主要是公司层面和业务层面的战略核心目标。主要用于指导战略层对业务做出决策。
过程指标:
主要是对战略指标的一系列拆解,帮助运营对业务监控,实现策略的快速调整,最终达成战略指标的目标实现。
观测指标:
主要是帮助分析师和业务人员进行业务洞见和发掘。精准判断整个业务走势拐点,从而支撑整体业务的后续发展方向。
还有特征标签,为业务提供人群圈选能力,并为算法提供基础数据支持。帮助运营制定快速投放策略,最终达成精细化运营目标。
02 国际化业务场景指标建设痛点
定义难
作为数据主要消费方的运营在海外,他们各自所处国家间的市场差异巨大,所需求的数据分析指标也千差万别。各自对数据指标的理解也不一致,计算口径非常多。因此,为数仓的指标生成带来了较高的成本。
技术难
国家化场景需要数据指标按照各国当地时间产出,这凸显了数据时区性要求,无形中也加大了数据产出的成本。
管理难
很多公司都有相对成熟的指标管理方法,但实际落地却很难,究其原因是由于指标管理与模型建设相对割裂。大部分指标管理模型建设时期,容易出现时间周期或人员轮换影响指标的变化,又与模型迭代缺少联动,最终难以保证指标口径的一致性。另外,指标生产需求往往单点对接,单方验收,极容易出现不同数据指标重复建设,也容易造成指标口径的不一致。
评估难
主要体现在指标变更时,很难评估对下游数据使用的影响程度,导致指标口径一旦发生变更,下游很难完全感知。
保障难
在跨国家多时区的业务背景下,对数据产出质量和产出积极性的保障成本异常高。
03 国际化业务场景的指标建设方案
指标建设解决方案重点从建立组织、建立流程、模型设计、指标工具和指标治理等 5 个维度阐述,基于当下的国际化业务场景实际,需要体系化地建立数据指标体系,从而有效解决以上痛点问题。
第一点建立组织,是要保障整个指标生产全链路的权责一致性,每个环节各司其职。第二点建立流程,目的是保证该组织上人员能快速出现,提升整体生产效率。第三点模型设计,重点解决模型建模方法论和多时区痛点,提升建模速度,支撑指标建设效率。第四点指标管理工具,是通过整体性串联,搭建整个现代化指标体系,建立指标生产的标准化平台。第五点指标治理,目的在于保证生产稳定性和产出成本。
1. 指标建设方案——建设组织
指标生产组织的主要成员包括数据分析师、数据产品、数据开发和数据平台工程师。
数据分析师,主要通过业务理解定义全球的业务指标体系,确保同一个指标在全球的唯一性,同时通过指标去洞察业务表现,帮助业务进行相关的数据分析。
数据产品,着重对现有指标进行统一管理,并通过指标分析体系,最终根据业务场景形成符合需求的数据产品。
数据开发工程师,侧重做数据模型设计和指标开发,并对指标生产成本、数据安全,进行统一治理和集中管控,如此保证数据质量的标准化落地。
数据平台工程师,旨在建立标准化的一站式数据开发和指标管理平台,提供实时、离线多业务场景的数据产出能力。
2. 指标建设方案——建设流程
如何将以上各生产环节有效串联,需要一整套规范化的建设流程,主要包含指标转化阶段、指标开发阶段和指标交付验收阶段。
(1)指标转化阶段
数据需求方主要来自于业务产品、运营、分析师和算法,他们都会有大量的指标诉求,通过指标来监控实际的业务行为表现。
需求转入后,首先是数据分析师对诉求的指标口径进行定义,判断这个指标口径是否符合已经建立的业务数据刻画标准。随之数据产品会借助指标管理平台进行统一管理,判断是否为已有指标还是新增指标,如是新增则需迭代指标管理版本。同时,指标管理工具会自动生成一个 PRD 方案交付开发,经评估后会产出整个指标交付排期。
(2)指标开发阶段
指标开发阶段着重指标数据产出,并进行整体监控配置,包括及时性、准确性。
(3)指标交付验收阶段
验收分为分时验收和指标产品验收两部分。前者是确认这个指标是否符合当前的业务场景特点,是否与业务阶段吻合。后者,是保障产出的指标是否满足看板诉求,由此形成整体的生产交付流程。
3. 指标建设方案——数据架构顶层设计
接下来介绍最核心的部分,数据指标模型的设计思路。它涉及模型顶层的架构设计,结合指标管理的方法论确保全局指标唯一性,同时兼顾指标管理拆解路径,提升整体指标生产效率。
首先,需要区分业务板块,划清单个指标归属哪个业务线,这是整体概念的分割。具体板块就是所属数据域,例如出行项目,会按照出行的业务过程拆分多个域,有交易、财务、司机、乘客等,目的是为了确保单个指标在业务过程中的唯一归属。
其次,运用逐层拆解法,拆解出原子指标,派生指标。原子指标是根据具体业务过程,加上度量,生成原子指标,并在此基础上加上修饰词和时间周期形成基础指标。
再者,是计算指标。通过对基础指标进行计算生成计算指标。其中的核心概念点是指标归属划分,它决定了指标是否重复建设问题。例如,某一指标同时在司机域和交易域生产,可能会导致指标名称一样而口径不同。为避免这种情况,可利用一套生产原则,即业务原子指标,进行业务过程的数据域划分归属。对于基础指标,根据所分析的对象进行归属,对于计算指标,根据所在的数据运行划分归属。实行这一套原则有利于指标在数仓建设中保持唯一性产出,不会出现重复性问题。
4. 指标建设方案——模型架构
指标模型的构建框架共分为 5 层。
第一层贴源层,主要是一些业务数据、后端日志和埋点数据。
第二层事实明细层,细分为数据清洗、业务过程还原、原子指标封装、修饰词封装和度量标准化,重在保证生产的稳定性。
第三层核心指标加工层。针对最细颗粒度的分析实体,做指标的快速拼装,灵活扩展成大量的基础指标。
第四层主题分析层,旨在针对整体中间层的聚合,可以跨多个数据域形成系统性指标集。实现指标的多维度聚合,快速服务整体业务,建立多种业务场景的数据指标支撑。
第五层应用层,包含数据产品、数据看板和 API 接口、特征平台等等。
下面通过一个实例来说明指标生产的底层组件化能力。
例如基于事实明细层,现有订单事实表和司机审核事实表 2 个模型,主要以订单为主键记录了业务过程。基础原子指标会封装成当日是否完单、是否改派标识、计费距离和维度指标业务线。在司机审核事实表模型中记录分析对象司机 ID 以及原子指标是否当日审核通过。在中间层会进行指标的快速拼接,增添修饰词,封装成基础指标,如当日改派的完成订单数(交易域),当日完成订单审核通过的司机数(司机域)。由此加强了底层模型的复用性,达到指标层的多维聚合能力。
5. 指标建设方案——时区解决方案
下面着重介绍国际化多时区场景下,基于一套数据源支持所有国家的运营,并按照当地时间生产数据的解决方案,共分为三部分:模型分层,生产链路和模型设计。
(1)模型分层
模型分为应用层、主题分析层、指标加工层、事实明细层、贴原层和小时转天层。其中小时转天可以理解为由于数据源来自北京时间生产,计划安排每个小时采集一次数据,通过国家组和时转天工具将每个小时采集的数据转化成适配 local 当地时区的数据,这是最核心的部分。
(2)数据生产链路
核心是基于一个 SDK 时区服务,记录对应国家所在时区的北京时间拼表。同时 SDK时区服务,会生成对应国家时间的转换函数,主要记录当地时间和北京时间的转换。基于这个时间函数实现了国家组和小时转天的工具化,国家组是针对全球每隔经度15° 划分成的 24 个时区,将临近的 2 个时区编至同一国家组。例如有 4 个国家组,一个调度任务会按照国家组同时生成多个批次,全球使用一份脚本适配全球所有的批次,并根据时间函数判断当地时区,决策当地国家对应时区几点开始调度和执行。
小时转天的处理原理是基于 ODS 数据源层每小时采集的数据,根据当地时间转换为天,由此判断出从几点到几点代表当地国家完整的一天24 小时。
通过以上工具转化合成当地的新时间分区,最终形成一套针对于不同国家不同时区的生产链路能力。
(3)模型设计
ODS 数据源层按北京时间每小时采集,中间层部分所有表,全部按照local 当地天采集,进入双分区体现为 country code 显示对应分区是哪些国家,同时还会标记 2 个字段来标注各个国家的时间转换。最终达成利用一套数据任务,可灵活支持全球多个时区的国家垂直数据产出。
6. 指标建设方案——指标管理工具
我们拥有整套指标管理工具,代表了指标体系建设的标准化能力。
左边是指标需求的具体流程,包含指标需求、指标梳理、指标录入、指标开发和指标上线。中间是指标加工生产的工序工具,主要解决两点,一是实现指标管理现代化和标准化,二是打通指标生产全年度的血缘关系。
(1)第一点,指标管理具体落实点
首先需确定指标所对应的业务板块,归属于哪个业务过程,哪个数据域。对应到模型中即为事实层,再加入一些修饰词和维度属性,即对应模型中的维度表,从而实现具体指标对应捆绑关系。通过录入指标系统生成唯一指标 ID,再通过原子指标和修饰词,进而组成一个基础指标唯一 ID。这样就能保证指标生产的整个力度完全打通。
(2)第二点,指标方法论跟模型设计的血缘串联
保证指标用户能快速找到指标源数据和口径管理,以及指标对应的表和具体字段。
最后,整个指标管理工具再结合其他产品工具,例如数据开发工具、看板工具和数据建模工具等等,将指标生产全流程搬至线上,形成标准化指标生产体系。
7. 指标建设方案——指标治理
数据治理主要包含三大块,准确性、及时性和历史的完整性。
鉴于指标体系庞大的量级,如果所有的标准适配所有等级的指标,其保障成本高、人效也低,因此需要实施分等级的保障工作。
(1)对于 T1 级核心决策指标,主要支持公司战略层,对于准确性进行强管控,包含指标掉 0 监控、指标波动监控和双链路一致性监控。
第一,准确性。主要有指标掉 0 监控,通过强熔断,电话报警方式进行监控。指标的波动监控,例如平时的完单量突然超过了 100%,会员翻倍了,那么此时采取人工记录,判断是否是指标加工问题还是业务发生变化所致。双链路一致性监控,为了确保指标生产中间层准确,我们会按照模型分层加工核心指标,同时会在数据源 ODS 层另一条链路加工相同指标,由此确保两个指标双链路生产是完全一致对应的。
第二,及时性。提供了基线保障(SLA)、资源倾斜、运行时长监控。主要通过链路监控,电话报警的方式进行。
第三,历史完整性。侧重于指标生命周期永久性角度监测。
(2)对于 T2 级过程指标,最核心的是基线 SLA 保障,侧重于过程监控。
第一,准确性。主要实行指标掉 0 监控、指标波动监控,通过弱监控,电话报警方式进行。
第二,及时性。实行基线保障(SLA),运行时长监控,主要通过链路监控,电话报警方式进行。
第三,历史完整性。侧重业务需要监测业务同去年同比状态,保留了 1800 天。
(3)对于 T3 级观测指标,主要帮助分析师做业务上的数据挖掘,对指标及时性要求较低,属于长周期的挖掘事项。
第一,准确性。主要是指标掉 0 监控,主要通过弱监控,短信报警方式进行。
第二,及时性。主要是运行时长监控,主要通过定时监控,短信报警方式进行。
第三,历史完整性。主要在指标使用热度方面进行监控。
(4)对于标签部分,侧重于运营层面运用标签实现快速投放提升整体运营投放质量。
第一,准确性。主要是指标掉 0 监控,降级方案监控。主要通过弱监控,电话报警方式进行。
第二,及时性。主要是进行运行时长监控,定时监控方式。主要通过定时监控,电话报警方式进行。
第三,历史完整性。主要侧重于对标签使用热度进行监控。