当前位置: 首页 > news >正文

供应链系统设计-供应链中台系统设计(六)- 商品中心概念篇

概述

我们在供应链系统设计-中台系统设计系列(五)- 供应链中台实践概述 中描述了什么是供应链中台,供应链中台主要包含了那些组成部门。包括业务中台、通用中台等概念。为了后续方便大家对于中台有更深入的理解,我会逐一针对中台中重点的模块展开进行阐述。今天,主要和大家来聊聊商品中心。

我主要是要阐述思路结构如下:

什么是SPU、CSPU、SKU和ITEM

为什么会有这些商品概念存在

什么是类目

他们之间的关系是什么

什么是商品

之前我们讲供应链系统设计-何为“前”“中”“后”台系统,介绍过前中后台业务以及二维业务矩阵。


对于业务单元而言,不知道大家记不记得,我在《供应链系统设计 - 需求采集系统设计概述》文章中提到组成业务的二维矩阵,其实不同的竖向矩阵中,汽车业务、手机业务、小家电业务等等,其实对于采什么是有限制的。例如:小家电不能够采购手机业务的相关零件或配件。因此,对于业务单元也决定能够采什么,不能能够采什么。

一个业务场景(小的业务单元),是有场 + 货组成的。

场就是所谓的提供服务消费者的渠道,线上线下就是不同的场,京东、淘宝就是线上不同的场,淘宝和咸鱼也是不同的场,聚划算+天猫也是不同场,线下的山姆和沃尔玛就是不同的场。

因此,我们可以看出来,其实不同的场,对于同一个货品来说,可能会变成不同的商品。

在一个集团公司下,可能有多个业务,不同的业务可能都会有自己线上或线下商城,但是同样的东西,在不同的前台业务商城上,可能会是不同的商品,但是可能对于内部来说就是同一个东西。因此,我们这边需要引入如下的一些概念。

SPU、CSPU、SKU和ITEM的概念

SPU(Standard Product Unit):

  • SPU是产品分类中的一个更高级别的概念,它代表了一个产品系列或产品组。
  • SPU通常用于描述具有相似特征的产品集合,但可能在某些属性上有所不同。
  • 在SPU级别,产品共享相同的核心属性,但可能在颜色、尺寸等属性上有所变化。

SPU是介于类目与商品之间的模型,在很多业务中,类目太粗,商品太细,需要一个合适的维度对同一种商品进行聚合,这个模型就是SPU,通俗讲,就是产品,就是不同卖家销售的同一种商品,商品可以理解包含卖家及销售信息,而产品不包含。

SPU主要包含了:定义一类商品的关键属性、绑定属性。

关键属性:关键属性决定一个唯一的SPU,例如:小米手机 15手机,就决定品牌是小米,手机型号是15系列。

绑定属性:绑定属性是关键属性的补充和细化,比如当小米 15已经明确了这个产品后,一些其他的特性都被带出来了,比如CPU型号,屏幕尺寸等,需要进一步补充这些属性内容,更进一步明确一个产品。绑定属性例如下图所示:

只要是小米15手机,绑定属性信息就是一样的,不需要每个商家去进行编辑。

一句话讲清楚:SPU就是我们通常说具体的要买的什么产品,可以理解为具体一款产品。例如:IPhone 16、IPhone 16 pro、小米手机 15等。

CSPU(Child Standard Product Unit):

CSPU可以理解为是SPU的一个补充,有的时候业务希望商品能够被准确的表达。例如:果粒橙饮料,有300ml的小瓶装,也有960ml的大瓶装。因为SPU代表的就是一个产品,维度在“品”上面。SPU是关心300ml还是960ml的,因此,CSPU就孕育而生。

我们把容量属性,300ml、960ml,定义为产品的销售属性,就是一个产品需要销售出去,而需要具备的属性。例如:小米手机 15这个产品是没有办法销售的,你需要选择颜色和存储容量才可以进行购买。如下图所示:

红色框中可以认为是销售属性。因此,CSPU是可以完全确定一款商品的。

