B2C电子商务系统研发——商品SKU分析和设计

一、SKU及相关概念定义


在设计商品SKU之前,首先让我们熟悉一下SKU和相关的一些概念。

# 什么是SKU:

     SKU=Stock Keeping Unit(库存量单位)

     同一型号的商品,或者说是同一个产品项目(商品条形码是针对企业的产品

项目来进行定义的),因为产品与产品之间有某些属性不同,用以区别开这些

不同商品的属性即商品变异属性,又称作SKU属性,因为它决定了SKU

的绝对数量。

# 参考说明

    百度上有一篇文章也有阐述,可以做关联阅读,我就不重复贴上了。

     百度SKU参考

# 什么是SKU属性和选项

     比如某件衣服有多种颜色、多种尺码,这些属性会直接关联价格和库存的,

系统会根据该商品关联的SKU属性的某个组合生成SKU。    

    比如某个款式的衬衫,有XL/L/XXL三种大小,有红黄蓝三种颜色。

    对应这里例子,尺码和颜色都是是SKU属性。

   对应尺码的XL/L/XXL等,都是SKU属性选项。

   【注】上述的属性不一定在任何时候都是SKU属性,看实际的商品情况和设置。

比如对于尺码,某种商品是均码的。那么就不需要创建尺码这个SKU属性了,

而是设置为普通属性,仅作为显示用。

# 什么是商品SKU

      商品SKU实际上就是SKU,为了避免误解和SKU属性混淆,我用商品SKU来命名,

表示从属于商品的、实际销售和存储的子实体。

      一个商品SKU,表示该商品关联的若干SKU属性的的属性值的某个组合所形成的

子实体。

      如对应上面的例子,其中的一种组合 XL + 红色 就会形成一个商品SKU。然后,

我们可以在该实体上管理价格、库存、专门的图片等信息。

# 什么是商品变异

      英文名:Product Variants

      商品变异其实就是商品SKU,只不过在某些技术文章中这样定义了。即以“变异”

来表达商品SKU的生成。

# 属性集

B2C电子商务系统研发——商品SKU分析和设计(一)

     Attribute Set,用于管理各类扩展属性的集合,其中SKU属性也是在管理范畴之内。

     商品通过关联属性集而获得该属性集设置好的SKU属性,然后才可以根据这些SKU属性

生成商品SKU。

     属性集也成为产品类型。

     常见的属性集有:服装、PC、家具、图书等。

# 概念的统一

     虽然不同的研究人员有不同的命名和定义,但为了在本系列文章中不出现混淆,

     我对概念做了以下统一定义:

     1)SKU(或称商品SKU)指的是商品子实体。

     2)商品和商品SKU是主次关系,一个商品包含若干个商品SKU子实体,商品SKU从属于商品。

     3)SKU不是编码,每个SKU包含一个唯一编码,即SKU Code,用于管理。   

     4)商品本身也有一个编码,即Product Code,但不作为直接库存管理使用。
          有时为了方便管理,会通过商品的Product Code作为前缀生成SKU Code。

二、SKU属性的管理


常见有几种情况:

  1. 商品独立管理
    即SKU属性从属于商品。
    优点:基本上没有。
    缺点:这种比较不靠谱,因为会导致工作量过大。虽然可以通过“复制”功能来稍稍
             简化,但依然不会很理想。所以基本不会采用。

  2. 商品独立关联
    即SKU属性是公共的,每个商品根据自己的实际情况来关联若干个SKU属性,
    然后选择若干选项生成商品SKU。
    优点:灵活,设置好了若干SKU属性和相关选项后,由商品自行选择相关的组合。
    缺点:太灵活了,容易出错。比如对于颜色这个SKU属性而言,由于是公共的,所以
            会定义数十个,甚至更多,但是对于ipad而言,其实只需要2个即可。这种
            管理方式,无法从源头控制商品添加时SKU属性和选项的范围。

  3. 通过属性集管理
    即SKU属性依附属性集存在,不存在可以从属于多个属性集的SKU属性。
    优点:容易进行严格的管理,不易出错。比如同样是命名为“颜色”的SKU属性会存在多个
    (属性ID/编码不同),但是对于ipad的只需要2个选项(黑、白),对于服装则会很多。
    缺点:属性集管理的工作量会稍大,适合属性集不多的系统。

  4. 通过属性集关联
    即SKU属性是公共的,通过属性集关联。
    优点:这种方式重用性不错,对于SKU选项较多的,会简化工作量。
    缺点:由于SKU属性是公共的,所以会存在上面第2点的缺点。但我们也可以通过设置多个
    同名、但编码不同的SKU属性,如多个“颜色”SKU属性,但是选项不同。

  5. 创建独立的SKU属性集
    即设计一个独立的SKU属性集的实体,关联或者直接管理SKU属性。
    这种方式也是挺不错的。因为虽然各种商品类型之间产品特性会有较大的不同,但是SKU属性
    却有可能差异不大。比如对于服装、ipad都存在通过颜色来区分SKU,但是ipad只需要2种选项
    (以后也许微调为3~4种等),而服装则很多了。

