阿里李飛飛:在雲計算時代,雲原生數據庫變得越來越重要

編譯|Ailleurs

作者|陳彩嫺

李飛飛,阿里巴巴集團副總裁、阿里雲數據庫產品事業部負責人,也是達摩院的數據庫首席科學家,任達摩院數據庫和存儲研究實驗室的主任。他在加入阿里巴巴之前是猶他大學計算學院的教授。他的研究興趣包括數據庫系統、大規模數據管理、數據安全、數據分析以及用於系統性能和監控的機器學習方法。同時,他還是ACM Transactions on Database Systems(ACM TODS)期刊的副主編,曾多次擔任ACM SIGMOD和ACM SIGKDD的高級區域主席,並擔任過各種領導角色(如總聯合主席)和多個ACM SIGMOD會議的項目委員會成員。

近日,ACM對李飛飛進行了一次訪談,內容主要涉及李飛飛團隊在阿里巴巴雲基礎建設方面的目標規劃、雲原生數據庫系統的運用、對漫遊連接算法的介紹,以及機器學習技術在電子商務中的巨大影響。最後,李飛飛還談到了他關於學界與業界工作差異的感悟。

本文將採訪編譯如下:

ACM:作爲阿里巴巴數據庫首席科學家,您關於公司雲基礎設施建設的總體目標是什麼?

李飛飛:我們團隊的主要目標是爲阿里巴巴自身的業務運營和阿里雲上企業客戶構建尖端的、世界級的雲原生數據庫系統,例如我們的雲原生關係型數據庫PolarDB和雲原生數據倉庫AnalyticDB(ADB)。

在雲計算時代,由於對彈性、高可用性、可擴展性的需求以及來自不同業務領域的應用程序對按需使用的需求增長,雲原生數據庫變得越來越重要。雲應用程序的這些需求爲雲原生數據庫提供了新的機會,而傳統的企業內部數據庫系統無法完全滿足這些需求。通過探索共享存儲和完全共享的架構(shared-everything architecture),雲原生數據庫利用底層雲基礎設施提供的資源池,將計算與存儲分離,從而獲得了出色的彈性和高可用性。對於要求水平擴展的高併發工作負載,雲原生數據庫可以進一步利用一個無共享層(shared-nothing layer)來提供分佈式查詢和事務處理能力。我們的最終目標,爲我們的業務運營和雲客戶提供經濟高效、易於使用且高度可靠的數據庫服務。

ACM:在阿里巴巴雙11全球購物節期間,該網站的流量在幾秒鐘內可激增150倍。您的團隊開發了哪些工具來處理這類網站流量波動?您如何看待這些技術在將來的發展趨勢?

李飛飛:如上所述,在應對這樣的應用場景時,成功的關鍵是通過底層數據庫系統產生極高的彈性和高可用性。一眨眼間,流量就會突然激增,可操作的數據庫系統必須以經濟高效的方式來抵禦這種海嘯般的「襲擊」。對於一個典型的、傳統的本地數據庫系統來說,必須要提前提供大量的硬件資源,以滿足峰值時的工作負載。而一旦高峰流量在短時間內減少,就可能會導致成本高昂和資源浪費。

相比之下,雲原生數據庫系統能夠通過探索共享存儲和完全共享的架構,以按需的方式來進行自適應地、彈性地分配和釋放資源。計算和存儲的解耦,以及各種資源(計算機和存儲資源)的共享,使得雲原生數據庫系統具有自適應性。我們還利用分佈式查詢和事務處理,通過水平分區來提供進一步的可伸縮性,從而滿足高併發性的需求。

此外,Raft或Paxos等分佈式共識協議得到了擴展和增強,使得可用區(available zone,AZ)內部和可用區之間都具有高可用性,從而可以在不擔心數據丟失和業務停機或中斷的情況下處理任何故障。同時,利用軟硬件協同設計來探索RDMA、NVMe等新硬件和DPDK等內核旁路協議所具有的加速和優化作用。

HTAP(Hybrid Transaction and Analytical Processing,混合事務和分析處理)是當今雲原生數據庫系統追求的另外一個趨勢,它的目標是在雙11購物節時,爲集羣用戶的數據處理和分析需求提供一站式解決方案。

最後,很重要的一點是,自驅動數據庫(又稱“自治數據庫”)技術通過將機器學習技術與雲原生編排組件(如kubernetes)和各種數據庫模塊(如慢SQL診斷、索引推薦)相結合,簡化了雲設施上雲原生數據庫的部署、維護和操作。例如,我們在阿里雲建立了DAS(database autonomy service,數據庫自治服務),爲雙11運營和雲客戶提供服務,以確保我們的系統儘可能具有自我修復、自我調整和自適應能力。

ACM:您最著名的研究工作之一“Wander Join: Online Aggregation via Random Walks”在2016年第35屆ACM SIGMOD會議上獲得了最佳論文獎。在這項工作中,您和您的合作者提出了一種新的方法來處理複雜連接的在線查詢。這篇論文的主要觀點是什麼?目前在查詢處理領域有哪些創新性探索?