因此,CSP = 关键属性 + 绑定属性 + 销售属性 = SPU + 销售属性。

一句话讲清楚:CSPU就是我们通常能够买到的具体产品。例如:小米15手机 黑色 12G+256G。

ITEM

产品最终是需要商家来进行售卖的。因此,商家会在商家后台发布产品,商家发布的这个产品就是ITEM。

可以理解为 ITEM = 商家 + SPU,同样可以理解ITEM是SPU的一个实例。不同的商家,发布同一个SPU,会会生成不同的ITEM。

ITEM是可以被搜索到的。ITEM是会受到SPU规范的限制,例如:ITEM的关键属性+绑定属性,都是由SPU决定的。

SKU(Stock Keeping Unit)

SKU是库存管理中的最小单元,库存量单位,即库存进出计量的单位,可以是以件、盒、托盘等为单位。在图片中,SKU1和SKU2是ITEM的具体变体,它们可能在颜色、尺寸、款式等方面有所不同。每个SKU都有唯一的标识,用于区分不同的产品属性。

可以把SKU理解为CSPU的一个实例,不同的商家都会有自己的商品库存。最后客户购买的就是一个个的SKU。SKU的关键属性+绑定属性+销售属性,都是由CSPU决定的。

一句话讲清楚:可以被购买的产品,可以理解是CSPU的一个实例。例如:小米15手机 黑色 12G+256G,价格 4999,库存:9999

如下图确定了黑色、12GB+256GB,库存紧张

概念小结

关于SPU/CSPU/ITEM/SKU,可以理解为如下图所示:

再来说说产品和商品区别

  1. 产品(Product)

    • 产品通常指的是一个概念或设计,它是满足消费者需求和欲望的任何事物,可以是有形的也可以是无形的。
    • 产品可以是一个服务、一个应用程序、一个物理设备或者是一个解决方案。
  2. 商品(Commodity)

    • 商品是一个已经生产出来的、用于销售和交换的产品。它是一个具体的、可以量化的实体。
    • 商品通常指的是市场上广泛交易的、标准化的产品,如原材料、农产品等。
    • 商品可以是单个产品,也可以是一组具有相同特征的产品,如一箱苹果或一桶石油。

在商业实践中,一个产品在开发完成后,进入市场并开始销售时,就变成了商品。

SPU/CSPU其实在构建商品的标准,而ITEM和SKU就是具体执行标准的实例。

SPU = 关键属性 + 绑定属性

CSPU = SPU + 销售属性

ITEM = SPU + 商家

SKU = CSPU + 商家 + 价格 +库存。

为什么要这样设计

SPU定义了产品的属性规范,例如:小米15手机,它的关键属性 + 绑定属性的信息是已经被定义好的,这样所有商家发布的小米15手机的ITEM,关键属性 + 绑定属性的信息都是一样的。但是,在某些场景下面,

 1. 最细粒度产品模型的缺失; 

 2. 存在大量重复SPU,SPU信息不准确;

以Apple iPhone 4为例,产品库中存在大量重复的SPU。

同时,也容易出现SPU信息不准确的问题。

    3. SKU信息混乱,且缺乏有效监管的途径。

所以,增加最细粒度的产品模型 —— CSPU,通过平台方、商家、品牌商多方参与共建一个准确有效的产品库,通过品牌归一、型号归一等解决现存的重复SPU的问题。

该处参考于:达尔文商品管理_达尔文商品模型

类目

