天天看點

閑魚SPU體系建構的背後

作者:閑魚技術——迎墨

引言

在電商體系中,有一個比較重要的概念,就是關于商品系統的SPU和SKU,這個概念直接決定了商品在系統中的儲存結構。SPU用最短最标準的語言表達一個通用的商品,在跨領域跨管道傳輸上,扮演着中間橋梁的角色,真正使商品貨賣全球、線上線下融為一體。今天我們來介紹一下閑魚的SPU體系。

SPU概述

SPU在電商系統中傳達着商品的關鍵資訊。它是商品資訊聚合的最小機關。介紹SPU體系之前,簡單介紹下類目體系中最重要的一種類目特征劃分:關鍵屬性、銷售屬性、商品屬性、綁定屬性。

  • 關鍵屬性:之是以稱之為關鍵屬性,是因為他是用來限制和定義一個産品,用來确定一款唯一的産品(SPU)。比如手機類目的關鍵屬性是品牌,“品牌:Apple/蘋果;型号:iPhone5S”可以唯一确定一款産品。
  • 銷售屬性:銷售屬性是能決定發生買賣行為的屬性。簡單了解為下單前彈層頁的選項,比如iPhone5S手機,選擇了白色+32G才能産生一個訂單。
  • 商品屬性:商品屬性是對商品的更詳細的補充說明。比如手機是否保修、成色等。
  • 綁定屬性:綁定屬性是關鍵屬性的補充和細化,比如,品牌:Apple/蘋果;型号:iPhone11”+紫色+256G确定了其螢幕尺寸就是6.1英寸的。

我們的主角SPU模型,在阿裡體系中,通常被定義為:關鍵屬性+綁定屬性+普通屬性。

阿裡SPU現狀與閑魚SPU

那麼作為電商巨頭的阿裡,當下的SPU體系是什麼現狀呢?SPU體系發展至今,已經相當成熟,為阿裡商品體系帶來巨大的價值。在這個發展過程中,不同的平台和業務類型,圍繞SPU衍生出很多優秀的模型。既然阿裡SPU體系已經十分成熟,為什麼閑魚不使用現有淘系的SPU系統,要重新搭建一套體系呢?淘系的SPU系統經過多方共建已經可以達到新發商品實時落庫,俨然成為龐大的資料體系,但結合閑魚業務側的訴求,我們面臨的問題有:

  1. 淘系SPU由于共建等曆史原因,多方資料雜揉,經層層清洗後,仍有90%以上資料不可用。
  2. 閑魚有特有的卡券、租房等業務,搭建有自己成熟的類目管理體系、屬性管理系統和類目預測等多套體系,我們希望商品更貼合我們的業務。是以,維護一套自有SPU體系是十分必要的。
  3. 閑魚業務需要配合服務商挂載,提供多份資料(如:LV、路易威登)顯得不科學不嚴謹,且不滿足業務後續校驗和服務開啟流程。
  4. 閑魚SPU希望通過屬性組合來唯一定義一款産品,更規範、更官方、更标準的支援多個業務場景。
  5. 閑魚希望可以介入營運,管理SPU資料。

SPU資料鍊路建設

閑魚SPU體系搭建要求和需要解決的問題主要集中在以下幾點:

  1. 閑魚SPU與結構化體系打通,核心大類與淘系SPU相容。
  2. 特有業務可以由業務方同學自定義SPU屬性。
  3. 閑魚SPU關鍵屬性要求同概念産品全表唯一,屬性值使用國際标準命名,支援别名。
  4. 支援業務方橫向擴充,包括驗貨标、搜尋釋出标、驗貨項等個擴充資訊。
  5. 提供營運介入的可視化平台,放開營運維護權限,但需要走标準審批流程。

閑魚SPU打通結構化,主要依賴的是Tyler類目營運管理平台,通過平台關系維護,可以保證閑魚->淘寶的一一映射關系,同時,SPU底層資料存儲與閑魚結構化資料保持一緻,使用同一套屬性系統。

閑魚SPU資料體系采用标準SPU+閑魚自有SPU雙通道建構。标準SPU資料,是指定義比較清晰,不容易存在歧義、業界公認且資訊完整的資料,例如手機。這類資料,我們采用離線任務,對淘寶SPU庫進行多次清洗,在可接受程度的量級下,進行人工挑選,複用淘寶SPU次元的所有可用資訊,包括綁定屬性、銷售屬性、商品屬性、SPU屬性、圖檔等資訊,在通過離線資料任務,補全閑魚側資訊,tyler平台特征标、閑魚管道類目、淘寶類目、業務标、狀态、業務資料等。目前,SPU資訊的狀态等級分為三種,分别如下:(注:此處字段和數值為虛拟值)

