发布时间:2023-10-19 16:00
好久没有给大家带来新的知识分享了,2022的第一篇(是的,你没看错!第一篇)就给大家讲讲商品模型的演进过程吧!希望对大家做的工作有所帮助~~
我们来假设:现在需要从零开始做电商,毫无经验,也没有竞对可参考,你就是全球独一份!你的系统会做成什么样呢?我们一起拨云见日吧!
站在技术的视角,要去做一个电商商品系统,毫无疑问你需要一个商品实体,同时为了方便用户在C端筛选浏览,继承自CMS思想(栏目-->文章模型),很容易想到给每类商品增加一个分类,把相似的商品归属到相同的类目下。比如:超市中看到的酒水区、粮油区就是对同类商品的一个分类。此时我们的模型如下:
别看这个简单的模型,初期他就可以跑起来了。但是这个分类的方式伴随业务发展遇到一个问题,一些知名品牌他不仅仅只生产一个分类的商品,比如小米,又造手机、又造手机壳!那么消费者想找小米手机壳,在上面的模型下怎么办?只能先找到手机壳这个分类,然后一个一个的翻!这个时候的诉求就是,系统怎么能够快速的把是小米的手机壳找出来呢?思路无非是两个:一是让消费者选择完手机壳后再选一下小米,或者消费者先选小米,然后再选一下手机壳!当然不管采用这两种方式的哪一种都有一个问题,【小米】该怎么在模型上表达呢?对应真实的物理世界,又抽象出品牌这个概念。
上面的模型演进后,消费者还想更进一步的快速找到自己想要的商品。比如裙子有风格、有长短、有材质各种差异;电子产品如手机有CPU、摄影头像素、电池容量等等差异。也就是说同一个类目下商品的属性会有差异,通过这些属性可以进行快速的筛选定位商品。
一个分类是可以有若干属性的,每个属性又有多个属性值;又因为一个商品对应一个分类,所以一个商品会有多个属性值。基于此,模型此时演化成:
到这里,好像基本的能力都可以满足了,但是在线上开展业务中,我们发现还有一个特点。比如买手机有:Xiaomi 12S Ultra 8GB+256GB 经典黑;Xiaomi 12S Ultra 12GB+256GB 冷杉绿 等多种选择,那么按照上面的模型,我们就针对这两种创建对应的两个商品。虽然从技术上可以满足,但是站在消费者角度,他想要先看到 Xiaomi 12S 的全部信息然后逐步选择,页面上要去怎么聚合这两个相关性很高的商品呢?
此时有两种选择,典型的就是京东与淘宝各自的方案(由于没有实际待过、看过代码。所以部分内容纯属YY+网络资料来源,如有雷同,纯属意外!)
京东选择的就是:每一种不同规格就对应一个商品(我们这里先不说sku概念),然后具体到消费端,会去把这些不同规格的商品进行一个聚合,我们可以大概猜测(因为没有真实见过,只能猜)他们的模型如下:
实际实施的时候,商品-包关系可能直接冗余存储在商品中。
在淘宝的商品模型中,将 Xiaomi12s 中的不同规格单独抽象出来,不同规格的商品我们称之为SKU(Stock Keeping Unit),他上面承载价格、库存等信息,商品上去承载 12s 不同sku的共有信息,如:类目、品牌、属性值等。
采用这种模型时,在消费端透出是基于商品维度的;通过商品去找对应的sku然后做页面渲染。
京东、淘宝这种不同的选择各有什么优缺点呢?还是说会存在一种模式碾压另一种?我们可以通过表格做一个简单的分析:
京东模型:单层商品模型
淘宝模型:双层商品模型
比较
消费端的SKU直接与供应链的货品对应
消费端的商品下的SKU与供应链的货品对应
京东自营历史背景,这种与供应链的交互更直接
信息治理、优化重复动作多
结构化信息治理只看商品
淘宝模型信息质量治理更便捷
每个SKU存的都是完整信息
SKU共有信息在商品上,SKU存差异化信息
淘宝模型存储成本更低,消费端呈现更直接(京东为了聚合展示还是需要虚拟加一层SKU包的概念)
SKU差异化更容易做(比如SKU维度的渠道、交易、履约等)
SKU维度差异化实施成本高(同前)
需要到SKU更细节差异化的业务,淘宝模型链路成本高(主要是稳定性与研发成本)
通过上面的分析应该能够理解类目、品牌、属性、规格、商品、SKU这几个概念是如何演化而来的了。但是这里好像还少了一个环节,SPU在哪里体现呢?接下来我们就继续上面的逻辑来推导出SPU的诞生过程。
其实SPU并不是所有电商一定要具备的,一般来说在自营电商中 SPU==商品,而在平台型电商中 SPU 是商品的上一级。为什么会有这种差异呢?我们逐步拆解来分析。注意,下面都是按照product-sku的两层模型来推导,没有涉及京东的一层SKU模型,个人觉得演进思路应该是大同小异的。
在只有自己一个商家的时候,每一个品在平台上都是独一无二的,比如小米官网买Xiaomi 12s,不会说有两个入口,进去对应的信息、价格、服务还有差异化,它一定是天然统一的。这个时候我们如果在商品上再抽象一个SPU独立概念出来没有意义,所以,此时的实际模型可以理解为下面的样子
自营不需要区分开SPU,为什么平台就一定需要区分开呢?这里继续用 Xiaomi 12s 来举例子,既然是平台型电商,那么卖这款商品的商家可能就会有很多。从物理概念上讲我们知道大家买的都是 Xiaomi 12s这款手机,在系统中都是独立的商家,我们怎么识别这些手机的关联性呢?除了关联性还有这些手机都是同一家生产的,他们有些信息都是一样的,每个商家都要重复填写吗?我们可以至少从下面三个视角来看问题:
供给