类目管理在电商和流通行业中扮演着至关重要的角色,其主要价值体现在以下几个方面:

  1. 提升用户体验:类目管理通过组织和分类商品,使用户能够快速有效地找到他们想要购买的商品。这不仅提升了用户的购物体验,也增加了用户满意度和忠诚度。

  2. 优化搜索功能:在搜索结果中,类目管理允许用户通过筛选特定类目来进一步细化搜索结果,从而更准确地定位到目标商品。

  3. 提高运营效率:类目管理使得商家能够更系统地维护商品信息,如商品属性和品牌等。这样,运营人员在录入商品信息时可以更加高效,因为他们只需要按照预设的商品信息清单进行操作。

  4. 支持其他功能:类目管理为电商系统中的其他功能提供基础支撑,例如:

    • 品牌关联:通过将品牌与类目关联,可以提高运营人员上传商品时选择品牌的效率,以及用户筛选品牌的效率。
    • 仓库管理:商品类目有助于仓库分区存储,使得仓库管理人员能够根据商品所属类目快速找到存储位置,提高仓储效率。
    • 数据分析:类目管理使得对同一类商品的相关数据进行汇总统计成为可能,这对于形成有价值的品类数据分析报告至关重要。
  5. 促进数据驱动决策:通过类目管理,企业可以更好地分析和理解不同类目的销售表现,从而做出更精准的市场定位和库存管理决策。

总结来说,类目管理是电商运营的基础,它不仅帮助用户快速找到目标商品,也方便运营维护商品信息,并为其他功能提供基础支撑,从而提升整体的运营效率和用户体验。

类目功能的使用对象包括普通消费者,即前端用户,和负责运营管理的商家。对于前者,他们通过前端产品使用类目功能,如电商App、小程序;对于后者,他们通过后端产品使用类目功能,即电商后台系统。

后端类目的管理

商家是商品管理方面的专业人士,包括运营、仓储、采购等多个角色。为了方便他们的日常操作和互相之间的配合,需要采用一套客观、统一的分类标准。由于这套分类方法在后端产品中使用,也称为“后端类目”。有以下特点:

  1. 类目数量多:随着商品种类的增加,类目数量也随之增长。这使得在单个类目下查找商品变得更加困难,增加了操作成本。

  2. 类目分层,且层级深:为了提高类目的使用效率,需要对类目进行进一步的分类,形成多层级的结构。这种分层通常有3到5层,以便于管理和导航。

    商品中心:类目管理

  3. 相对固定,不轻易变更和删除:一旦类目与品牌、属性关联,并且有商品被创建后,类目就变得相对固定。轻易变更或删除类目可能会导致数据混乱和运营问题。

  4. 名称客观、统一:为了确保商家内部不同角色的人能够准确理解和使用类目,类目的命名需要客观、统一。这有助于建立沟通标准,避免误解和混乱。

前台类目类目管理

前端用户对类目的需求与后端用户(如商家或运营人员)有所不同,更多是一个导购的作用。方便消费者可以快速的定位或找到自己想要的商品。一般来说会有以下特点:

  1. 类目数量少、层级浅

    • 前端类目设计倾向于减少数量和层级,以简化用户的购物流程。通过合并一些后端的子类目,可以缩短用户查找商品的路径,提高用户体验。例如,前端可能只展示“婴儿奶粉”一个类目,而后台可能细分为多个相关类目。
  2. 灵活多变

    • 前端类目需要具备一定的灵活性,以适应市场变化和运营策略。随着季节、节日或促销活动的变化,前端类目可能会相应地调整,以吸引用户注意力和促进销售。例如,夏季可能会增加“清凉季”类目,或者在海鲜水产下增加“今日推荐”、“3件8折”等促销类目。
  3. 满足用户查找需求

    • 前端类目设计的核心是帮助用户快速找到他们想要购买的商品。这要求类目结构清晰、直观,便于用户浏览和搜索。
  4. 承载运营诉求

    • 前端类目也是运营人员实现运营目标的工具。通过调整类目,运营人员可以推广特定商品、突出促销活动或响应市场趋势。

从产品类型来看,一般产品都会分为:实体产品、虚拟产品(无实物的,例如:电子书、视频、音频等)和服务(例如:咨询服务、物流服务、配送服务,以及人工为主)。

后端类目与前端关系如下图所示:

写在最后的话

