商品模型:SPU、商品、SKU概念模型设计
商品系统是电商SaaS、新零售SaaS最基础、最核心的系统之一。商品系统几乎需要支撑所有业务系统,商品详情、购物车、订单、履约、结算、售后、库存、供应链等,都需要依赖商品系统的能力。为了保障业务的稳定性、可扩展性,必须要非常重视商品系统建设。
优秀的业务模型是建设高质量商品系统的基础,在建设系统的过程中,需要对商品基础概念有非常清晰的认识。
商品基础概念
SPU概念
SPU(Standard Product Unit),指的是标准化产品单元,是商品信息聚合的最小单位,是一组可复用、易检索的标准化信息的集合,该集合描述了一个产品的特性。又可称为平台商品。
SPU的概念来源于电商平台业务,第一个关键点在于SPU模型会提取商品的共性属性用于信息检索,这些属性通常是能够快速识别商品,并且消费者较为关心的属性;第二个关键点在于SPU的属性是全平台标准化的,这样才能有效保障消费者的检索体验与商家利益,例如,消费者搜索256G的iphone12,如果有填写容量的商品能搜出来,没填容量的商品搜不出,这样的设计明显不合理,因此平台需要规范所有商品的关键属性。
商品概念
商品概念特指商家的商品,一个商家可以有很多商品,若N个商家卖同一个商品,例如iphone13,该场景下有1个SPU实例,N个商品实例。每个商品可以有多个规格,例如大小、颜色、尺码等。
SKU概念
SKU(Stock Keeping Unit),指的是最小存货单位。以iphone13为例,关键规格有颜色(黑色、红色、银色、金色)、容量(128G、256G、512G),可以组合出4x3=12个SKU。
不同业务模式下的商品模型设计
自营电商业务
自营电商业务对商品进行统一生产或采购、商品展示、在线交易,并通过物流配送将商品交付到消费者手中,业务模式相对比较简单,需要2层商品结构即可(自营商品、SKU)。

电商平台业务
电商平台由于拥有多个商家在平台售卖商品,因此商品模型比自营电商业务要复杂,通常需要三层商品结构(SPU、商家商品、SKU),SPU主要用于解决相同的商家商品信息统一的问题,便于平台运营管控整个平台商品体系。
随着业务发展,后续又加入了CSPU的概念,C是Child缩写,通过CSPU概念进一步管控商家发布的SKU。例如,假设iphone13只有银色64G、银色256G、灰色64G、灰色256G四种SKU,电商平台可以设置4个CSPU,商家的SKU可以直接继承这4个的CSPU,既规范了平台商品,也提高了商家发布商品效率。

电商SaaS业务
电商SaaS业务主要是帮助商家搭建线上商城,完成交易转化。与电商平台业务有个非常大的区别是,电商SaaS业务由于没有平台属性,不需要对商家的商品进行强管控,因此SPU概念不是必须的,即只需要2层商品结构即可(商家商品、SKU)。

新零售SaaS业务
新零售SaaS的商品模型远比电商SaaS复杂,因为新零售商家通常有复杂的组织架构,例如连锁体系,品牌加盟体系,同时新零售商家有全渠道运营的需求,即商家在尽可能多的线上渠道、门店渠道进行销售,以满足更多消费者的购物需求。因此商品系统需要设计更加复杂的商品模型,才能支撑起这些业务模式。

