提升用户的使用体验才是产品升级的核心,本文将从业务发展以及技术沉淀两个方面来总结淘宝购物车的产品升级之路。
从入职以来到如今已有四年多的时间,非常幸运的是,短短职业生涯能有90%的时间都能参与或负责淘宝购物车业务域的开发,这几年来和购物车一起成长,从思考购物车与收藏夹的区别到逐步开始有了对购物车较清晰的定位,从被动接需求到开始主动思考购物车业务正确合理的业务方向,从仅仅完成淘宝业务诉求到提供可复用业务能力。和购物车一起经历5个大促,经历或大或小的产品升级、以及carts2开发方式变革,为极致的用户体验尝试过,为平台增量的提升探索过,利用技术升级帮助淘宝购物车完成业务迭代的同时,也一路沉淀了些通用的能力支撑其他业务快速迭代,也不断完善一套开发知识库帮助越来越多的购物车开发同学。那么是时候来写一些文字画一些图记录这些年,淘宝购物车的pd与开发到底做了哪些探索与沉淀,淘宝购物车到底完成了哪些产品升级,那些与你日常购物息息相关好用的功能是如何逐步迭代上线的。
这篇文章主要从业务发展以及技术沉淀两个方面来总结淘宝购物车的产品升级之路。
介绍淘宝购物车业务之前,先简单说下我对于购物车这个业务场景的理解,关于它的定位、定义、以及职责。
相信没有深入了解过的大多数人对于购物车的理解,都是对用户加购商品最基本的「增、删、改、查」操作,那么db内一条购物车记录到底存储了什么内容呢,如下图所示:
但实际上随着购物车基础功能不断强大,这四个字已经不足以概括购物车的职责了,那我就暂且以个人理解把购物车的基础功能归纳为下面四个字:加、改、算、凑。
加(&查):购物车的核心围绕db中存储的用户购物车商品数据,由于是用户私域,商品数据基本来自于用户主动加购,加购来源包括:详情、会场、订单等复购链路、猫超首页等。但为了进一步缩短用户复购路径,手淘购物车在21年迭代上线「常购」功能,利用算法计算用户高购买意愿的复购商品并通过离线手段自动加入到用户「常购」购物车(不占用户购物车容量且下单不删除),是手淘购物车为缩短复购路径提高购买效率的新的尝试。
改:用户将商品加入到购物车后,由于商品是实时动态变化的,变为失效、涨价、购物车容量不够等等用户都可以进入购物车对商品进行单个或者批量操作。实际上购物车的很多功能上线都在不断提高用户使用购物车的效率,例如失效更精细化到sku维度、用户加购提示容量已满可一件清理并加购等;
算:所谓「算」是指购物车商品价格的计算。「算」这件事情其实在购物车有不同程度的展现:
购物车在不断追求价格计算的正确性以及清晰度。
凑:我认为,购物车的数据核心是用户购物车商品,那么核心功能便是凑单,或者说合并结算。实际上目前为止在手淘大部分场景中,绝大多数的合并结算来自于购物车,这也就是为何每逢大促,订单有70%左右流量来源于购物车。「凑」主要体现在两点:
近两年,围绕「凑单」这个命题,购物车在转化和体验上都在不断尝试。
以上是购物车场景的基础功能,接下来我们视角再往外走一走,思考一下购物车在整个购物过程节点中的位置,或者在在淘宝基础链路的位置。我们把购物环节分为三个节点,即购前、购中、购后。如下图所示,购物车作为下单结算前的”临门一脚“,是「购前」环节中重要一环。
购物车承载着购前购中承上启下的职责。在购前环节中促成购买:对于下单犹豫的用户,用营销等手段提升用户决策效率,对于转化确定性较高的用户,精准的推荐让他买的更多;在购中环节提供流畅的交易体验:优惠计算的准确性和过程的清晰度以及各种业务形态商品的凑单合并结算等。
基于上述对购物车基础功能以及职责的描述,以及我自身对购物车的理解,我将购物车定义为:一个提供商品管理、凑单结算等能力,帮助消费者进行下单决策的合并结算工具;
最后我们再来探讨一个老生常谈的问题:购物车与收藏夹的区别?这个问题应该是每一个开发过购物车的同学都会面临的灵魂拷问。我第一次被问是在刚入职大约一两个月的一个新人培训上,第二次是在转正答辩上。我当时的回答基本纯粹是基于自身日常手淘的使用体验,主要围绕一个点:购买意愿强烈程度的区别;做购物车几年了,会有啥新的体会么?先来列一下当前两个产品的主要区别:
我认为对于一个用户来说,购买一个商品需要进行以下几个过程的决策,随着购买过程逐步接近尾声,用户的购买意愿以及确定性也是在不断增强的过程。不同的环节需要不同的工具来帮助用户完成。
因此总结两者之间几个比较重要的区别点:
虽然两个场景侧重点不同,但实际上目前收藏夹很多产品功能都值得购物车来借鉴,例如对于商品查找的高效率,包括分类、筛选、搜索等,对于购物车深度使用者来说,都是一个更好的使用体验提升。与此同时,我们思考下,购物车和收藏夹一定是完全无关的两个业务场景吗?是否存在某些关联功能可以互相弥补两个产品在使用体验上的短板?例如(纯属yy):
作为业务团队,以业务先赢为目标,以技术突破为手段,赋能购物车业务高效发展应当是我们的核心目标,那么购物车这个场景的业务发展目标又是什么?其实业务如何发展,首先要思考的是,这个域场景以及作为该场景的平台方面对的角色都有哪些?这些角色目前对应的痛点与诉求是什么?对于购物车业务发展,总的来说当下面对三种角色:消费者、商家与平台、业务方。
因此,面对购物车域的这些产品痛点与诉求,我们将购物车的业务发展目标总结为三个方向:
方向一:体验
购物车产品的使用体验体现在哪些方面?作为一个下单链路的基础产品,购物车管理的“物”为商品、首先面对的“角色”是消费者,那么我们思考人与商品的关系,在整个产品使用中,人(即消费者)对物(即购物车商品)存在以下行动动线:存储、浏览、管理、决策、结算。那么在以上几个环节中消费者操作是否高效则定义为购物车产品良好的使用体验。
方向二:转化
购物车作为一个基础产品,是否具备转化的空间?是否能为商家自运营营销提供可能,并最终给平台带来增量?这是我们在购物车业务发展中思考和数据挖掘的方向。数据分析与挖掘带给我们的结论:淘宝购物车中存在大量用户加购但没有被转化的存量商品,这些存量商品转化率随着加购时间越久,转化率越低,加购前两个小时成交占比60%左右。因此购物车实际上有巨大的空间去获得新的增量;如何增强货品的吸引力以及重新唤醒用户需求是购物车转化提升的两个方向,除此之外实际上从21年我们逐步开始寻找购物车外场景的增量,结合算法手段精准推荐让用户买的更多、更划算。
方向三:效率
无论是体验还是转化,业务的发展离不开快速的试错与迭代,最终离不开高效的研发效率。而研发效率又面对恶劣的业务现状和开发环境:业务上多端多平台,需求繁多复杂;开发上,需求响应慢、沟通协调多,重度依赖客户端发版。以上几点都严重阻碍业务迭代速度。需要依靠技术改造来改变研发模式,提高研发效率。
基于购物车业务发展的三个方向,我们拆解为两个主要的实施策略:消费者侧产品升级&研发提效。
策略一:消费者侧产品升级:购物车产品升级主要体现在两个方面:
1)基于购物车的工具属性进行体验优化;
2)基于购物车的场景特征促转化得增量;
策略二:研发提效,购物车研发效率的提升体现在两个方面:
1)技术的改造提升研发效率;
2)业务的闭环提升业务迭代的效率;
最后,我以我的理解将近两年购物车的发展(业务+开发提效)总结为一张大图(其中部分内容后面章节会详细介绍):
作为一个基础工具产品,无论KPI导向是GMV还是体验,我始终认为提升用户在日常以及大促的使用体验才是产品升级的核心,那么,当我们在说购物车体验时我们在说什么?我们又做了什么呢?
既然要提升用户的体验,那第一步需要了解用户的诉求与痛点,以21年初一份手淘购物车体验调研报告为例,从购物车使用人群分布、使用场景、使用痛点三个方面来看:
购物车是一个提供商品管理、凑单合并结算能力的基础工具,围绕两个核心:「人」和「商品」,人与商品的关系总结为两个,即人对商品的管理以及人对商品的购买结算。那么购物车产品使用体验也围绕这两个点展开。整体如下图所示:
商品管理
即用户按照当下购买意愿强烈程度对商品进行查找、增删改查等。影响用户进行商品管理体验的因素包括:
1)购物车容量问题导致的加购卡点;
2)商品查找与发现的效率;
3)商品管理即各种增删改查的操作路线是否简单高效;
商品购买
即用户在购物车不断选择商品、算价、凑单、再算价最终完成下单结算的购买过程,也是不断做下单决策的过程。影响用户下单决策效率我认为有三件主要的事情:
1)商品上信息的高效表达;
2)不断选择商品的过程中价格的准确性以及优惠计算的清晰表达;
3)不断选择商品过程中高效的凑单引导(包括凑单进度的实时更新、同档位凑单商品的筛选、可凑单商品的推荐以及不中断的凑单体验);
当我们明确购物车使用体验的目标后,策略及具体落地的事情便围绕展开。
3.2.3.1 凑单体验专项
✪ 什么是凑单
所谓凑单,顾名思义指用户为了达成某个门槛获取某种优惠从而购买多件商品的过程。线上线下都是如此。实际上这是卖家常用促销手法:对于线下/线上商家店铺,为了让用户买的更多会让利推出多种店铺内的满减/满折/满送优惠,消费者为了达到某个门槛,会在该店铺内继续选择商品凑单;那么对于平台侧(或者对于线下商场)来说为了获取促销活动更高的成交额,会在全网/全商城范围(已报名满减活动)内推出满减活动,例如天猫大促占比最高的营销手段,跨店满减以及品类券,均为跨店铺凑单玩法。
✪ 一些客观数据
从天猫双十一期间,使用跨店满减且来源为购物车的相关订单数据统计来看,购物车的合并结算功能天然成为消费者大促凑单工具,也就几乎是手淘唯一的凑单场地。而手淘购物车不断发展的凑单功能(例如满减商品氛围表达、凑单引导、满减筛选等)也成为用户购物利器。
✪ 用户对凑单的诉求有哪几类
实际上购物车凑单功能的迭代也是随着用户诉求的变化而演进,当然也是由于平台营销规划一年比一年复杂导致。营销规则及玩法的复杂化不断提高用户凑单的难度。根据21年用研提供的用户对于购物车凑单类的相关诉求总结来说,一直以来用户对于购物车的凑单使用痛点主要在于:
✪ 购物车的凑单功能发展历程
凑单是购物车大促期间的核心体验之一,凑单相关的优化迭代也是近两年购物车业务发展的重要命题,这里一并总结针对用户的痛点和诉求购物车凑单的四个阶段以及每个阶段解决的核心问题。首先如下图来看下目前为止用户在淘宝购物车凑单效率逐步提高的过程:
⍟ 阶段一:凑单进度实时更新
1. 在用户挑选商品的过程中,实时帮用户计算当前已减金额,以及距离下一个档位仍旧需求购买的金额;
2. 提供用户凑单入口,帮助用户快速发现购物车外同档位商品,更快达到门槛,提高凑单效率。
1. 凑单入口跳到承接页,加购后返回购物车页面刷新,整个凑单链路是断层的;
2. 无法帮助用户快速找到购物车内同档位的满减品,毕竟购物车内商品购买意愿还是相对较高的。
⍟ 阶段二:同一档位满减商品筛选
勾选商品,出现凑单条,筛选购物车内当前挡位商品,浮层内凑不够,外跳引导加购;
实际上筛选满减这一功能,除了业务上有了突破外,也是技术升级支撑业务发展典型之一,整个筛选方案的技术体系同时支撑了后续NewCart、搜索、预热态等项目落地,那关于技术上的挑战与解决方案可以仔细阅读“购物车筛选能力”章节。
1. 快速找到购物车内满足统一档位的满减商品进行凑单;
2. 提高购物车内凑单效率;
1. 跨店满减订单,用户下单金额距离下一门槛还差25%的量级,占比20%,目前存在不少用户小金额凑单存在卡点;
2. 用户当前购物车内跨店满减筛选浮层,从目前凑单链路上看,用户的动线是断层的;
跨店满减筛选是淘宝购物车近些年第一次出现「商品筛选」相关产品功能,一方面在产品设计上经历多轮评审,更重要的是业务需求上线更为购物车沉淀了一套目前为止最合理的筛选技术能力,后续陆续帮助预售筛选、降价筛选、常购、搜索等功能上线,相关技术突破可以直接阅读“购物车筛选能力”章节。
⍟ 阶段三:精准推荐及完整不中断的凑单链路/省心凑
在同档位满减商品筛选浮层内,根据用户勾选商品算价结果距离下一个档位金额之差,算法实时动态推荐相应金额的商品,并且用户加购(在信息流/商品详情内)后购物车不刷新,凑单结果保留并自动更新勾选该加购商品后的算价结果。
1. 解决用户小金额凑单卡点问题,帮助用户以最优惠的方式买到更多有购买欲的商品;
2. 用户选择被推荐的商品后,自动更新算价,凑单链路不再中断;
1. 路径还是相对较深;
2. 算法准确度需要不断升级提高;
另外值得一提的是,省心凑业务的上线也是技术突破支撑业务发展比较好的例子。省心凑项目的落地,实际上实现了几个突破(客户端与服务端):
整体用户动线如下:
⍟ 阶段四:预热期提前凑单
大促预热期间出现抢先看入口,价格抢先看页面可计算大促正式期价格;
提前算清大促正式期的价格,提前凑单;
目前预热期的凑单结果实际上和正式期是完全割裂的,用户的体验也是有断层的;
另外,购物车价格抢先看项目也是21年购物车做的一个比较大的尝试与突破,首次让我们在预热期提前看到正式期的价格。值得一提的是,整个大促放量期间,用户诉求声量非常高,用户迫切希望使用的相关诉求在当天达到3900+,最终整个双十一期间,凑单相关求助降低34.8%。项目组也因此获得集团小草莓、手淘体验年度TOP榜、手淘体验大众评审TOP榜,并已通过集团审批递交国家专利申请。
3.2.3.2 算价体验专项
购物车最核心的功能之一是凑单,但是凑单一定是基于准确或者基本准确的价格计算,这里的价格计算包括商品卡片上渲染的单品优惠,还有店铺优惠、跨店优惠等等。而众所周知,双十一的营销规则越来越复杂,这也给购物车的价格体验带来了技术上的复杂性。营销规则愈发复杂,优惠种类愈来愈多,消费者理解起来也愈发困难,这个时候,购物车就是下单前最后一道防线,准确的价格计算,清晰的优惠计算表达,以及贴心的最优解获取入口是购物车价格体验的核心目标。一张图来较为完整的描述购物车在价格体验提升上都做了哪些事情:
目标一:因为营销的复杂性和各个场景的特点,实际上从导购、购物车、到下单各个环节都存在一定程度上的价格不一致问题,购物车需要不断完善动态计算,保持和上(详情)下(下单)游的价格一致性;
购物车价格一致性
目标二:优惠具备清晰的表达。有时候用户的很多客诉咨询不是因为价格不对,而是用户无法理解优惠计算的结果。那么购物车的优惠明细就担负着让用户清晰的理解价格计算过程的使命;
购物车优惠明细升级,优惠明细承担了手淘购物车优惠计算说明的任务,到目前为止经历过三次比较大的升级,无论从开发方式或是用户体验来看,都有了非常大的进步:
【版本一:weex阶段】
最初版的优惠明细采用weex版本,用户点击结算栏,打开weex页面,页面重新向服务端发送请求,请求入参与用户最后一次update请求入参相同;如下图:
这一版本存在几个较大的问题:
【版本二:奥创组件化阶段】
基于愈发复杂的营销活动以及购物车自身优惠明细的体验问题,我们在NewCart项目中,对优惠明细进行了升级改造,主要改造点包括:
【版本三:优惠表达升级】
版本二基本解决了用户体验问题,但是实际上,对于购物车来说,作为下单前最后临门一脚,价格相关体验也是非常重要的。价格体验我认为主要体现在两个方面:与上(详情)下(下单)游的价格一致性,以及如何能把优惠计算过程清晰的表达给用户,即除了带给用户正确的价格外还要能够清楚的告诉用户这个价格怎么来的。而优惠明细则承担了这个重任。因此,第三版的升级中,我们主要做了以下几个事情:
目标三:除了准确性和表达清晰外,实际上购物车应当一直有个使命,如何帮助用户看清优惠最优解并能够通过各种渠道获得优惠最优解;
购物车营销能力,在上述繁杂的优惠营销规则中,某些权益是需要用户主动领取而得,例如店铺优惠中的商品券、单品券,跨店优惠中的品类券,以及淘金币等用户权益。在淘宝中有包括详情、卡券中心在内的一些卡券领取入口,对用户获取最优解来说无形中又增加了一些负担。因此购物车除了做营销表达外,也上线了例如领券结算、淘金币领取算价、惊喜券自动领取等能力,帮助用户缩短权益获取链路,以最高效的方式获得商品购买的最优解;
3.2.3.3 购物车商品管理体验
✪ 购物车商品管理体验:容量问题
以购物车一月求助量来说,主要为无法加购相关,而其中大约超过一半左右是由于购物车容量已满导致;而加购失败后的用户行为统计中,日常大约只有少部分商品占比会通过详情下单,1/3左右的商品会再次将该商品加购,而其他加购流量则被流失掉。加购路径的阻断,成为用户使用购物车的最大问题之一。容量问题的解决这些年也在不断优化,总结来说,经历了以下几个阶段:
⍟ 阶段一:直接扩容
为用户扩容无疑是最直接当下最立竿见影的方法,从17年到现在为止,淘宝购物车也采用了不同的扩容手段:
但实际上,用户对容量的诉求远不会停止,单纯扩容实际上并没有从根本上解决问题,并不是长久之计。
⍟ 阶段二:直接解决加购卡点
在用户因为容量满加购失败卡点处,提供更多的选择,选择一键已失效或购买意愿较低的商品移入收藏夹,而成功加购当下购买意愿更强的商品。在用户的关键行为阶段上针对加购失败进行有效的承接,通过复合操作等策略降低用户操作成本,缩短用户路径,有效挽回高价值的加购意愿商品,进而挽回GMV的流失。
⍟ 阶段三:刺激用户主动清理
引导清理
根据数据显示,用户在遇到加购报错弹层时,大约50%的用户会主动找商品替换删除,但是其中只有20%的用户会回到购物车进行批量删除。加购清理功能虽然帮助用户在详情加购处解决当下商品的加购问题,但单商品删除效率极低,需要在适当的时机引导用户进行商品批量的剔除清理。
清理提示的出现时机也是一门学问,目前一期首先根据用户购物车商品数量进行选择透出。后面会和用户上一次下单的商品相关类目等因素进行清理入口出现时机的判断。
优化删除/清理体验
对于愿意回到购物车进行批量清理的用户来说,提高删除商品的体验,让用户删的更多删的更爽也是非常重要的。
✪ 购物车商品管理体验:商品发现问题
商品是购物车的核心,帮助用户将由购买意愿的商品成功高效的加入购物车是第一步,那么第二步则是如何让用户在购物车中能够快速发现/找到期望的商品。
⍟ 快速搜索定位到商品
购物车月均搜索相关舆情约55条,排在购物车相关舆情问题top5;当用户有明确购买意向时,搜索能力实际上是用户快速找到商品的第一利器。
⍟ 商品分类筛选
除了搜索能力帮助用户有明确购买意向时快速找到相关商品外,淘宝购物车还提供了多个商品分类筛选的入口,进一步提高用户发现商品的效率。除此之外,提高一些低购买意愿商品的触达效率,让购物车的商品「活」起来,提升用户体验的同时带来转化的提升。
购物车作为一个基础链路上偏工具属性的产品,是否存在转化提升的空间?对于购物车来说,无论是转化还是体验都离不开「人」与「商品」两个核心,我们分别从这两个方面去分析购物车场景的转化空间在哪里。
⍟ 人
从消费者人的角度来说,提升转化,我认为可以总结为三件事儿:
但实际上,用户对容量的诉求远不会停止,单纯扩容实际上并没有从根本上解决问题,并不是长久之计。
⍟ 商品
再回到商品角度来说,目前购物车中存在大量未被转化的商品,其中包括正常商品以及大约17%左右的失效商品。当我们分析商品的加购时间与其转化率之间的关系,会发现一个很有意思的现象,商品在加购超过一天后,转化率会急剧下降。这就意味着随着加购时间增加,用户对该商品的购买欲望愈来愈低,降低的原因可能是:商品随着加购逐渐沉底,曝光效率开始降低;商品价格或者商品状态没有变化,或者有明显变化但并没有将变化触达给用户;基于此我们将购物车商品分为三种类型:
从「人」、「商品」角度来看近两年淘宝购物车在转化方面总结下来整体策略如下:
提升购物车转化的核心是让购物车商品“流动”起来:失效商品一部分通过用户加购失败替换,一部分通过找同款而转换为更高购买意愿商品;对于沉睡商品来说,抓住其价格或者状态变化的关键点有效触达用户,提升用户的购买欲,从而带来转化的提升;
3.3.2.1 沉睡商品唤醒项目
我们通过回答几个问题来说明项目的业务背景:
那么这里有两个重点:什么时候唤醒以及如何唤醒,即唤醒策略和触达策略。
【唤醒策略】定义影响商品下单决策的状态
价格变化
状态变化
内容变化
【触达策略】:唤醒手段从站外到淘宝购物车内,不同层设计不同的信息触达手段
目前为止淘宝购物车已支持日常降价商品桌面push提醒以及回流机制,后续会增加更多价格变化以及商品状态变化的唤醒策略,以及淘宝底部bar提醒等触达策略。
3.3.2.2 惊喜券项目
1)从购物车角度出发:分析购物车商品加购时间与下单转化率关系分布,加购时间在20min左右出现拐点,即用户在加购20min后,商品转化率开始明显降低;而同时,购物车存量商品信息中有大量加购时间超过一天的商品;这意味着这些加购时间较长的商品转化率存在较大提升空间;
2)从商家运营能力出发:目前平台逐渐培养商家自运营用户群体的心智,提供商家运营客户的平台工具,例如淘宝直播-针对从购物车进来的用户会有明确的优惠券发放。面对购物车存量商品情况以及人与货品关系匹配的场景,我们希望能提供针对交易链路购物车场景的商家自运营工具,商家针对有明确购买意愿但是迟迟犹豫的用户,可以分渠道进行针对性营销,使得用户犹豫点消失,进而成为转化;
购物车惊喜券业务经历三次业务模式优化,我们从「商家」和「消费者」模块分别总结如下图
淘宝购物车各种业务场景的创新尝试离不开技术的探索与突破,当然技术的发展也一定是为业务服务,以业务先赢为目标。但是,购物车作为基础链路上少有的增删改查全部具备的列表翻页场景,客观存在特有的一些技术开发难点。那么本部分内容就来分析下购物车业务开发的技术难点,以及如何一一突破来支撑业务发展,并沉淀通用可扩展能力进行业务提效。
首先先用一张大图描述下淘宝购物车的技术架构,有个全局的认识:
⍟ 购物车业务场景特点
⍟ 购物车开发技术难点
基于购物车业务场景的特点,以及近些年开发购物车的经验,我认为淘宝购物车业务开发最大的技术难点有二;
⍟ 购物车筛选能力
2020年双十一之前,淘宝购物车是没有任何商品筛选功能的。而商品筛选分类,提高发现效率一直是用研报告中,top级别的用户诉求点。
最终结合项目具体诉求我们选择客户端筛选的方式,方案时序如下图所示:
客户端筛选的本质,实际上从客户端的角度来看,是根据各个组件的筛选标以及当前筛选页对组件进行显示/隐藏,实现最终的商品筛选。例如当前购物车主要组件如下:
那么对于各个筛选页面来说,各筛选态的结构如下:
结合购物车分页渲染商品列表的场景,使用客户端筛选方案,实现分页场景下勾选态保留的购物车筛选能力,在独立购物车、筛选入口方式、筛选项策略维度均具备扩展性;并支撑大促凑单筛选、预售筛选、多Tab等业务上线;
淘宝沉淀的客户端筛选方案最终支持多个业务落地,包括跨店满减、预售等浮层筛选,以及NewCart中降价、常购等多Tab模式筛选:
4.1.3.2 交易核心如何引入算法导购链路
这里我们依旧以淘宝惊喜券项目为例,项目背景直接阅读“惊喜券项目”部分。
惊喜券项目伴随业务发展最终沉淀技术架构如下图所示:
项目落地的过程中,主要围绕以下两个挑战与命题进行探索与沉淀:
挑战一:活动商品的筛选
业务上氛围的透出面向用户购物车全部商品,以及购物车分页查询的事实意味着商品的筛选只能依靠基础商品id信息,那么大数据量活动商品id的存储和过滤的性能,在购物车核心链路便成为第一项技术挑战;
如上图所示,三个业务阶段的发展,对应三种不断优化的核心链路商品筛选方式,从diamond、到内存布隆过滤到最终选择的tairBloom方案,他具备以下优势:
1)使用RDB存储规模级活动商品信息,打破购物车内存限制对参与活动商品量级的要求;
2)由定时推送大文件数据到购物车机器,改为对远程RDB存储信息进行实时维护,降低对购物车应用自身稳定性风险的同时进一步提高业务的确定性;
挑战二:核心链路业务确定性及算法接入
业务确定性:由于无法在核心链路引入拉菲等导购依赖,只能依靠前置商品筛选过滤,存在时延,营销利益点氛围透出用户侧表现具有不确定性,体验较差;
人货匹配的精准度:阶段二方案在购物车同步链路中使用基础规则针对用户进行商品营销氛围的透出,而人与货的匹配在交易核心链路由于rt稳定性等要求,无法引入算法进行计算获取最优解;
解决方案描述
将导购链路依赖通过异步链路下发,保障核心链路稳定性的同时获取业务的准确性及算法接入的能力:
氛围的渲染从同步链路解耦,既保障核心链路稳定性,同时保障了业务的确定性并提供了算法接入可能,帮助业务逐步追求最优解;
核心结果
最后关于算法,再聊一些题外话,实际上近两年购物车有一个非常明显的变化,即业务与算法结合的场景越来越多了,这是大流量营销场景发展必然的诉求。同时更多大胆的技术突破与尝试为业务发展也带来了可能。目前购物车与算法结合的场景有:降价商品push推送、购物车常购、省心凑等。当下购物车链路中涉及算法以及异步的场景链路如下:
但我认为基础链路与算法的更合理、正确的合作模式依旧需要进一步的探索。做基础链路业务时间长了,有一个很难扭转的意识,即我们更多关注功能的正确性,很容易忽视算法的准确度,以及最终项目数据中算法的价值体现。例如常购和省心凑,实际上最终决定这两个功能是不是好用,利用率是不是高,除了操作功能正确性外,更重要的是算法推荐的个性化与精准度,购买决策核心永远都是商品本身。算法的准确度如何衡量、算法的结果价值如何评判,如何推送业务更好的迭代,是需要我们业务开发和pd一起往前探索的重要一步。
实际上这些年在支撑淘宝业务发展的同时,也在不断沉淀通用的能力,赋能更多的独立购物车或者其他垂直业务快速迭代,例如:购物车优惠明细开发规范、购物车领券结算开发规范、购物车分组结算开发规范、购物车凑单氛围开发规范、购物车筛选能力开发规范、购物车商品卡片氛围开发规范、购物车上下游传参说明、奥创开发相关知识。
近一年,淘宝购物车在提升转化和体验上,都有业务上的突破以及技术上的升级。例如从平台促转化来说,FY22财年以前,如果说我们都在找寻用户购物车内部商品的促转化点,提升购物车商品的流通的话(例如唤醒低转化商品激活购买欲、筛选商品提升购买决策等),那么FY22财年,我们开始尝试与算法进行合作,探索一些精准符合用户预期的购物车外的转化场景,例如常购、例如省心凑(凑单推荐),在提升用户体验的同时,获得购物车外的GMV场景。再例如体验上,FY22财年是第一次开始逐步关注用户体验的一年,购物车作为一个具备强烈工具属性的业务场景,用户体验应当永远放在第一位,FY22财年,淘宝购物车在价格体验上做了不少事情,例如高峰期算价不降级,和下单的价格计算一致性,购物车算价明细表达优化等。
那今天以后的淘宝购物车方向在哪里?购物车是一个提供商品管理、凑单合并结算能力的基础工具,围绕两个核心:「人」和「商品」,目标依旧是提升用户使用体验及下单决策效率;
商品管理方面
凑单算价方面