实时推荐前端怎么实现(HologresXTapTap)
实时推荐前端怎么实现(HologresXTapTap)TapTap 的核心业务场景主要包括 App 首页实时个性化推荐、在线搜索、广告精准投放等。其中首页实时推荐增长乏力,因此我们本次大数据的建设核心主要以推荐业务为主。在下文中,我将会详细介绍如何通过阿里云大数据技术赋能TapTaP实时推荐等多个场景,助力业务精细化增长。我所在的 TapTap IEM 组全称 Intelligence Engine & Monetization,负责整个 TapTap 的流量资源分配和商业化相关的工作,是先进技术驱动的业务型团队。 TapTap 作为社区型游戏商店,属于典型的多边平台经济模型,涉及到用户、商家以及创作者三方需求的满足,平台的增长很大程度上依赖于这三者的连接效率。IEM在其中扮演核心角色:以机器学习算法为基础,对 TapTap 各个业务场景进行精细化的建模和优化,驱动业务增长,包括但不仅限于首页的游戏推荐、首页的原生广告、动态内容 feeds
作者:陈欣昊,TapTap/IEM/AI平台负责人 。
心动是一家全球游戏开发和发行商,从 2009 年以来提供多款网页游戏和手游。截至 2022 年中,心动运营 38 款免费和付费游戏,目前在全世界拥有 5 000 万月活跃用户,主要分布在大中华地区、东南亚、北美和南美。2016 年,心动推出手机游戏社区和应用商店 TapTap,截至2021财年在全球有 4 400 万月活跃用户。
借助 TapTap ,玩家可以通过官方渠道免费下载手机游戏,或付费购买手机游戏与服务。玩家亦可评价、讨论游戏,在社区中与其他玩家交流。TapTap 也为开发者提供了一套游戏发行服务,并免费提供了一套软件开发工具包,称为「TapSDK」。开发者可以通过 TapSDK 将 TapTap 的好友功能、成就功能等服务集成到自己的游戏中。
不同于传统应用商店的「分成」商业模式,TapTap 自创立开始至今即坚持「零分成」——不会向 TapTap 上架的游戏,收取充值流水的分成。这个模式让游戏厂商可以获得 100% 的流水收入,更有利于行业良性发展,同时也对 TapTap 的商业化提出了更高的要求。在此背景下,TapTap 的商业化目前主要由广告收入驱动。
业务痛点:业务增长缓慢,急需大数据技术反哺我所在的 TapTap IEM 组全称 Intelligence Engine & Monetization,负责整个 TapTap 的流量资源分配和商业化相关的工作,是先进技术驱动的业务型团队。 TapTap 作为社区型游戏商店,属于典型的多边平台经济模型,涉及到用户、商家以及创作者三方需求的满足,平台的增长很大程度上依赖于这三者的连接效率。
IEM在其中扮演核心角色:以机器学习算法为基础,对 TapTap 各个业务场景进行精细化的建模和优化,驱动业务增长,包括但不仅限于首页的游戏推荐、首页的原生广告、动态内容 feeds 、搜索、内容 C2M 增长、对外广告投放以及 Push 推荐等,核心是以广告变现为主要的盈利模式。
随着新兴的游戏公司崛起,以及公司游戏业务老产品成熟度趋于成熟,APP上游戏的下载量开始下滑,月活用户数也较去年同期有较大幅度下降,最直接的影响就是商业化的营收和利润下滑。为了进一步提升广告营收促进业务增长,于是从2021年开始,公司围绕广告、搜索、推荐等业务引入阿里云大数据和机器学习技术(Hologres MaxCompute DataWorks PAI),成立大数据 AI数据中台,打通TapTap、心动游戏和开发者平台数据,通过大数据技术提升数据的智能化、精细化运营,从而反哺业务高速增长。
在下文中,我将会详细介绍如何通过阿里云大数据技术赋能TapTaP实时推荐等多个场景,助力业务精细化增长。
解决方案:大数据技术架构升级,促进业务实时化、数智化1、推荐业务需求:高吞吐的在线实时查询TapTap 的核心业务场景主要包括 App 首页实时个性化推荐、在线搜索、广告精准投放等。其中首页实时推荐增长乏力,因此我们本次大数据的建设核心主要以推荐业务为主。
点击率预估对于搜索、广告、推荐等业务而言,都是最核心的技术之一,可以准确地预估用户在不同场景下对于不同的「商品」的点击、下载以及各种转化概率,对于进一步提高各个业务的转化率、产品的DUA,以及各个场景的渗透率都有很大意义。
在业务一开始,我们团队就定位于打造业界最先进的深度学习模型预估体系,实现技术驱动商业,让用户发现好游戏的愿景。为了达成业务目标,在在产品选型阶段,我们从技术角度分析了目前推荐业务的需求:
1、高效的向量召回服务
向量召回是模型预估系统的第一个阶段,将样本数据通过机器学习训练模型后,根据用户和产品的特点,快速检索出少量用户可能感兴趣的物品,然后进行粗排/精排,这个过程就叫向量召回。这部分要处理的数据量非常大,要求速度快,以及使用的所有策略、模型、特征都不能太复杂。
2、高吞吐的毫秒级实时模型特征查询
我们需要对用户的特征进行快速的查询然后对接推荐引擎,作为线上实时推荐。特征服务需要对接线上系统,流量会非常高,因此一般要求低延迟,上线时间基本在10ms左右。同时对 TapTap 而言,上亿的用户量有着非常大量级的特征,因此系统还需要满足大容量(数亿行,数百列的大表)的存储需求。
3、模型高精度和自动化部署
模型的精确度计算,决定了最终推荐的效果,因此我们需要一款能有着高精度的模型训练框架。同时因为策略不同,我们也会不断修改模型的训练框架和验证效果,以验证出最佳的训练结果,期间需要涉及大量的模型训练,我们也需要模型能够自动化部署,这样能节约很多的开发成本。
基于上诉诉求,在选型阶段我们进行了多方调研,从性能、功能及运维成本多维度对比后,我们选择了阿里云云原生大数据AI一体化解决方案(Hologres MaxCompute DataWorks Flink PAI),帮助我们业务实现快速增长及商业化。
2、通过阿里云大数据建设的推荐业务下面是推荐业务的整体架构:
在最初的阶段,我们把所有数据都存放在EMR集群上,同时出于模型开发需要, 我们也引入PAI-TF,PAI-EAS等AI基础设施,借助MaxCompute湖仓一体方案打破数据湖与数据仓库割裂的体系,将绝大部分数据都整体迁移到MaxCompute,使得模型可以直接基MaxCompute中的数据进行大规模分布式深度学习训练。 而Hologres又在特征存储和召回阶段的多个场景中起到了关键作用。其中:
- MaxCompute主要是离线特征数据以及离线指标存储和处理
- Flink实时计算实时特征数据
- 机器学习PAI主要用于模型训练和模型部署
- Hologres作为统一存储引擎,加速MaxCompute离线数据,以及存储Flink实时写入的数据。并提供OLAP报表分析以及在线推荐查询。
- DataWorks作为一站式开发平台,所有的周期性调度,数据建模等任务都在DataWorks上进行,并提供数据治理、数据地图等功能,满足日常开发管控需求。
通过阿里云云原生大数据AI一体化解决方案,目前支持了 TapTap 推荐业务的多个业务场景,主要包括:
1、用户召回
通过Hologres的向量计算功能,以一些trigger如用户id,商品id,或者搜索词等, 召回PAI中训练的样本数据,并对接线上系统,以此来完成用户可能感兴趣商品的召回。
2、App首页实时推荐
MaxCompute 中存储离线 MaxCompute 存储离线特征数据,并对接 PAI 进行离线模型训练,训练后的模型数据通过 Hologres 加速查询。Flink 实时计算实时特征数据比如用户最近点击过的N个游戏、该游戏最近N分钟内的平均打分等特征数据,并关联实时生成样本数据写入 Hologres 中存储,以在线服务查询的方式提供给 App 推荐系统,以此完成在线实时推荐。
3、实时报表查询
在 TapTap 多个业务场景中,我们需要观察极为大量的业务指标和线上数据。对于支撑报表的数据服务MaxCompute 来说压力还是比较大的,我们需要查询数据量更大、响应更快的报表加速能力。因此通过 Hologres加速查询 MaxCompute 的数据,对接 QuickBI 报表,以此来满足内部运营对数据快速探索的能力,辅助下一步运营决策。
3、高可用部署保障在线服务读写分离因为推荐业务对系统的时效性有着非常强的需求,而我们之前将Hologres作为服务的中心,既承担数据存储,又有在线推荐的场景,同时又有报表查询场景的周期性导入以及大 query 查询的场景,当有偶发性大量写入或者大query消耗资源较多时,就会导致线上推荐服务会受到一点的影响,从而影响推荐效果。因此我们采用了 Hologres 的多子实例部署方案。主实例和子实例会共享一份存储,主实例主要用于离线数据导入,实时数据写入以及报表查询,子实例主要用于在线推荐。
通过多子实例的部署,解决了读写相互竞争资源,从而引发在线推荐业务超时的问题,真正的隔离了资源,提高了系统的可用性。
调整前:
调整后:
业务价值:推荐业务成为TapTap游戏分发最大来源通过Hologres PAI Flink MaxCompute DataWorks大数据技术加持后, TapTap 多个应用场景包括搜索,推荐,广告等数据变更更加智能化,实时化,其中主要的业务价值有:
1、实时个性化推荐
- 通过大数据 AI 的加持,App首页的流量从搜索为主转变为推荐为主,提升玩家使用体验,助力客户真正发现好游戏,显著提高了业务营收。
- 构建了完整的用户画像,通过数据运营的方式,帮助内部开发了解真实用户需求,从而对游戏进行快速迭代以及推陈出新等,实现了正向闭环。
- 数据写入和查询的效率变得更快,能够实时写入实时查询,加快对数据探索的效率,同时高流量的推荐业务查询毫秒级响应,快速助力业务实时个性化推荐。
2、低成本
- 在阿里云大数据体系下的深度整合,可以做到用极低的开发成本,机器成本将数据同步到线上直接使用,极大的提高的算法工程人员的开发效率,也减少了大量不必要的开发.
- 相比我们最早期的特征服务方案,将大规模特征序列化存储Redis, 改用 Hologres 之后,为我们团队带来了极大的效率提升,算法同学基本可以通过一键生成的脚本,快速把数据推到 Hologres ,大幅缩短了上线流程和时间。
- 自从使用 Hologres 之后,就再没有出现过特征爆存储的问题,这为我们后续迈向更高的DAU,更高的用户量级,都打下来了坚实的技术基础.。
3、在线服务高可用
通过 Hologres 主从实例的部署的方式,让业务实现了写入和线上服务查询隔离,即使是高并发查询也依旧可以保持较低的延迟,为搜索广告在线推荐提供了稳定服务。