閑魚SPU體系建構的背後

閑魚自有SPU貼戶閑魚業務,由各個業務方推動梳理路,例如潮服、潮鞋、奢侈品,多數情況下使用關鍵屬性定義SPU。

閑魚SPU體系建構的背後

其中,标準SPU資料導入流程,分類目逐漸推進,具體流程如下:

  1. 清洗淘系SPU資料,去掉含特殊字元/..測試/特殊符号等髒資料,去除關鍵資訊不完整資料。資料量萬級->千級
  2. 繼續根據關鍵字去重清洗,資料量降低30%。
  3. 營運幹預,人工挑選。
  4. 打上業務辨別,填補擴充字段,如biz(标示是否支援某業務)、bizProperty(業務在SPU基礎上的擴充屬性)
  5. 龍宮SPU管理體系長期營運維護。

閑魚SPU體系打通結構化流程,整體使用OpenSearch搜尋引擎向外提供查詢服務,資料鍊路采用 ODPS->mySql->OpenSearch,資料鍊路解決的問題:

  • ODPS 周期任務,T+1補充全面資訊,包含但不限于SPU資訊、商品挂載量、類目等級等。
  • mySql很友善的實作ID自增,維護一套自有spu_id。
  • mySql->OpenSearch可以實作資料自動實時更新,無需API推送/定時任務/手動重新建構引擎。
  • OpenSearch能實作索引條件靈活化,同時很好的實作模糊搜尋、相關性排序、銷量排序。
  • OpenSearch唯一鍵限制保證同一産品,全表唯一,限制鍵使用屬性值vid組合。

完整的SPU資料包含SPU屬性、綁定屬性、銷售屬性、圖檔、标題等基本資訊。僅僅隻有SPU無法滿足閑魚的業務需求,我們在這基礎上,擴充了淘寶類目、閑魚管道類目、業務辨別、業務屬性、業務專屬校驗項、閑魚平台釋出量(按照SPU次元),為系統業務留下可擴充空間。

閑魚SPU體系建構的背後

為了友善營運幹預和後期資料維護,我們同時設計一套管理系統配合使用,能夠實作基礎的單項新增和批量新增、多元度的查詢分析、修改和删除。涉及線上資料變更的部分,如編輯/删除,會統一接入集團changefree(安全生産審批流程)。如下圖所示,通過平台化,提供營運長期維護的能力。

閑魚SPU服務于多項業務,但不是專為某項業務而生,我們緻力于打造一套底層基礎能力,可以橫向支撐商品體系中打通結構化的多項閑魚業務,作為一種通用的基礎能力,服務于商品了解。

閑魚SPU體系建構的背後

閑魚SPU在業務場景中的使用

SPU系統目前已經支援多項業務,預計在後續和各行業和業務方的配合中,更側重于降低資料産出成本,加強與各行業的密切合作,充盈SPU資料池。目前閑魚SPU主要支撐的幾大場景,包括:驗貨寶,SPU搜尋釋出、無憂購。

驗貨寶:驗貨寶是閑魚與各行業服務商合作的用于增強使用者信任、提供優質商品的業務平台,閑魚正在逐漸擴大支援驗貨的品類。SPU的場景在這個業務中,用于檢索目前輸入是否支援驗貨,于此同時,業務方需要校驗驗貨項的完整性才可以保證服務的正常開啟,SPU系統全程為驗貨寶服務的開啟保駕護航。應用SPU基礎能力,可以很好的将業務介入主發流程,為平台和業務方帶來每日萬級新發。

SPU搜尋釋出器:這是閑魚一個新的釋出場景,通過SPU資訊比對來搜尋同款商品,進而降低使用者釋出成本,促進整體釋出量增長。SPU在這個場景中承載着“同款産品”的角色,SPU資料量的多少直接決定這個場景的可用性和整體使用者體驗。SPU場景降低釋出成本的同時,提供更優質的結構化資訊,同時,覆寫新使用者和低活使用者,對于拓展使用者寬度具有一定意義。

無憂購項目中,SPU同樣作為“産品”角色,向外提供服務。

繼續閱讀