李飛飛:查詢處理和優化是數據庫系統最關鍵的組成部分之一。在這方面,JOIN(一種用來從多表數據中查詢和訪問數據的SQL子句)是最常見但也最昂貴的數據庫操作。採樣提供的估測比計算精確結果要快得多,這對於查詢處理和優化任務來說非常重要。但是用JOIN來進行採樣是很困難的,這是近20年以來數據庫領域一直面臨的挑戰。在這項工作中,我們引入了新的數據採樣技術,以實現近似和交互式查詢處理(比如,提供在線的近似結果,並對結果的質量進行持續地改進)。在線估計器的質量會隨着時間的推移而提高,最終它會得到準確的結果。這對於大數據分析和查詢處理而言非常具有吸引力,因爲用戶可以根據自己的意願來發出查詢需求,並立即看到查詢結果,而且輸出的結果質量會逐漸提高,直到找到準確的結果爲止(如果需要的話);否則用戶必須等待,不知道什麼時候才能獲得最終的準確結果。它們還可用於查詢優化(例如,估計複雜查詢項目的中間查詢結果的基數)。

本文提出的漫遊連接算法通過在連接圖上隨機遊走,巧妙地實現了採樣。連接圖不是具體化的,而只是通過仔細的加權採樣過程和估計中的偏差調整來進行概念上的探索。這使得漫遊連接算法在數量級上優於現有的方法,這大大推動了最先進技術的發展。正如我們在2017年ACM SIGMOD會議上被評爲“研究亮點”的一篇論文中所說的,「在數據庫管理系統的研究歷史中,有大量的研究都曾利用採樣以一種比精確計算更快的速度來估計查詢結果。本文提出了一種高效的替代方案,實現了比以前最先進的技術還要更好的計算和統計特性;通過Postgres中的一種開源實現來進行的實驗令人信服地證明了這一點」。

漫遊連接產生的是獨立但不均勻的樣本;但有時候,更復雜的分析操作(機器學習方法,比如支持向量機)需要的是獨立且均勻的隨機樣本。我們在SIGMOD'18中的後續工作展示瞭如何獲得複雜連接的真正隨機樣本。這項研究還帶來了一些領域的創新,比如基於學習的查詢處理和優化方法。這些想法在“DeepDB: Learn from Data, not from Queries!” 以及“BlinkML: Efficient Maximum Likelihood Estimation with Probabilistic Guarantees”等論文中都有所概述。我們這項工作還啓發了真實系統中的實際運用和設計問題。

ACM:機器學習方法是如何改變阿里巴巴等大型電子商務公司的?最重要的改變方式是什麼?

李飛飛:機器學習在現代的進步已經對包括阿里巴巴在內的更多的組織和社會產生了根本性和持久的影響。舉個簡單的例子,阿里巴巴電子商務網站和應用程序中的推薦框架,要依賴經過精心設計和微調的深度學習模型,從而爲瀏覽網站和應用程序的客戶提供更有效的商品匹配。當然,機器學習的影響不僅僅體現在推薦方面。在阿里巴巴數據中心的運營中,我們探索並利用機器學習技術構建了AIops這種智能監控和協調工具,以提高數據中心運營的效率和有效性。還有許多其他的場景和例子,也都可以表明機器學習和人工智能方法的變革性影響,它們越來越成爲許多系統中的關鍵構建組件,包括上面提到的雲原生數據庫系統(例如使雲原生數據庫系統能夠進行自我調整)。

ACM:在加入阿里巴巴之前,您在美國猶他大學擔任教授。與學術界相比,在工業界工作的最顯著差異是什麼?

李飛飛:在猶他大學計算機學院任職期間,我在計算機科學領域的研究和工程生涯的增長和豐富是巨大且難以形容的。那裡擁有世界上最好的計算機教育和研究項目之一。我永遠感謝我所在的學院和學校。不過,在阿里巴巴這樣一家偉大的公司工作,無疑也爲我理解計算機科學提供了一個不同的、豐富的視角,這既是一門技術型學科,也是一個日益重要的商業領域。爲一家公司工作意味着你得總是把業務和客戶需求排在第一位,必須專注於由業務驅動的實際客戶需求。這並不一定意味着你可以沒有長期的規劃目標,但這些目標必須非常集中,而且要對具有精心設計、明確闡述的戰略計劃和商業價值的實際應用具有價值。

這與在學術界工作截然不同,在學術界,首要任務並不是創造商業價值,而是創造智力價值。最終目標往往是探索一個未解決的問題或挑戰,即使這樣的努力最終只是一種智力練習。但正是通過追求這種好奇心,才得以實現創新性突破,工程上的努力最終能夠使新技術的採用在實踐中普及和擴展。

歸根結底,無論是在學術界還是在工業界,這一切都是在爲我們整個社會和文明的良好運行創造價值,爲之做出貢獻。從我目前的角度來看,我相信我在學術界和工業界的職業生涯已經得到了相互補充和豐富了!

原文鏈接:https://www.acm.org/articles/people-of-acm/2022/feifei-li