????????如何設(shè)計(jì)庫存,哪些庫存呢?分類屬性的庫存:不同顏色 不同尺碼的屬性的庫存浑侥,這時候需要針對具體的SKU商品創(chuàng)建表姊舵。
總體思路
????????1.商品關(guān)聯(lián)商品類別,商品類別關(guān)聯(lián)多個商品屬性寓落,其中指定某幾個商品屬性為SKU關(guān)鍵字段括丁。例如,服裝類別的顏色伶选、尺碼屬性史飞。
????????2.多個SKU商品屬性值組合生成唯一的商品SKUID。例如仰税,紅色构资、L=1001,黑色肖卧、L=1002蚯窥。
????????3.有了商品唯一SKUID就可以方便記錄庫存了,庫存主鍵:倉庫ID塞帐,商品ID拦赠,SKUID,庫存精確到了組合的商品屬性葵姥。
優(yōu)缺點(diǎn)
????????1.靈活荷鼠,能夠應(yīng)對各種行業(yè)商品的需求。
????????2.商品類別定義時很復(fù)雜榔幸,一般用戶使用起來有難度允乐,可以預(yù)置常用的商品類別屬性模板解決。
商品模塊詳細(xì)設(shè)計(jì)
????????商品模塊是支撐整個架構(gòu)的核心削咆,如果這塊沒設(shè)計(jì)好牍疏,那么所有后期的復(fù)雜的統(tǒng)計(jì)需求基本都滿足不了。
????????為什么這樣子設(shè)計(jì)屬性看這里和這里拨齐,把品牌從類目中剝離出來是為了降低程序針對商品屬性這塊的復(fù)雜度鳞陨。這里通過淘寶的添加寶貝的操作來說明上面的數(shù)據(jù)結(jié)構(gòu)如何滿足下面的需求。
????????頁面屬性的編程實(shí)現(xiàn)可以參考這里瞻惋。SKU存放在產(chǎn)品SKU表中厦滤,按我們的實(shí)際需求增加修改字段,比如我的表中多了ProductCode和BarCode字段歼狼,SKU的屬性會拆分后存入產(chǎn)品基本屬性值表掏导,便于搜索或統(tǒng)計(jì)等需求。商品的基本屬性全部打橫存入商品的基本屬性表中羽峰,那么SKU表的存儲如下:
????????那么這個item是4013的產(chǎn)品在基本屬性值表中的數(shù)據(jù)存儲如下:
????????這里我是把所有的屬性都打成一條一條存儲在這個表中趟咆,那么能滿足我們在日常業(yè)務(wù)的屬性搜索添瓷,統(tǒng)計(jì)等需求。按屬性搜索忍啸,這里必須要注意以下幾點(diǎn):
? ??????1.不可能所有的屬性都開放給用戶或者我們的客戶進(jìn)行搜索仰坦,所以我們會在屬性名表中有個字段(是否搜索字段)來人工控制哪些屬性是搜索屬性
? ??????2.基本屬性是同一個寶貝下面所有SKU都共有的,SKU屬性是單個SKU獨(dú)有的计雌,所以搜索的時候還必須分清楚銷售屬性(銷售屬性組成SKU)和基本屬性悄晃。
? ??????3.屬性圖片的存儲我并沒有設(shè)計(jì),因?yàn)槲覀兪亲隹煜吩渎耍瑳]有這個需求妈橄。但是,如果我做的話我還會是在基本屬性值表中加上”是否圖片屬性翁脆,是否使用默認(rèn)圖片眷蚓,圖片URL“3個字段來記錄顏色屬性。做屬性搜索的時候比較方便反番。
? ??????4.產(chǎn)品通過關(guān)鍵字搜索和屬性搜索是分開的沙热,兩種搜索并不是一種解決方式,比如淘寶罢缸,在首頁的搜索框是通過分詞匹配寶貝標(biāo)題的關(guān)鍵字篙贸,通過關(guān)鍵字的匹配程度,店鋪的dsr評分權(quán)重來決定搜索結(jié)果枫疆,而屬性搜索的時候則是匹配滿足屬性條件的寶貝爵川。那屬性又分第1點(diǎn)和第2點(diǎn),所以還是挺麻煩的息楔。