电商系统中的分类属性系统设计之我见(抛砖引玉)
需求原型:
目前公司在整合户外广告行业媒体。户外广告行业分为不同的大类(高速,公交,机场,地铁,商超,火车)等等大的形式的媒体,每种媒体又分为不同的小的类别,每种类别又有不同的属性。每一种媒体又关联不同的产品信息例如(公交媒体是以城市的公交线路为载体),高速媒体又是一国家高速网为载体。相互交织又相互关联。
该需求原型和我们常见的电商的商品属性特别类似。树状商品分类。灵活配置属性。
网站之前的方案:
将所有媒体形式的所有的分类统一绘制到一张表上,为这张表扩充足够多的分类属性字段。所有的媒体放在一张表中。该方案 优点:容易查询统计。缺点:不容易系统级别扩展。表字段列太多。增删类属性要大动数据表,模型,UI。简直是牵一发动全身。
设计方案:
设计独立的 分类表,属性表,媒体表,媒体分类属性值表。产品表。(公交线路,高速线路,候车厅站点)等等信息。
将分类和属性关联。容易扩展维护。
再根据配置关系关联媒体。
设计缺陷:媒体分类属性值表 该表会越来越大。对后续查询和维护难度比较大。因此针对这个瓶颈对这个表做了按分类和时间做了分表处理。在查询层面做了一层缓存级别
的处理。
PS:如有好得处理一件,希望能够一起探讨下!!!!
loserss 记于2015-11-18