《企業網D1Net》4月27日訊
在大數據基礎架構選型時,經常聽到的一個說法是——“如果數據規模在TB級可以選擇MPP架構的關系型數據庫,如果數據規模上升到PB級則應該選擇Hadoop”。但事實上MPP架構的關系型數據庫與Hadoop的理論基礎是極其相似的,都是將運算分布到節點中獨立運算后進行結果合并。區別僅僅在于前者跑的是SQL,后者則是MapReduce程序。跑什么其實只是形式而已,是用戶使用習慣,相對而言SQL作為數據庫領域的事實標準語言使用更加廣泛,從而限制住用戶快速進入Hadoop大數據時代的步伐。
隨著Web2.0、Web3.0、移動互聯網、物聯網等等事物的興起,人們創造了更多的數據,收集更多數據成為可能,業務的需求促進了大數據技術包括Hadoop的發展。不少公司都在加快SQL開發,而星環科技則是其中的一員。星環科技CTO孫元浩在2015年第六屆中國數據庫技術大會(DTCC)上表示,隨著Hadoop上SQL性能上及安全容錯上的不斷提升,Hadoop在未來兩三年將會取代MPP,混合架構會逐漸的消失。
作為國內數據庫與大數據領域最大規模的技術盛宴,2015年第六屆中國數據庫技術大會(DTCC)在一場北京近年來最大的沙塵暴中拉開了序幕。4月16日,大會第一天上午,來自星環科技的CTO孫元浩給我們帶來《大數據基礎技術發展的兩大方向和最新研發成果》的主題演講。
大數據基礎技術發展的兩大方向是什么?為什么會是這兩個?星環科技在這兩方面有那些研發突破?為何Hadoop能取代MPP,混合架構會消失?為何星環科技會與眾不同,定位基礎軟件公司?星環的產品策略又是什么呢?帶著這些問題,老魚在會后專訪了星環科技CTO孫元浩,就這些問題進行詢問和解答。
老魚:孫總,您好!一直聽說你是個富有傳奇色彩的人,今天終于見到真人了,先請您跟我們的網友打聲招呼,簡單介紹下自己和公司產品。
孫元浩:大家好,我是孫元浩,其實我的經歷還是比較簡單的,大學碩士畢業后加入英特爾,在英特爾工作了10年(曾任英特爾亞太研發有限公司數據中心軟件部亞太區CTO)。2013年離開英特爾創業2年,也就是星環科技,從事大數據時代核心平臺數據庫軟件的研發與服務。公司研發團隊大多來自知名外企,員工的85%為研發工程師,以博士碩士為主。
我們的產品Transwarp Data Hub (TDH)是基于Hadoop和Spark的分布式內存分析引擎和實時在線大規模計算分析平臺,相比開源Hadoop版本有10x~100x倍性能提升,可處理GB到PB級別的數據。星環科技同時提供存儲、分析和挖掘大數據的高效數據平臺和服務。
老魚:您在演講中提到Hadoop技術經過10年的發展,到目前為止還沒有被大面積普及的制約因素有2個:SQL技術制約和彈性計算的需求沒被得到滿足,這2個因素限制了Hadoop的普及,解決這2個問題將成為大數據技術發展的兩大方向。Hadoop普及涉及的問題有很多,為什么您覺得解決這2個問題會成為大數據技術發展的方向?能否給我們具體分析下?
孫元浩:這其實是過去幾年,我們從市場上觀察到的現象,Hadoop還沒有被大面積普遍采用,障礙來自兩個方面:
1、SQL on Hadoop的技術進展制約了企業原有應用的遷移以及新應用的開發;
2、Hadoop加速Docker化,企業在建設大數據平臺或者Data Lake時,往往有多租戶資源管控和彈性計算的需求,這些需求現有的YARN或者虛擬化技術沒有滿足。
第一個方面,過去大家談大數據,做一些數據挖掘的工作,但實際上企業更多的應用是在結構化數據的處理,主要用的操作語言是SQL,我們發現60%的Hadoop應用是用在SQL統計領域。
當我們把Hadoop運用到企業中去時,新應用有待驗證,老應用其實已經出現了數據量很大,急需用Hadoop來加速的需求,但現在的問題是,客戶想遷到Hadoop上,形成效率降低成本,卻遷不過來!其中的關鍵因素是大量客戶的SQL極端復雜,這種情況我們在運營商和銀行都有發現,銀行貸款風控SQL非常復雜,要完成遷移需要太多時間去改造,有些語法甚至沒辦法改造,因此SQL支持的完整程度比性能更加重要,沒有這些語法支持,要想把現有應用遷移到Hadoop上來是不可行的。
SQL作為數據庫領域的事實標準語言,相比較用API(如MapReduce API,Spark API等)來構建大數據分析的解決方案有著先天的優勢:一是產業鏈完善,各種報表工具、ETL工具等可以很好的對接;二是用SQL開發有更低的技術門檻;三是能夠降低原有系統的遷移成本等。因此,SQL語言也漸漸成為大數據分析的主流技術標準。而要想讓SQL用戶快速進入Hadoop大數據時代,就必須要解決這個問題。
第二個方面,也來自真實的用戶訴求。我們有三分之一以上的客戶要求把Hadoop跑在虛擬機上,但每次我們都只能無情的拒絕,因為Hadoop放在虛擬機上,性能瓶頸是非常嚴重的,穩定性很差,主要原因是因為傳統的虛擬機是把一臺物理機變成多個虛擬機,CPU負載很低。而虛擬機跑大數據應用, CPU利用往往達到99%,很少有人在虛擬機上把CPU用到99%,這個時候hypervisor就撐不住了,穩定性成為一個大問題,這也就阻礙了用戶使用Hadoop第二個大問題。
因此,這2個方向都是我們希望幫助客戶解決的,市場非常大,如果把這2個問題解決,我相信Hadoop在使用上就能再上一個量級。
老魚:孫總,能否在這里給我們介紹下星環針對這2個問題,取得的最新技術研發成果?
孫元浩:其實我們最新技術研發成果都是被客戶逼出來的,我們的研發成果是源于用戶需求。有客戶問我們,我這里有21萬2千行的SQL你能不能跑?也客戶有30幾萬行SQL,說你們Hadoop不是很牛嗎?試試能不能跑?這迫使我們在2013年組織一個由編譯器專家組成的團隊,開發了一個Hadoop PL/SQL編譯器,當時的目標是選擇跟Oracle兼容,先把Oracle用戶遷移過來,經過2年的發展,我們星環的Transwarp Inceptor實現了自己的SQL解析執行引擎,可以兼容SQL 99和HiveQL,自動識別語法,因此可以兼容現有的基于Hive開發的應用。由于Transwarp Inceptor完整支持標準的SQL 99標準,傳統數據庫上運行的業務可以非常方便的遷移到Transwarp Inceptor系統上。此外Transwarp Inceptor支持PL/SQL擴展,傳統數據倉庫的基于PL/SQL存儲過程的應用(如ETL工具)可以非常方便的在Inceptor上并發執行。另外Transwarp Inceptor支持部分SQL 2003標準,如窗口統計功能、安全審計功能等,并對多個行業開發了專門的函數庫,因此可以滿足多個行業的特性需求。
另外一個相當大的突破,是我們開辟了一個新的產品線TOS(Transwarp Operating System),TOS是為大數據應用量身訂做的云操作系統。基于Docker和Kubernetes,TOS支持一鍵部署TDH,基于優先級的搶占式資源調度和細粒度資源分配,讓大數據應用輕松擁抱云服務,不限于跑Hadoop集群,也可以跑傳統的數據庫業務如MySQL, PostgreSQL, Redis等,解決第二個挑戰。這個操作系統正式發布是今年的6月份,目前其實已經提供給客戶開始試用了。在國內Docker化的Hadoop系統,我們是領先的。
老魚:我們經常聽到的一個說法,用MPP處理PB級別的、高質量的結構化數據;用Hadoop實現半結構化、非結構化數據處理。這樣可同時滿足結構化、半結構化和非結構化數據的處理需求。而您今天談到一個觀點,隨著SQL在性能上及安全容錯上的不斷提升Hadoop會取代MPP,混合架構架構會消失!這個觀點的依據是什么?
孫元浩:混合架構本身就是一種無奈而折中的選擇,同時維護多個系統運維難度非常大。當初,Hadoop的誕生是為了更方便地處理非結構化數據和半結構化數據,但是處理結構化數據的時候功能就顯得不夠完整。用戶還需要使用數據庫或者MPP(大規模并行處理)數據庫,協助Hadoop處理結構化的數據。另外,Hadoop是為處理幾百TB和幾PB數據而設計的,但是,當數據量小于10TB的時候,Hadoop的處理性能往往還不如MPP數據庫。
隨著SQL on Hadoop技術的快速發展,SQL完整程度的大幅提高和性能的提升,我們做的第一個判斷是混合架構會逐漸的消失,過去MPP數據庫有三個優勢,第一個SQL支持完整,現在我們的SQL支持程度已經接近MPP數據庫;第二個它比Hadoop性能高,但我們看到現在Hadoop性能可以超過MPP若干倍。第三個優勢就是說它上面的BI工具,外延工具非常全,傳統的BI廠商都已經轉向Hadoop,Hadoop系統的BI工具也越來越豐富,還有一些新興的創業公司在Hadoop上開發全新的BI工具,這些工具原生支持Hadoop,從這個角度來講Hadoop的生態系統將很快超越傳統MPP數據庫。
我們覺得在未來一年兩年之內,Hadoop將逐漸取代MPP數據庫,大家不需要用混合架構,不需要在不同數據庫之間實現遷移了。有人說我MPP也在遷移,慢慢向Hadoop靠攏,這也是事實,整個MPP的數據庫在慢慢消失,完全走到Hadoop上面來。我們希望最后結果就是數據全部放在Hadoop上,不管數據在幾個GB級別還是10個PB級別,都可以在Hadoop上處理,真正做到無限的線性擴展。
老魚:星環科技我理解是一個做基礎軟件(數據庫)的公司,不知道這么理解對不對?為什么當初是這個定位?
孫元浩:你這個問題很好,現在有很多客戶也問我同樣的問題,客戶把我們定位成一個大數據應用和解決方案的公司,是因為國內大部分大數據公司都是這種類型,其實我們定位是大數據平臺,是做基礎軟件的。為什么要做基礎軟件?因為我們看到一個明顯的技術演進趨勢,從單機計算,多核計算到分布式計算,這個趨勢是技術的潮流,是一次至下而上的架構革命,這種機會可能10年或者20年才能碰到一次,而這一領域正是我們擅長的,所以我們準備投入到這個領域。在中國,用戶數眾多,除了美國,中國企業的數據量普遍要多于國外企業一個數量級;中國企業的應用場景也非常復雜,很少有國外產品不經修改在中國能夠不出故障地運行,因此中國也是需要這樣一個大數據的基礎軟件公司,所以我們認為在中國市場發展的機會很大,這也我們在基礎軟件發力的原因。我們在中國也有很多的合作伙伴,開發著各種應用,我們也在建立生態系統。
綜上所述,第一,技術趨勢在向這個領域發展。第二,市場環境對我們有利。第三、我們創始人和團隊的技術儲備和經驗在這個領域很深厚。這就是我們創立星環科技的初衷,致力于提供優秀的大數據基礎軟件,來解決這些問題。
老魚:做基礎軟件是一件非常難的事情,資金、人才、技術、規模等等要求都非常高,您在創業的是否有考慮過這些問題?
孫元浩:這也是個很好的問題,我們有思想準備。做基礎軟件確實是一個投入非常大的事情,動輒上千萬上億投入,才能把產品做好。如果我們去做應用,在大數據應用領域我們沒有太大的創新點,也沒辦法去區別于其他公司,而基礎軟件是我們擅長的。
我們的目標并不是追逐短期內獲益或者說是個人財富短期迅速增長,我們目標放的更長遠,那就是要把這個事情做好。星環的大部分人都是從外企走出來的,大家放棄了高薪,唯一的目的就是想把這個事業做好。
做基礎軟件,人才一直是比較難解決的問題,不過創業型公司跟大型外企和互聯網公司相比,我認為有幾點還是比較有吸引力:
第一、我們的工作是創新的前沿的,比較挑戰性,這對技術高手是比較有吸引力的。
第二、員工激勵,我們是全員持股,每個人都有公司期權,這跟在外企打工有很大不同,大家都是平等的,都是指揮官,大家一起奮斗。
第三,國內創業環境氛圍很好,國家鼓勵創新創業,對于人才的加入創造了一個有利的環境。
當然除此之外,招聘依然還是個老大難的問題,因此我們一方面與招聘機構合作,另一方面也自己在培養新員工,引進一些技術高手。
老魚:從架構圖中,我看到星環對Spark, Shark, Hbase等Hadoop生態圈的組件都進行很多的改造和優化,也常關注國內外大數據的最新技術動態并且考慮如何加入到產品中來,星環新增功能和產品功能改造將會依據一個什么樣的規則?
孫元浩:我們的產品策略,得從我們的產品架構圖上講起。如下圖
Hadoop這層我們會與社區同步,并向社區反饋貢獻。在Hadoop之上這層,我們會有3大組件Transwarp Hyperbase, Transwarp Stream,Transwarp Inceptor,這3個組件我們定位成自己的產品,我們會獨立開發和發展,這塊產品啟用標準的SQL,或者開放API,這是個分割線。Hadoop生態系統的組件我們保證和開源版本全兼容的,包含Spark也會跟接口做兼容性測試。