上面主要聊了一些商品相关的概念,这些概念如果用一幅图在总结,可以归纳为如下:

  1. 商品概念的分层与定义

    • SPU(Standard Product Unit):代表产品系列或产品组,具有相似特征的产品集合。它定义了一类商品的关键属性和绑定属性,但不包含销售信息。
    • CSPU(Child Standard Product Unit):作为SPU的补充,增加了销售属性,可以完全确定一款商品。它是SPU加上销售属性,如容量、颜色、存储容量等。
    • ITEM:商家发布的产品实例,包含SPU信息和商家信息。它是SPU的一个实例,可以被搜索到,并且受到SPU规范的限制。
    • SKU(Stock Keeping Unit):库存管理中的最小单元,代表具体可销售的商品变体,如不同颜色、尺寸的同一产品。SKU由CSPU加上商家、价格和库存信息构成。
  2. 类目管理的重要性

    • 类目管理帮助用户快速找到目标商品,提高用户体验。
    • 它为运营维护商品信息提供方便,为其他功能如品牌关联、仓库管理和数据分析提供基础支撑。
    • 类目管理在电商运营中是基础,提升整体运营效率。
  3. 前端与后端类目管理的差异

    • 后端类目:面向商家和运营人员,需要客观、统一的分类标准,以便于日常操作和团队协作。后端类目相对固定,不轻易变更和删除。
    • 前端类目:面向消费者,需要通俗易懂的命名,减少类目数量和层级,以简化购物流程。前端类目灵活多变,以适应市场变化和运营策略。

通过这样的设计,供应链中台能够确保商品信息的准确性和一致性,同时满足不同用户群体的需求,提高整个供应链系统的效率和效果。

相关文章:

供应链系统设计-供应链中台系统设计(六)- 商品中心概念篇

概述 我们在供应链系统设计-中台系统设计系列(五)- 供应链中台实践概述 中描述了什么是供应链中台,供应链中台主要包含了那些组成部门。包括业务中台、通用中台等概念。为了后续方便大家对于中台有更深入的理解,我会逐一针对中台…...

胡闹厨房练习(三)

ScriptableObject 一、初步了解 1、实质:是一种特殊类型的Unity对象, 2、作用:用于存储大量数据,而不必依附于游戏场景中的某个GameObject。 3、特点: 可以在不增加场景中对象数量的情况下,管理和存储复杂的数据结构、配置信息、游戏状态等。 4、适用:非常适合用来…...

关于ESD(静电放电)等级的划分

关于ESD(静电放电)等级的划分,主要依据不同的测试模型和测试标准。以下是对HBM(人体模型)和CDM(充电器件模型)两种测试模型下ESD等级划分的详细解释: HBM ESD等级划分 HBM ESD等级…...

探究步进电机与输入脉冲的关系

深入了解步进电机 前言一、 步进电机原理二、 细分三、脉冲数总结 前言 主要是探究以下内容: 1、步进电机的步进角。 2、什么是细分。 3、脉冲的计算。 最后再扩展以下STM32定时器的计算方法。 一、 步进电机原理 其实语言描述怎么样都不直观,我更建议…...

基于YOLOV5+Flask安全帽RTSP视频流实时目标检测

1、背景 在现代工业和建筑行业中,安全始终是首要考虑的因素之一。特别是在施工现场,工人佩戴安全帽是确保人身安全的基本要求。然而,人工监督难免会有疏漏,尤其是在大型工地或复杂环境中,确保每个人都佩戴安全帽变得非…...

Windows内置的服务器IIS(Internet Information Services)托管网站

一. 安装IIS 打开控制面板:在开始菜单搜索“控制面板”并打开它。程序和功能:点击“程序”然后选择“程序和功能”。启用或关闭Windows功能:在左侧菜单中选择“启用或关闭Windows功能”。查找并勾选IIS:在弹出的窗口中&#xff0c…...

虚幻引擎结构之UObject

一. UObject 的介绍 UObject 是虚幻引擎中的核心基础类,所有其他游戏对象和资源类都直接或间接地继承自它。作为虚幻引擎的基石,UObject 提供了多项关键功能,包括内存管理、序列化、反射(introspection)、垃圾回收以及元数据支持。在虚幻引擎中,UObject 类的实例通常被称…...

js的Reflect对象

