簡介:隨着雙11的開啟,物流業也迎來了年度大考。2021年雙11期間,遞四方作為物流倉儲服務方,布局倉庫和分揀點超40+個,50w+平米作業場地,單日訂單峰值達千萬級別,海量購物訂單由遞四方配送到家,消費者由尾款人秒變收貨人。
作者 | 梅醬
來源 | 阿里技術公眾號
隨着雙11的開啟,物流業也迎來了年度大考。2021年雙11期間,遞四方作為物流倉儲服務方,布局倉庫和分揀點超40+個,50w+平米作業場地,單日訂單峰值達千萬級別,海量購物訂單由遞四方配送到家,消費者由尾款人秒變收貨人。
一 業務介紹
遞四方成立於2004年,創業在深圳,是國內最早的國際物流和全球倉儲服務物流供應鏈服務商,主要為從事跨境電商的客戶、平台以及普通用戶提供倉儲物流服務,以GPN(直發訂單)和GFN(海外倉儲)兩張網絡為客戶提供更好的全球跨境電商優質生態環境,致力於幫助中國企業走向全球,目前在全球超過100+家分支機構,服務全球約100萬家跨境電商商戶與超過2億跨境電商終端用戶。
二 業務挑戰
為了應對雙11單日峰值達到千萬級別訂單的狀況,遞四方運用大數據合理優化資源,提前做好全球倉儲人力、物力、運力配置,保障倉儲各流程高效、有序進行。從今年10月中下旬開始,上海轉運中心和東莞轉運中心相繼啟動。截至目前,遞四方陸續在華東、華北、華南新建、擴建超級樞紐、攬收倉至40余個,繼續加大在全國的布局;在國內擁有40個+分公司/分撥服務網點,全國50萬+平方米辦公/作業場地面積。
在業務方面,遞四方借助自主研發分揀系統和雲技術,快速進行條碼識別,按指令分揀,實現稱重分揀一體化全面覆蓋,保證每一票貨物都可自動識別、精准分揀出庫。稱重及分揀,已從傳統人工模式升級為100%人工管控模式。此外,遞四方信息科技的黑科技硬件——紅光在此次“雙11”首次亮相。在分揀效率不變的情況下,遞四方信息科技用光幕等技術手段,對分揀機落格包裹進行核驗,將庫內錯分率降低至萬分之三,達到業界領先水平。尤其針對倉庫環節,不斷加大對庫內的自動化、數字化、智能化建設,結合大數據、AI算法、雲計算等手段進行系統的研發升級,引進高科技設備來提升產能、保障時效。
隨着雙11期間訂單量劇增、應用的復雜度提升,我們的業務系統也經受着嚴峻的挑戰,原來的實時數倉架構已經不能滿足業務當前的需求。在尋找新的解決方案時,我們對比了業界常用的大數據實時查詢數據庫,比如HBase、ClickHouse、Druid,但在千億級別數據多表連接查詢時都遇到了瓶頸,無法滿足業務實時性、服務穩定性的要求。
實時數倉在遞四方的應用場景應用主要有以下幾個方面:攬收、庫內操作、倉間調撥、清關交郵預警監控,這里面包含着單票運轉操作的每一個步驟。這些場景都需要做到實時監控,並且實時做出決策來提高物流的的整體時效。尤其是在雙十一高峰期的情況下,如果人力或資源分配不足,很容易使某一環節堵塞,進而影響整體物流的時效。在技術的層面,我們有很多個業務系統,這些系統之間既有一致性也有獨立性,一個復雜指標涉及到多個系統多張表,因此我們實時數倉對表連接查詢能力非常強,而且對數據的更新插入速度也有着很高的要求。
今年雙11,我們對支撐業務的實時數倉系統進行了升級,通過新一代基於flink+hologres的實時數倉系統,在物流訂單量相較於去年增加多倍的情況下,仍然能夠實時監控每一票訂單的物流情況、每一個倉庫的作業情況,並且實時數倉整體成本下降50%,真正做到了“多、快、好、省”。
下面我們將會具體介紹遞四方實時數倉的升級演進之路。
三 遞四方實時數倉之路
1 實時數倉1.0
在剛開始做第一版實時數倉的時候,時間窗口比較緊,我們要把有限的精力放到數據建模以及業務開發中,所以在對比了數據庫的吞吐性以及處理能力后,我們選擇了ADB。ADB在數量大很大的情況下,查詢速度、插入速度都很快,而且支持DTS、OTTER等數據同步接入,同步性能很好。
但是當時遇到了一個非常大的問題,就是ADB的並發有限,計算任務耗費了大量的資源。在各種大屏、實時報表拉取數據的時候,高並發的情況下,ADB的延遲很高,給我們實時服務穩定性帶來了非常大的挑戰。
2 實時數倉2.0
經歷了第一個版本的實時數倉后,我們總結了實時數倉的兩個重要特性,一是實時,二是服務的穩定性。
第一個版本的實時數倉不能很好地滿足穩定性,我們決定對新的實時數倉進行一個深入的研究和探索,在阿里雲上看到了很多關於Hologres的應用,其性能表現極其出色,帶來了不錯的效果。在對比了業界不同的實時數倉架構后,我們最終選擇了Flink+Hologres組合作為實時數倉。
- 第一條路徑是:通過DTS把Binlog數據同步到DataHub,然后使用Flink從DataHub中消費數據,把計算結果存儲在Hologres中,這條路徑主要是用於計算一些訪問頻率高且數據量大的數據,比如待攬收單量、入庫單量、待完成單量等。
- 第二條路徑是:業務系統的Binlog數據通過DataWorks同步到Hologres中。Hologres中分了3層,ODS層用於存放原始數據,直接加載原始日志、數據,數據保持原貌不做處理。一般情況下,以增量的方式從業務系統導入到ODS層,數據模型和粒度都與業務系統保持一致。DWD層數據明細層,對ODS層數據進行清洗。DWS為匯總層,主要存放寬表。這里主要是考慮到粒度的不一樣,在Hologres中多表連接查詢能夠發揮其最大的作用。整個架構的任務調度依賴於DataWorks。
本次采用的批流一體即席計算查詢混合模式,既發揮了Flink流計算的能力,也充分利用了Hologres強大的連表查詢能力。互聯網普遍運用的HBase、ClickHouse、Druid等作為實時查詢數據庫,我們的業務復雜度是互聯網的若干倍,這些實時數據庫並不能完全滿足我們的需求,架構互有優劣,但我們的架構是未來五六年內業務高速增長的最佳選擇。
四 遞四方與實時數倉Hologres
1 為什么選擇Hologres
那么為什么會選擇Hologres呢?通過調研發現它有幾個特點,比較適合實際情況。
- 第一是Hologres的實時能力,滿足目前遞四方的實時數倉需求,支持百億級表與億級表之間的JOIN,秒級查詢響應,還支持實時寫入、批量數據導入,擁有超高導入性能,且並發能力極強。
- 第二是Hologres 采用存儲計算分離架構,數據存儲在阿里雲分布式文件系統pangu中(類比開源HDFS),方便按需單獨擴展計算或者存儲。對快速行業來說,大促和日常所需要資源不一樣,能夠快速擴縮容,滿足業務的動態需求。同時Hologres支持異構數據源交互分析以及離線數據和實時數據的聯邦查詢,Hologres已經和MaxCompute無縫打通,能夠直接在Hologres中加速查詢MaxCompute離線表。
- 第三是維護成本低、運行穩定,Hologres作為實時數倉存儲成本大約是ADB的1/3。資源靈活性高,可以像MaxCompute一樣靈活的升降配置,與阿里雲大數據組件兼容性高,能降低運維成本和提高研發效能,不會對技術架構帶來很大負擔。
2 Hologres應用場景
在面向分析OLAP系統里面,Hologres承擔了實時和離線數據的查詢,由於Hologres既支持高並發寫入,又能夠滿足及時查詢,同時還能夠支持OLAP分析,在我們的不同粒度的表進行連接的時候,能夠充分發揮其優勢。下面列舉2個不同的場景對其做一個詳細的說明。
場景一:庫內操作場景
場景2:倉間調撥場景
對於一些數據量小的表,依賴於Hologres強大的Join能力,通過視圖來構建DWS中間層,如下圖所示:
3 Hologres目前的不足
在使用Hologres期間也發現的一些不滿足實際需求的地方:一是非空列不能建立索引,多個億級別表連接在沒有索引的情況下,查詢速度下降。二是Hologres兼容Postgre生態,但支持的函數不多,在開發上與MaxCompute相比有一定的難度。
五 業務價值
整個雙11期間,遞四方通過升級實時數倉技術,基於Flink+Hologres搭建的實時數倉支撐了實時大屏的高頻刷新訪問,實時監控物流動態,促進了業務高效運行,讓消費者的快遞更快到家。整個架構升級給業務帶來的價值有以下幾個方面:
穩定:基於Hologres持續高穩定的輸出,整體雙11期間不論是實時數據寫入、還是數據的讀取都表現出了極強的穩定性。整個雙11期間,真正做到了0故障率。
實時:實時的攬收、庫內操作、中轉調撥等實時大屏,對我們的運營提供了非常強有力的實時數據支撐,整體時效比去年提高了不少,給用戶帶來良好的物流體驗,提高了公司的服務水平。
雲原生:除了上面兩個核心價值之外,由於雙11期間是流量高峰期,比日常流量高出上千倍,通過Hologres可以實現動態擴縮容,滿足我們對資源的不同需求,從而也降低了運維成本。
這是遞四方參與的第7個雙11狂歡節,遞四方在這次的物流大考中交出了滿意的答卷。隨着業務迅猛增長,遞四方也在不斷演進背后的實時數倉技術來支撐更豐富的倉儲物流場景,讓物流從“手工化”逐漸轉變為“智能化”。