大數據“復活”記
742
2025-04-01
本文介紹了華為商城(VMALL)在建設特征平臺過程中,對特征數據存儲服務的選型和應用。主要內容板塊有以下:
1、華為商城(VMALL)介紹
2、華為商場(VMALL)業務痛點及優化方案
3、利用云數據庫GaussDB(for Redis)作為特征數據庫所來帶的價值
一、華為商城(VMALL)介紹
華為商城(VMALL)是華為公司旗下的自營電子商務平臺,以最終用戶為主要對象,提供華為手機、無線上網設備、平板電腦、配件等系列終端產品和服務,是以營造用戶的移動信息生活為服務宗旨的互聯網商務平臺。
云數據庫GaussDB(for Redis)作為華為云旗下企業級Redis,致力于為客戶提供穩定可靠、超高并發,且能夠極速彈性擴容的KV存儲服務。GaussDB(for Redis)在VMALL特征工程平臺建設中,起到了關鍵作用。
二、華為商場(VMALL)業務痛點及優化方案
1、業務痛點
VMALL使用了大量的AI和大數據技術,用來支撐智能推薦,精準營銷,智能搜索,選品投放等業務的高效開展。
隨著業務的快速發展,系統對AI算法模型的需求日益增多。當前的AI開發流程中,“模型訓練”和“模型部署”階段都已經有成熟的平臺支撐,唯獨“特征數據準備”階段缺乏通用平臺,
導致了“線上推理和線下訓練的特征數據不一致”,“各算法模型獨立開發,特征生產重復造輪子”,“特征工程投入時間多(占據算法開發耗時的60%-70%)”3個關鍵問題,嚴重影響了研發效率,阻礙業務發展。為解決此問題,VMALL大數據團隊開始著手建設統一的特征平臺。
特征平臺的核心部件是特征存儲數據庫,只有通過統一的特征數據存儲,才能改變原有的“數據孤島”窘境,徹底解決“不一致”,“難共享”,“效率低”3大問題。但也正是由于特征數據庫需要承擔打通線上/線下多個場景,對接批式/流式多種數據源,滿足訓練/推理多樣消費需求,對特征數據庫的選型提出了非常高的要求:需要找到一款數據存儲服務,既能提供低成本的海量數據存儲并方便擴容,又能保證數據的絕對可靠和服務的高可用;既要滿足低時延的線上推理,又要滿足高吞吐的線下訓練;既能提供簡潔的KV接口供下游輕松消費,又要兼容主流的批式/流式處理引擎(Spark/Flink等)供上游快速接入。
經過深入調研,VMALL大數據團隊最終選擇了GaussDB(for Redis)作為特征數據庫,下面就讓我們詳細看看GaussDB(for Redis)是如何滿足上述苛刻要求的。
2、解決方案
1.????特征平臺使用GaussDB(for Redis)的主要流程
1)特征生產(抽取、處理、存儲)
離線特征(靜態特征):定時調度Spark作業,從各種數據倉庫、數據湖中提取數據,進行特征工程處理后,存入GaussDB(for Redis) 。
實時特征(動態特征):Flink消費Kafka,或流式存儲中的數據,持續更新到GaussDB(for Redis)中。
1)特征消費
線上推理:模型已經部署到生產,開始承接業務,需要低時延,高并發的消費數據,從GaussDB(for Redis)中讀取數據。
線下訓練:GaussDB(for Redis)存有最新的特征數據,OBS中存有全量的特征數據。
對于使用靜態特征的較為簡單的模型,可以直接從OBS中獲取特征使用。
對于使用實時特征的場景(如實時推薦系統),由Flink從Kafka中實時取得用戶請求記錄,并從GaussDB(for Redis) 查詢取得特征,將記錄和特征拼接成訓練樣本,存儲到文件中,供線下訓練使用。
2.??特征平臺對GaussDB(for Redis)的核心訴求
結合上述業務場景,總結特征平臺對GaussDB(for Redis)的核心訴求如下:
序號
類別
訴求點
1
業務接口
支持簡潔的KV接口(不需要范圍查詢),支持和Spark/Flink快速對接,提升業務開發效率
2
穩定性
作為電商應用的關鍵支撐系統,需要具備企業級應用的穩定性。如社區Redis存在的fork抖動,oom等問題,需要解決
3
可靠性
特征數據決定了最終給客戶的推薦效果,需要確保數據零丟失,強一致
4
成本
特征數據體量龐大,希望采用內存+磁盤混合存儲,降低使用成本
5
性能
抗寫能力必須強,滿足特征數據批量灌庫的要求;讀取總體要低時延,但非緩存場景,可接受非活躍用戶的時延毛刺
6
可擴展性
隨著業務發展,特征數據上量很快;擴容要簡單,快速,業務影響盡量小
3. GaussDB(for Redis)滿足特征平臺訴求的關鍵方案
1)業務接口
GaussDB(for Redis)兼容社區Redis5.0接口,支持和Spark/Flink Connector的對接,很好的滿足了業務的使用需求
2)穩定性
GaussDB(for Redis)采用自研內核,解決了社區Redis的fork,oom等老大難問題,具備了企業級應用的穩定性
3)可靠性
數據零丟失:逐條命令實時落盤,底層三副本冗余存儲,無數據丟失風險
數據強一致:基于GaussDB公共的共享存儲部件DFV,實現三副本強一致,多點訪問無臟讀風險
4)成本
GaussDB(for Redis)實現數據的自動冷熱分離,采用內存+SSD的混合存儲方案,大幅降低了客戶的使用成本。按照VMALL的特征體量測算,億級用戶,每個用戶的特征數量是數K-數10K,GaussDB(for Redis)一年的費用僅3W出頭,如果選用社區Redis,費用在20W+
5)性能
GaussDB(for Redis)采用多線程架構,并且所有節點可以同時支持寫入,因此可以較好滿足批量灌庫的高吞吐寫需求。讀方面,基于冷熱分離方案,熱數據常駐內存提供穩定低時延;冷數據讀涉及IO交換,存在一定長尾,但可滿足VMALL業務要求(目前VMALL線上GaussDB(for Redis)實例讀時延平均0.16ms,P99 0.4ms,P9999 1.5ms)
6)可擴展性
基于計算存儲分離架構,底層數據可被任一節點訪問,擴容過程不發生數據拷貝搬遷,因此速度極快;計算節點擴容分鐘級完成,存儲擴容秒級完成,RTO < 10秒
綜上,與社區Redis相比,GaussDB(for Redis)提供了更穩定的使用體驗,更可靠的數據存儲,更低廉的使用成本和更便捷的擴展能力,是更適合像VMALL特征平臺這樣大規模電商大數據應用的企業級Redis服務。因此,VMALL特征平臺最終選擇GaussDB(for Redis)作為特征數據的存儲服務。
三、利用云數據庫GaussDB(for Redis)作為特征數據庫所來帶的價值
1、上線后效果
目前VMALL已完成一期的特征數據遷移,包括“特征生產”業務中的“Spark離線特征生產”,以及“特征消費”業務中的“線下訓練Flink特征查詢”,已遷移到GaussDB(for Redis)。
當前GaussDB(for Redis)運行平穩,業務高峰時段時延穩定,能夠滿足VMALL當前業務要求。其中,讀平均時延0.2ms(p99<0.4ms),寫入平均時延0.6ms(P99<2ms)。
VMALL當前已啟動二期的特征數據遷移,計劃完成包括“Flink在線特征生成”,“線上推理”等核心業務的接入。
2、 總結
本文介紹了華為商城(VMALL)在建設特征平臺過程中,對特征數據存儲服務的選型和應用。由此可見,華為云GaussDB(for Redis)服務在成本,可靠性,可擴展性等方面具有優勢,可作為特征數據存儲的理想方案,提供企業級的穩定可靠的Redis服務能力。
附錄
GaussDB(for Redis)產品主頁
GaussDB(for Redis)官方博客
云數據庫 GaussDB(for Redis) 數據庫
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。