有10萬件大小不同的商品,,要平均放到1萬個箱子里,,應該如何分配?對于人類來說,這是一個可解的問題。
如果問題更難一點:10萬件商品隨時變大變小,而且有“礦泉水不能壓在薯片上”等大量限制條件,如何在幾秒鐘內給出最均衡的裝箱方案?
阿里巴巴的工程師每天都會面對這類問題,。無數應用對服務器的需求每時每刻都在變化,如何才能把這些應用均衡地分配到數萬臺不同規(guī)格的機器上,。為了解放人類工程師并能夠更好地分配計算資源,,11月6日,阿里巴巴計算資源AI分配官“達靈”正式上任,,準備迎接天貓“雙11”的挑戰(zhàn),。
實習期間,達靈將數據中心資源分配率拉升到了90%以上,,在部分業(yè)務中節(jié)省了一半服務器,,并且可以兩秒鐘鎖定異常機器,命中率94%,。
節(jié)省一半服務器
打開手機淘寶,,首頁可以看到“有好貨”、“猜你喜歡”等常用功能模塊。此前,,人工為每一個模塊分配服務器數量并監(jiān)督運行情況,。對于工程師來說,工作量和難度挑戰(zhàn)巨大,。
“伴隨‘雙11’規(guī)模的逐年暴漲,,這樣的工作已經不適合人來做了?!?阿里巴巴資深搜索研發(fā)專家鄭南說,。為此,,阿里巴巴搜索團隊對“達靈”進行了大量訓練和工程化,,在實習期“達靈”就完全替代了人工,在推薦平臺智能調度方面將資源分配率提高了一倍,,這相當于節(jié)省了一半的機器,。
“這套算法能夠快速給出最優(yōu)的部署方案,并且根據訪問量不斷搬運應用和數據,,確保沒有一臺機器偷懶”,。鄭南說,我們要做的就是不斷用數據喂養(yǎng)她,,提供表格數據大小,、訪問量以及目前的部署方案等信息,剩下的就是喝著茶看她的表演,?!八踔量梢栽诰€上克隆一個真實的服務,自己進行壓力測試,,以判斷方案是否最優(yōu),。”
兩秒隔離異常機器
阿里巴巴遍布全球的數據中心如果有一臺機器發(fā)生異常,,未被及時處理,,會帶來什么損失?天貓“雙11”期間,,可能會使近百萬用戶下單失敗,。
為了避免這種情況,每年“雙11”都會有大量的工程師緊盯著集群的健康情況,。如果發(fā)現異常機器,,馬上進行手工隔離甚至直接下線,俗稱“殺機器”,。
但從出現異常,、被發(fā)現到處理完成,整個過程有時長達數分鐘。阿里巴巴調度系統(tǒng)資深專家丁宇說,,“之前已經做到了人的極限,。去年開始探索AI,把時間,、負載,、服務狀態(tài)等不確定因素通過數據算法關聯(lián),最終找到了解法”,。