Reflect 对象是 JavaScript ES6 中引入的一个内建对象,它提供了一系列与对象操作相关的方法。这些方法与 Object 对象上的方法类似,但在行为上有一些差异,并且更加规范和统一。Reflect 对象并不是一个构造函数,不能被 new 操作符调…...

this指向了谁?

看函数在执行的时候是如何调用的, 1 如果这个函数是用普通函数调用模式来进行调用,它内部的this指向了window; 2 如果一个函数在调用的时候是通过对象方法模式来进行调用,则它内部的this就是我们的对象; 3 如果一个函数在调用的时候通过构…...

基于Resnet、LSTM、Shufflenet及CNN网络的Daily_and_Sports_Activities数据集仿真

在深度学习领域,不同的网络结构设计用于解决特定的问题。本文将详细分析四种主流网络结构:卷积神经网络(CNN)、残差网络(ResNet)、长短期记忆网络(LSTM)和洗牌网络(Shuff…...

mac系统vsCode中使用Better Comments在.vue文件里失效

问题:关于Better Comments默认在html、TS、JS中有效,在vue中无效,需要单独进行配置 windows系统可以参考友链Better Comments(注释高亮)在vue文件里失效的问题 关于Better Comments电脑的配置路径: Windows系统&…...

UE5.3 C++ Ceiusm中的POI 制作3DUI 结合坐标转化

一.核心思路WidgetComponent CesiumGloberAnchor 二.先制作POI 创建C Actor来制作,APOI。直接上代码 #pragma once#include "CoreMinimal.h" #include "GameFramework/Actor.h" #include "CesiumGlobeAnchorComponent.h" #includ…...

一起学Git【第六节:查看版本差异】

git diff是 Git 版本控制系统中用于展示差异的强大工具。他可以用于查看文件在工作区、暂存区和版本库之间的差异、任意两个指定版本之间的差异和两个分支之间的差异等,接下来进行详细的介绍。 1.显示工作区与暂存区之间的差异 # 显示工作区和暂存区之间的差异,后面不加参数…...

numpy np.newaxis介绍

np.newaxis 是 NumPy 中用于增加数组维度的关键字。它的作用是为数组插入一个新的维度,从而改变数组的形状(shape)。 基本用法 np.newaxis 等价于 None,可以作为索引使用,用于在指定位置增加一个维度。增加的维度的大…...

小程序配置文件 —— 16 项目配置文件和配置 sass

目录 项目配置文件配置 sass 项目配置文件 在创建项目的时候,每个项目的根目录生成两个 config.json 文件(project.config.json 和 project.private.config.json ),用于保存开发者在工具上做的个性化配置,例如和编译有…...

【yolov5】实现FPS游戏人物检测,并定位到矩形框上中部分,实现自瞄

介绍 本人机器学习小白,通过语言大模型百度进行搜索,磕磕绊绊的实现了初步效果,能有一些锁头效果,但识别速度不是非常快,且没有做敌友区分,效果不是非常的理想,但在4399小游戏中爽一下还是可以…...

概率统计与随机过程--作业5

一、推导题 二、计算题 1、某单位为了研究太阳镜销售和广告费用之间的关系,搜集了以下数据,使用回归分析方法得到线性回归模型: 广告费用(万元)x 2 5 6 7 22 25 28 30 22 18 销售量(个&#xf…...

“802.11g”,“802.11n”,“802.11ac”,“802.11ax”

802.11g、802.11n、802.11ac、802.11ax都是IEEE制定的无线局域网(WLAN)标准,它们各自具有不同的特点和性能。以下是对这四个标准的详细介绍: 1. 802.11g 定义:802.11g是IEEE制定的一种无线局域网标准,它提…...

Kubernetes 常用的网络插件

上篇内容跟大家简单聊了k8s网络模型原理。分别围绕着容器、Pod、Service、网络策略等展开了详细的讲解。这次想跟大家聊聊k8s的CNI网络插件。 CNI 是 Kubernetes 网络模型的核心组件,它是一个插件接口,允许用户选择和配置网络插件来管理 Pod 的网络。CN…...

Retrofit和rxjava 实现窜行请求,并行请求,循环多次请求,递归请求,错误重试

在使用 Retrofit 和 RxJava 时,可以通过多种方式实现多次请求,比如串行请求、并行请求、依赖请求等。以下是一些常见的实现方式: 1. 串行请求(依赖关系) 一个请求的结果作为另一个请求的输入,可以用 flat…...

Chapter03-Authentication vulnerabilities

文章目录 1. 身份验证简介1.1 What is authentication1.2 difference between authentication and authorization1.3 身份验证机制失效的原因1.4 身份验证机制失效的影响 2. 基于登录功能的漏洞2.1 密码爆破2.2 用户名枚举2.3 有缺陷的暴力破解防护2.3.1 如果用户登录尝试失败次…...

【网络】每天掌握一个Linux命令 - iftop

在Linux系统中,iftop是网络管理的得力助手,能实时监控网络流量、连接情况等,帮助排查网络异常。接下来从多方面详细介绍它。 目录 【网络】每天掌握一个Linux命令 - iftop工具概述安装方式核心功能基础用法进阶操作实战案例面试题场景生产场景…...

C++初阶-list的底层

目录 1.std::list实现的所有代码 2.list的简单介绍 2.1实现list的类 2.2_list_iterator的实现 2.2.1_list_iterator实现的原因和好处 2.2.2_list_iterator实现 2.3_list_node的实现 2.3.1. 避免递归的模板依赖 2.3.2. 内存布局一致性 2.3.3. 类型安全的替代方案 2.3.…...

遍历 Map 类型集合的方法汇总

1 方法一 先用方法 keySet() 获取集合中的所有键。再通过 gey(key) 方法用对应键获取值 import java.util.HashMap; import java.util.Set;public class Test {public static void main(String[] args) {HashMap hashMap new HashMap();hashMap.put("语文",99);has…...

SCAU期末笔记 - 数据分析与数据挖掘题库解析

这门怎么题库答案不全啊日 来简单学一下子来 一、选择题(可多选) 将原始数据进行集成、变换、维度规约、数值规约是在以下哪个步骤的任务?(C) A. 频繁模式挖掘 B.分类和预测 C.数据预处理 D.数据流挖掘 A. 频繁模式挖掘:专注于发现数据中…...

【网络安全产品大调研系列】2. 体验漏洞扫描

前言 2023 年漏洞扫描服务市场规模预计为 3.06(十亿美元)。漏洞扫描服务市场行业预计将从 2024 年的 3.48(十亿美元)增长到 2032 年的 9.54(十亿美元)。预测期内漏洞扫描服务市场 CAGR(增长率&…...

STM32F4基本定时器使用和原理详解

STM32F4基本定时器使用和原理详解 前言如何确定定时器挂载在哪条时钟线上配置及使用方法参数配置PrescalerCounter ModeCounter Periodauto-reload preloadTrigger Event Selection 中断配置生成的代码及使用方法初始化代码基本定时器触发DCA或者ADC的代码讲解中断代码定时启动…...

C++使用 new 来创建动态数组

问题: 不能使用变量定义数组大小 原因: 这是因为数组在内存中是连续存储的,编译器需要在编译阶段就确定数组的大小,以便正确地分配内存空间。如果允许使用变量来定义数组的大小,那么编译器就无法在编译时确定数组的大…...

Linux离线(zip方式)安装docker

目录 基础信息操作系统信息docker信息 安装实例安装步骤示例 遇到的问题问题1:修改默认工作路径启动失败问题2 找不到对应组 基础信息 操作系统信息 OS版本:CentOS 7 64位 内核版本:3.10.0 相关命令: uname -rcat /etc/os-rele…...

NPOI操作EXCEL文件 ——CAD C# 二次开发

缺点:dll.版本容易加载错误。CAD加载插件时,没有加载所有类库。插件运行过程中用到某个类库,会从CAD的安装目录找,找不到就报错了。 【方案2】让CAD在加载过程中把类库加载到内存 【方案3】是发现缺少了哪个库,就用插件程序加载进…...