小结
商品领域的核心概念是SPU、SKU、商品,不同的业务模式会衍生出不同的商品结构与商品关系,要警惕过度设计与设计不足,过度设计会导致商品系统复杂度高,设计不足导致扩展性差,只有深入了解业务背后的本质需求,才能选择合适的方案。
商品模型:SPU、商品、SKU概念模型设计的更多相关文章
- 42、生鲜电商平台-商品的spu和sku数据结构设计与架构
说明:Java开源生鲜电商平台中商品的spu和sku数据结构设计与架构,包括数据库图标与架构分析. 1. 先说明几个概念. 电商网站采用在商品模块,常采用spu+sku的数据结构算法,这种算法可以将商 ...
- Java生鲜电商平台-商品的spu和sku数据结构设计与架构
Java生鲜电商平台-商品的spu和sku数据结构设计与架构 1. 先说明几个概念. 电商网站采用在商品模块,常采用spu+sku的数据结构算法,这种算法可以将商品的属性和商品的基本信息分离,分开维护 ...
- 商品的spu、sku及其之间的关系
今日来总结一下,电商系统中涉及到商品时必然会遇到的几个概念,SPU.SKU.单品等.彻底搞懂和明白了这几个概念对我们设计商品表是十分必要的前提条件. SPU:标准化产品单元 SPU = Standar ...
- SPU与SKU概念
1. 什么是SPU SPU 是商品信息聚合的最小单位,是一组可复用.易检索的标准化信息的集合,该集合描述了一个产品的特性.即:某一款商铺的公共属性. 通俗点讲,属性值.特性相同的货品就可以称为一个 S ...
- SpringBoot电商项目实战 — 商品的SPU/SKU实现
最近事情有点多,所以系列文章已停止好多天了.今天我们继续Springboot电商项目实战系列文章.到目前为止,整个项目的架构和基础服务已经全部实现,分布式锁也已经讲过了.那么,现在应该到数据库设计及代 ...
- tp5 商城商品模型删除
1:控制器代码 public function delete($id) { //验证id是否正确 $id if (!intval($id)) { return getJsonData(10010, ' ...
- 商品spu 和 sku的关系
总结一下在目前的电商系统中的商品涉及的属性spu,sku.搞清楚两者之间的关系对表的设计非常重要 spu Standard Product Unit (标准产品单位) ,一组具有共同属性的商品集 SK ...
- 在电子商务里,一般会提到这样几个词:商品、单品、SPU、SKU
简单理解一下,SPU是标准化产品单元,区分品种:SKU是库存量单位,区分单品:商品特指与商家有关的商品,可对应多个SKU. 首先,搞清楚商品与单品的区别.例如,iphone是一个单品,但是在淘宝上当很 ...
- 电商系统中的商品模型的分析与设计—续
前言 在<电商系统中的商品模型的分析与设计>中,对电商系统商品模型有一个粗浅的描述,后来有博友对货品和商品的区别以及属性有一些疑问.我也对此做一些研究,再次简单的对商品模型做一个介 ...
随机推荐
- python办公自动化系列之金蝶K3自动登录(二)
接上一篇博文python办公自动化系列之金蝶K3自动登录(一),我们接着聊聊利用python脚本实现金蝶K3 Wise客户端自动登录这一需求. 如上图所示,自动选择[组织机构]后,我们还需要驱动[当前 ...
- Docker使用Dockerfile构建新的镜像
构建镜像步骤; 1.创建Dockerfile文件,该文件是一个用来构建镜像的文本文件,文本内容包含了一条条构建镜像所需的指令和说明. vim Dockerfile //每一个指令都会在镜像上创建一个新 ...
- MySQL高级篇笔记
目录 MySQL体系结构 存储引擎特点 InnoDB底层文件 MyISAM底层文件 索引 慢查询日志 profile详情 explain执行计划 EXPLAIN 执行计划各字段含义: 索引使用 最左前 ...
- 垃圾陷阱 && [NOIP2014 提高组] 飞扬的小鸟
#include<bits/stdc++.h> using namespace std; int d,n,dp[1010]; struct node{int t,f,h;} a[1010] ...
- P2678 [NOIP2015 提高组] 跳石头
#include<bits/stdc++.h> using namespace std; int l,n,m,a[100010];//与起点的距离 bool check(int d) { ...
- 我们一起来学Shell - shell的循环控制
文章目录 Shell 循环之 for 语句 Shell 循环之 while 语句 Shell 循环之 until 语句 Shell 循环控制 break指令 continue 指令 exit 指令 s ...
- Redis 源码简洁剖析 16 - 客户端
整体概述 客户端属性 套接字描述符 标志 输入缓冲区 命名及命令参数 命令的实现函数 输出缓冲区 客户端的创建与关闭 创建普通客户端 关闭普通客户端 参考链接 Redis 源码简洁剖析系列 整体概述 ...
- 实战 | 关于随手一点就发现XSS漏洞这件事
起因 今天正在做一个项目时,需要找一个云接码平台接码去登录系统.当我随手从百度找了一个接码平台时,一个偶然的发现,有了今天这篇文章. 正文 当我进入这个接码平台随便找了个手机号,然后等了好几分钟都没啥 ...
- 阿里云K8S节点NotReady状态
开发部署pod的时候在wayne平台上部署不上去,删除也删除不了 先删除 kubectl delete pod pod-name --grace-period=0 --force 删除之后然后部署新的 ...
- Html简单标签
学习html <h1> 标题标签</h1> 标题标签 <p>段落标签</p> 段落标签 换行标签</br> 换行标签 水平线标签</h ...