雷鋒網 AI 科技評論消息,11 月 8 日,美國計算機協會(ACM)公布 2018 年度傑出科學家名單,全球資料庫領域領軍人物、達摩院資料庫首席科學家、阿里巴巴資料庫事業部負責人李飛飛教授入選。
ACM 是國際上歷史最悠久、規模最大、最權威的計算機專業學會,著名的圖靈獎即由該組織評定頒布。ACM 傑出科學家必須是對計算機領域做出重大成就和影響的研究人員。
李飛飛,猶他大學計算機系終身正教授。曾獲 ACM、IEEE、Visa、Google、HP等多個獎項,獲 IEEE ICDE 2014 10 年最有影響力論文獎、ACM SIGMOD 2016 最佳論文獎、ACM SIGMOD 2015 最佳系統演示獎、IEEE ICDE 2004 最佳論文獎、美國 NSF Career Award、中國基金委海外重點研發獎等。擔任多個國際一流學術期刊和學術會議的編委、主席。
李飛飛教授於今年五月正式加盟阿里巴巴達摩院,帶領團隊投入到具有自主智慧財產權的資料庫系統研究當中,包括新一代分布式資料庫、非結構化數據管理、數據安全、智能化資料庫等關鍵技術,並致力於將中國資料庫技術水平提升至國際前沿,打破寡頭企業對資料庫核心技術的壟斷。
目前,李飛飛教授帶領的阿里巴巴資料庫事業部所研發的新一代分布式資料庫系統,支撐了阿里巴巴集團的複雜業務、海量數據和雙11交易洪峰的挑戰,已經被應用於多個城市的智能城市交通網絡管理,實現城市內數千萬智能終端數據的瞬間調取與分析。此外,中國氣象的國家氣象大數據分析平臺也應用其技術,實現了毫秒級的氣象數據查詢與分析,該資料庫存儲了1957年建站以來,6萬多氣象站的分鐘級數據
雷鋒網 AI 科技評論借著這一契機,第一時間對他進行專訪。採訪中,李飛飛教授談到加入達摩院是一個迎接大規模挑戰的機會,也是形成工業和科研聯動的機會,他也對雷鋒網介紹了阿里自研並計劃近期商業化的新一代分布式資料庫系統,更講解了資料庫系統的問題如何理解、有何展望。以下為訪談實錄,有刪減。
研究之路
這次獲得 ACM 傑出科學家榮譽,有什麼獲獎感言與大家分享?
(笑)怎麼講呢?我比較喜歡腳踏實地搞技術,一步一步。獲得 ACM 傑出科學家榮譽稱號,當然還是非常高興的,這是對我過去成績的肯定,也是對我這麼多年來做資料庫系統的肯定。
從公司層面上說,加入阿里之後獲得這個獎項可以幫助阿里、包括達摩院打造更好的技術品牌形象,往大的方向說,可以幫中國的資料庫領域去擴大一些宣傳,爭取更多的聲音,我覺得非常高興。
您是什麼時候開始對資料庫研究產生興趣?
讀本科的時候。當時我上了一門課資料庫課程,做了一個小項目,後面就用到了資料庫系統,用了以後發現這個系統挺有意思,因為是否建 index,或者數據怎麼分片對性能會產生很大的影響。當時我把資料庫系統當做黑盒子來調參,發現調節過程中,性能等各方面會產生很大的變化。我對黑盒子是怎麼造就的產生了很大的興趣,所以就決定去打開這個系統。打開以後,我發現這裡面非常複雜,涉及到事務處理、查詢優化器、存儲引擎,還有各種不同的數據,另外還有在高可用、分布式上的挑戰,越深入研究,越發現這個領域非常深。
在這些年的研究中,有什麼心得體會可以與大家分享?
我在這些年的求學、教學經歷中,以及與 Google、Facebook、Visa等國內外企業的合作中,最深刻的一點體會就是做技術一定要腳踏實地、實事求是,不要為一些短期目標去放棄自己長期的堅持和追求。
核心技術突破非常具有挑戰性,必須持之以恆。這有時候很難,因為在技術上會涉及到一些名和利,也要去追求一些短、平、快的東西,這些都能理解,但是一定要有長期的堅持,尤其是我們做系統研究的,更是要有一個長久的預定目標,然後一步一步去實現。
科研並不是說能夠在很短的時間內就產生比較大的突破,它是在很多人努力的情況下,慢慢去摸索、去積累,到一定程度以後,就會產生突破。
加入阿里
這次達摩院引入了一大批水平非常高的專家和學者,您當時加入達摩院的契機是什麼?
主要有以下幾點:
第一,我非常認可阿里的技術品牌形象,它對技術的投入非常認真,而且它的目標就是要做世界一流的技術。可能在大多數百姓眼中,阿里是一個商業帝國,在商業上非常成功,但實際上,我覺得在過去幾年阿里的轉型中,它所承載技術的厚度和深度,已經發展得非常好了,而且慢慢也成為一家以技術為第一驅動力的公司。
第二,阿里的業務非常複雜,這會帶來一個好處,我們能夠快速驗證和落地現有的技術,而不是說空中樓閣,沒有應用、沒有數據。現在大數據、人工智慧還有系統方向的發展越來越複雜,都是高並發、分布式這種大規模的體系,我覺得只有少數的一些企業,比如阿里,或 Google 才有這種規模去探索一些技術上的挑戰。這也是我加入阿里的另外一個訴求,能夠有這種真正的大規模的系統的場景、數據以及業務來驅動技術發展。
最後一點是達摩院本身的品牌,這裡匯聚了一幫非常高水平的研究人員,包括達摩院院長及阿里巴巴集團CTO張建鋒,他在阿里技術體系下一步步成長起來,帶領達摩院吸引了一大批世界一流的科學家。他的作風非常接地氣,也非常能成事,具有很強的感染力和影響力。
您是什麼時候開始考慮進入工業界發展的?
回到我前面說的,我們做系統,尤其是資料庫系統,發展到今天,學術界能夠做到的規模和工業界的規模存在一定差異。
工業界管理的系統節點都是以千來計算,甚至上萬臺,在學術界,因為受限於資源、應用還有數據,能搭上百個節點就已經很不錯了。
工業界有一手的數據和海量的應用,像阿里雙 11 這種場景,在學術界你是沒辦法去模擬這種規模和挑戰的。
這時候工業界對我來說就變得非常有吸引力。之前與谷歌、微軟合作加強了我對工業界的了解,阿里接觸我以後,我也挺認可他們做的事情。從業務上來說,從技術的角度來看,阿里的規模和挑戰很大,這點非常吸引人。
您於今年 5 月加入達摩院,您當時在工作上的規劃以及研究上的想法是什麼?
阿里給了我一個很好的平臺,達摩院實驗室可以支撐我做一些科研上的探索,另外我下面還有資料庫和存儲兩個事業部,這是兩個工程團隊。
一方面,我可以有實驗室來做一些科研上的探索,同時又有工程團隊來給我空間和這個舞臺,讓我去帶領大家去真正去做系統的研發,還有運維等工作。兩邊可以很好地互動起來,可以將科研上的東西很快地去落地到真正的系統裡,系統面臨的挑戰又可以很快去反饋,來推導我們科研到底應該去做什麼樣的問題。這兩方面形成了一個很好的聯動。
這是我加入阿里以後,體會非常深的一點。
這五個月的工作和您當初設想的大體一致?
基本上一致,既有科研上的前沿挑戰,但同時又不是那種空中樓閣。
我現在 1/3 的時間在看科研上最新的技術挑戰,1/3 的時間和工程團隊做一些一線的研發工作,這完全是工程上系統化的東西,還有 1/3 的時間去做一些運維相關的工作。
阿里和其他一些公司不太一樣,它的技術產品既通過阿里雲去輸出到第三方,服務國內的大中小企業,包括國際上的一些企業,同時又支撐了自己的內部業務,比如淘寶、天貓、優酷等,它的業務線非常複雜,所以我們做的產品,很快就要在公司內部落地,落地以後在運行的過程中又有運維的壓力。所以實際上這是一整套循環。
新的挑戰
與之前在大學的教學相比,阿里的工作帶來的挑戰集中在哪些方面?
第一,阿里這種技術團隊,既有研發任務,又有運維任務。以前在學校的研究不會涉及到運維,但在阿里就不一樣,阿里是為無數個企業用戶提供支持和服務的,很多業務方在用我們的技術產品,出了問題之後自然而然要你去幫他解決。
安全生產對我們來說是非常大的一個挑戰,一旦我們的資料庫系統出現問題,對線上的淘寶、天貓,線下的盒馬鮮生都會產生很大影響。
第二,我來阿里之後,下屬的實驗室團隊和工程團隊有四百人左右的規模,對於我這樣一個技術背景的人來說,在管理上也會有一些挑戰。
第三,阿里的文化講究簡單真誠,如何快速融入到這種文化裡,這對每個人都是一種挑戰。
您所在團隊研發的新一代分布式的資料庫系統支撐著阿里的很多場景,您能更多地介紹一下這個系統嗎?
這個系統在我們內部的代號叫 X-DB,它是阿里巴巴從大概 16 年開始做的一個分布式數據系統。為什麼要做分布式?這源於阿里的業務場景,像雙 11 這種高並發場景下,對資料庫後臺帶來的衝擊是非常高的,傳統的單機根本解決不了這個問題;而且數據量非常大,數據規模數據形態非常複雜,所以必須用分布式的方法把負荷分布到多個集群,多個節點上面去。
從 16 年開始,阿里自研 X-DB 分布式系統,發展到今天,它已經能夠支撐阿里巴巴幾乎所有的業務,像淘寶、天貓,還有餓了麼、優酷。
在您進入阿里之後,針對於這一系統,您做了哪些針對性的改進?
我主要做了如下幾點調整:
第一,X-DB 前期的發展主要是以支撐阿里巴巴內部的業務為標準,所以會定製化、與業務相關。我們後續的目標是要把它打造成標準化、產品化的通用資料庫系統。
第二,在高並發和高可用的情況下,我們希望做得更優化,這得有一些核心的技術手段去保障。
第三,在智能化運維方面,傳統的資料庫系統調優,可能要大量依賴人力資源和經驗,我們現在希望能夠用機器學習的方法去根據系統的負載,自動地學出負載的模式和特徵,然後進行系統參數調優。
另外,我們現在開始布局資料庫安全,希望我們的資料庫能夠提供數據安全特徵,比如把數據加密以後再存到資料庫中,然後通過不解密的方法就能夠對資料庫進行查詢和操作。
現在計算機視覺、自然語言處理等人工智慧相關領域特別火,這樣會對資料庫方面的人才儲備產生影響嗎?
我以前在高校做教授,包括現在我在上海交大致遠學院的 ACM 班當講席教授,那裡的學生都是非常優秀的計算機本科學生,我看到這幾年有很多學生都去就讀機器學習相關方向,比如計算機視覺、自然語言處理、語音識別。
我覺得有幾方面的原因。
第一,與人工智慧結合的方向都是非常偏應用化的場景,比如圖片識別、自然語言理解、語音識別,老百姓也能看得見,摸得著,能馬上能夠理解這些成果,但是計算機領域的三大基礎軟體——編譯器系統、作業系統、資料庫系統,對大多數人來講,是系統底層,是看不見摸不著的。即使你做了很多,大家也很難理解這到底有什麼應用。這樣不管是學生還是專業人士,都很難吸引來這個領域發展。
第二,人工智慧、機器學習確實是一個很重要的方向,而且現在確實有一些最根本的基礎性的問題還沒有被解決。從科研的角度來講,這些研究也確實非常吸引人。
很多時候大家會覺得系統就是個工程問題,實際上做深了以後,它也會有許多科研上的挑戰,很吸引人。
從這兩方面來講,人工智慧現在非常火也是有其原因的,對系統方面的人才確實產生了一些衝擊。我也希望能夠通過阿里的平臺,或者通過我們與高校的合作,大家一起去擴大底層系統的宣傳力和品牌形象,吸引到更多的人來做這些底層的系統。上層是應用,底層系統是基礎。
目前您的團隊和哪些高校有著合作關係?
我們和高校有挺多合作,國內像比如清華、北大、浙大、上海交大、華東師範大學、香港科技大學、中科院等。國外有新加坡國立大學、新加坡南洋理工大學,我們目前都有科研項目在合作。
後續我們也希望通過阿里的平臺能夠更寬、更深地去和國內的高校合作。
我覺得和高校合作有兩個意義,第一,這有一些立竿見影的效果,利用高校的智力資源幫我們去解決一些業務上、技術上的核心挑戰。第二,更重要的是長期的投資過程,阿里作為這麼大的一個經濟體,它必須擔當起對應的社會責任感,要考慮社會效益,與高校的合作是長期的,值得去投入。培養出來的這些學生,他們畢業後也是全社會非常豐富的人力資源儲備。
您前面提到系統做深之後,也會碰到一些就比較難的挑戰,能具體談談嗎?
系統是一個大規模、工程化的東西,裡面的科研點非常多,但是有時候會有一種「老虎吃天,無從下爪」那種感覺。現在很火的機器學習的很多應用,計算機視覺中的問題,可能已經抽象得非常精確了。我們的大腦思維方式很容易去理解這種抽象化的問題,可以快速簡單地描述清楚。
但系統不是這樣,資料庫系統到底有什麼挑戰?資料庫系統到底是什麼?很難用一兩句話講清楚。因為它是一個複雜的工程,我覺得這是最大的一個挑戰。
換種方式來講,系統的上手過程非常漫長,不是簡單地掌握了一兩個核心的點或者工具,你就可以去突破,這牽扯到方方面面。
具體到工程的時候,比如你遇到一個 bug,或者去調優、調參時,很多時候都是牽一髮而動全身,系統的模塊和模塊之間有很強的關聯性。調了這個點之後,可能這個點被優化了,但其他的一個點就會被弱化,從整個系統的角度來講,很難講這到底是好還是壞。
這和應用相關的一些領域很不一樣,系統很難被定性優劣。舉個例子,比如修高速公路,可能有人會想高速公路肯定是車道越多越好,五車道肯定比三車道要好,但實際上你再仔細想想,放在一個更大的系統裡面看,可真不是這樣,你修的車道可能會佔用旁邊的地,比如商業用地、工業用地或者農業用地,那這又會帶來連鎖反應。系統的挑戰就在於此,它不是一個孤立的問題,它是一個連鎖問題,一環扣一環。這是我這麼多年以來,對系統的研究最深的體會。
資料庫研究所牽涉到的跨領域知識點有哪些?
舉個例子,說比如說我們的平臺上面跑了幾千或者幾萬個資料庫實例。那麼傳統的方法就是 DBA(資料庫管理員)一個一個去看,這個實例我應該怎麼調,它的工作負載是怎麼變化的。這顯然是不具備可拓展性的。
那在固定資源情況下,即總的機器數、總的 CPU 核心數目、總的內存容量一定的情況下,我們工作負載到了每個機器上,那麼每個實例的資料庫負載是隨著時間有變化的,我們要怎麼樣在有限的資源內去做更好的調優。比如說這個資料庫的實例現在是它的峰值,那我們就應該把更多的 CPU 核心或更多的內存分配到這個資料庫的實例上去。但這個實例不可能永遠控制這麼多資源,那麼當它的負載結束以後,我們能不能夠快速的判斷出來,而且自動的把剛才分配給他的資源快速地分配到其他的資料庫實例上去。這就是一個自動調優的一個過程,牽扯到運籌學統計還有機器學習的方法。
資料庫系統再舉個例子,又跟硬體非常有關係。我原來在美國讀博士的時候,一開始接觸系統就學到一句話,當時就把它硬背下來,現在我越來越深刻地理解了。A system is about efficient and safe use of limited resources,拿中文來講,"系統就是高效安全地使用有限的資源"。
聽起來好像平淡無奇的一句話,但實際上這裡面的水非常深。
首先我們的硬體資源有限,如果你有無限的 CPU ,有無限的核,有無限的內存,那系統隨便你怎麼處理,可能都還不錯,性能也挺好的。
但問題是我們是有限的資源,也有資金上的限制。在有限資源下做你的事情,第一要高效,第二要可靠。這就牽扯到對硬體的理解,比如說 SSD 是怎麼運作的,加密的數據要怎麼利用安全硬體,怎麼樣去做 CPU、FPGA 的加速。需要對硬體有很深刻的理解,才能夠寫出來高效的軟體系統。
所以現在另外一個點就是軟硬體一體化,我舉了以上兩個例子來回答你剛才的問題,資料庫系統它牽涉的面還是比較多的。
(完)