三、我的选择

上面介绍了五种形式,我个人倾向第4和第5种,上一篇文章的ER图也改成了第4种的形式,比较符合

常见的思路。第5种也是不错的。可以在接下来的设计分析一下。

笔者研究过不少电子商务平台软件,关于SKU的设计各有不同,之所以有这样的区别,是因为面向不同规模的电子商务网站,

存在产品分类复杂度,产品数量级的差异。一种设计方式对于百货式的网站,如京东、淘宝等,也许比较方便,但也许对于一个

专卖服装的小型时尚类网站就不够方便了。

  • 我们先看一下麦包包的

    女包:http://item.mbaobao.com/pshow-1209056501.html

    手包:http://item.mbaobao.com/pshow-1209050001.html?s=gl_4f_2

    可见SKU很简单,就是颜色,至于尺寸,麦包包并没有作为SKU选项来管理,而是作为不同的产品来处理。

  • 再看一下凡客www.vancl.com

      时尚印花短款羽绒服

  学院风经典连帽印花羽绒服

SKU相对简单,主要是颜色和尺码。但是看多几个产品会发现,即使是同一个品类下面的颜色和尺码均会出现不相同的情况。至于

颜色图片更是各有不同。

  • 再看一下京东的SKU:

  华硕EeePad:http://www.360buy.com/product/492015.html

  苹果iPad2:http://www.360buy.com/product/386365.html

  其中”版本“SKU属性,两个产品下面的可选项完全不同。

  京东的SKU更为复杂了,即使是同一个三级品类下面,也有差异。如果预设置好SKU属性(”版本“)和它的可选项(64G/32G/

16G/32G旗舰版/32G标准版/16G旗舰版/16G标准版)等,那估计会比较多可选项。这种类型,分开多个SKU属性管理会比较合适。

 

  针对这三种常见的网站,其中麦包包和凡客其实比较类似,只是麦包包做了些简化,但这两种可以归纳为一种设计方式,这样

B2C电子商务系统研发——商品SKU分析和设计(二)

SKU属性的设计,便可以分为两类了:

  • 通过属性集关联SKU属性

  适合品类较少的网站,管理容易些。

      如麦包包等专卖箱包或者服饰类的网站。一般就是颜色+尺码两种。而且由于品类很少,为了方便管理,可以将SKU属性纳入到属性

集中管理,这样产品关联了属性集后,自然就关联了普通属性、查询属性、SKU属性和评论属性了。

  对于上图,如果该网站产品种类很少,比如只卖服装,那么可以做进一步的简化,即直接将SKU属性从属关联属性集,去掉

”属性集关联SKU“。

     基于本设计的管理方式:

     按品类创建属性集,如箱包、鞋子、服装、文胸等。然后创建多个SKU属性,即使针对内涵相似的,但是可选项不同的也创建

多个,如尺码,用在箱包和用在服装上是完全不同的。这些分别创建,并关联不同的属性集。

      产品创建时,关联一个属性集,通过属性集关联了1~N个SKU属性,然后选项这些SKU属性的组合,如2个颜色*3个尺码,

即6个组合,然后可以根据需要删除不支持的组合,这样最终得出了一个组合列表,点击”生成SKU“,就根据组合数量创建了产品

SKU,每个产品SKU对应一个组合,存储在产品SKU选项值表中。对于某些SKU,可以设置专门的选项配图。

  •  产品和SKU属性直接关联

      适合品类很多网站,比较灵活,但是维护起来数据量比较大。

      为了简化,我增加SKU属性关联产品分类(可为空,表示是全局的),这样在创建产品时,可以只列出全局的+本产品分类的

SKU属性,这样就不会一下子列出很多SKU属性了。

      SKU属性分为前端名称和后台名称两个,方便不同业务含义的SKU属性,在前端也能够用同一个名称显示,如颜色、容量等。

      另外在操作上可以做些优化,比如用下拉列表显示可选的SKU属性时,可以同时显示该属性的属性描述,供产品维护人员参考。

 

对于上面两个图的数据表设计,笔者就不在细化了,读者可以自行根据实际需要进行细化,要注意的是,基于SKU方式来管理产品时,

产品的价格、库存和图片等信息必然是放在产品SKU表中处理的,和订单、购物车等表的关联,也是通过产品SKU表,而不是产品表。

至于产品表,实际上是一个总的业务汇总和外部关联表,但实际销售的并不是它。

有些网站做的更细些,会就每个产品SKU生成独立的URL(伪静态),这里见仁见智了,但从SEO方面考虑,每个产品SKU拥有独立

的链接对收录和排名会更有优势些,可以考虑。

posted @ 2018-01-18 18:44  hai_blog  阅读(3709)  评论(1编辑  收藏  举报