618备战运营大屏建设—跨时区多源架构实践之路
2022-06-11 06:07:12来源:京东零售技术
作为首次整体亮相并参与到集团大促备战的京东国际,在业务上,有东南亚地区的本地电商“泰国、印尼”,也有新添在欧洲和国内开辟的业务“MCA、B2B”,还有销售场在第三方平台和主站平台的“三方业务、主站售”。在大促期间如何统揽各条线的“流量、用户、销售”等数据信息,为业务提供实时的运营策略指导,就需要将各业务线的系统和运营数据情况汇总到一块进行管理和规划设计。那我们会遇到哪些问题和挑战呢?接下来将从“国际业务特性、数据分布及人员情况、数据建设现状、技术架构”这几个维度给大家剖析。
国际业务特点通过先前大促启动会时的介绍,相信大家对国际业务特性有了一定的了解,国际业务的特点主要在于“多业态、多国家、多地区、多语言、多时区、多币种”,除了这些特点外,还有针对不同地方的法律法规也各不相同,就决定了国际业务数据建设将面临重重的挑战。
数据分布和人员情况本次参与大促备战的6个业务线,分别部署在不同的机房,数据分布和数据计算资源也是分开的,例如:“印尼站数据和服务部署在雅加达、泰国站部署在香港(马上要迁移到新加坡)、MCA部署在荷兰阿姆斯特丹、B2B&主站售&三方业务部署在国内机房”。在数据加工、数据分析、数据服务方面,由于历史原因(原各站点闭环研发)相关人员支持的情况也各不相同,有的是业务侧的数据分析师、有的是研发团队的数据研发、有的是临时学习大数据相关知识后参与支持工作。
从数据计算资源、存储、服务提供,再到人员支持现状可以看出来国际数据平台的建设,需要有一支专业的数据团队去支持,同时需要建设国际业务数据中心,标准化数据指标的口径和计算频率、提供服务的方式。
数据现状梳理及团队建设为了建设国际业务数据大促大屏,满足各业务的看数需求,我们临时成立了“618大促大屏项目组”对现有6个业务线的指标情况进行了全面的梳理,最终确定了3种大屏指标场景“流量、用户、交易”,共计8个通用指标。
团队方面,为了快速完善指标建设,组织成立了“虚拟数据研发”小组,由各团队最懂业务、最懂数据的产品、数据、研发人员组成。
数据大屏系统架构和思路目标:整合国际业务所有条线的数据,提供实时的数据,统一数据单位和颗粒度的数据,从6月1号开门红至6月18号期间的“累计数据、天数据”展示8个通用指标的趋势情况,落地国际618大促大屏看板。
数据源:各条线的指标建设梳理后,我们发现数据的加工、存储和展示都有较大的差别,其中涉及“Clickhouse、Hadoop、Mysql、Elasticsearch”等,对于数据的实效性有的是T+1,有的是秒级,有的是分钟级,有的是10分钟级。对于货币单位,有泰铢、印尼盾、美元、人民币等。
跨区整合:当前数据的分布和业务至少横跨了4个时区,相较国内晚1-7个小时,对于这种情况下数据的聚合有两种方案:
各条线根据接口规范通过Http的方式提供数据服务,由国内提供数据应用服务进行数据聚合,这样的好处是对原业务线的数据加工影响较少,整体工作量低;设计通用的数据表,按照领域区划分,例如“商品、商家、订单、营销”等建设标准化数据表,由各条线的数据分析师进行数据加工后,通过调用通用的接口进行数据上报。能力复用:大屏需要有考虑各个终端的适配,也要考虑大屏数据展示的样式和布局,同时也要考虑数据加载的效率和稳定,因此本次对于大屏看板的前端,我们和零售中台技术与数据中心-数据与智能部的产品同事,也就是负责京东集团作战指挥室大屏的设计和研发团队进行了沟通交流,基于JDV平台丰富大屏看板资源和数据接入、编排的能力,可以快速为京东国际的大屏建设进行赋能。
虚拟数据演示
架构方案:
1、短期方案:
各站点集依托大数据平台进行数据计算、存储、分析和推数,使用到的技术栈为“Flink、Spark、JMQ、Mysql、Clickhouse”等。构建国际业务数据聚合层,通过Http的方式走内网专线进行数据交互,通过聚合层对数据进行累计、货币单位、样式进行加工转化,同时为了提升性能将对实时数据进行缓存处理。通过聚合层服务面向JDV大屏看板提供接口服务,JDV通过浏览器技术可以对数据进行本地缓存和加速。2、长期方案:
建设国际统一的集市中心,将国际业务线涉及到的“用户、交易、营销、浏览、商品、库存”等数据路由到全球各数据中心。建立国际标准化数据建设规范,对数据字段的命名规范、数据存储大小、存储时间、分析时间、使用频率都进行标准化,同时对于新业务要有完善的数据埋点表。构建国际数据平台,整合各场景下的数据,同时与外部数据进行协同,落地国际数据洞察为业务提供反向运营指导以及体验提升。总结通过国际业务多源数据应用的实践过程,我们可以看到,通过这套架构和思路,不仅支持拖拽可视化搭建大屏看板系统,同时还具备灵活且深度的组件共建、逻辑扩展能力,可以满足不同业务的数据诉求。内置的权限、组件、数据交互方式减少了重复开发,对效能有明显的提升帮助。对于国际业务数据建设而言,我们还有很多能力需要不断的扩充,最终将会通过建成国际通用的数据平台,以业务和客户的需求为导向,持续深耕平台的易用性、扩展性。