分类、品牌、商品 结构设计
程序员文章站
2022-04-23 19:01:10
...
求教像京东这样的分类、品牌、商品的表结构设计,仔细想了一下这三类的关系还是挺复杂的,
一个商品可能在一个分类下有N个品牌
一个品牌下有N个分类N个商品
一个分类下有N个品牌N个商品
类似这样的结构怎么设计表结构比较效率。
恩,这样设计可行,用两个关联表去连接。 电子会有多级分类,之前一直用id,name parent_id 这种方法去递归,如果访问量很大这种方法有明显的瓶颈,版主能给点建议不。辛苦。
一个商品可能在一个分类下有N个品牌
一个品牌下有N个分类N个商品
一个分类下有N个品牌N个商品
类似这样的结构怎么设计表结构比较效率。
回复讨论(解决方案)
商品表,记录商品属性,并赋予商品唯一货号
品牌表,记录品牌信息,并赋予品牌唯一编号
分类表,记录分类信息,并赋予分类唯一分类号
商品品牌表,货号,品牌编号
商品分类表,货号,分类号
商品表,记录商品属性,并赋予商品唯一货号
品牌表,记录品牌信息,并赋予品牌唯一编号
分类表,记录分类信息,并赋予分类唯一分类号
商品品牌表,货号,品牌编号
商品分类表,货号,分类号
恩,这样设计可行,用两个关联表去连接。 电子会有多级分类,之前一直用id,name parent_id 这种方法去递归,如果访问量很大这种方法有明显的瓶颈,版主能给点建议不。辛苦。
多级分类可从分类表引申
你现在用的是 邻接列表算法,读取时需要递归遍历
不过商品分类变数不大,可以改造成 预排序遍历树算法 的,来提高读取的速度(插入、修改、删除的开销就要大些了)
从 邻接列表算法 到 预排序遍历树算法 只需运行一次递归函数
相关知识见 http://www.baidu.com/s?wd=%E9%A2%84%E6%8E%92%E5%BA%8F%E9%81%8D%E5%8E%86%E6%A0%91%E7%AE%97%E6%B3%95&ie=utf-8
上一篇: java 二维码的生成与解析示例代码