企業(yè)網(wǎng)D1Net導(dǎo)語:風(fēng)水輪流轉(zhuǎn),云計算市場也是風(fēng)云變幻,IaaS浪潮剛過,PaaS市場已暖,對市場敏感的廠商也感覺到了PaaS市場的溫度,開始試水,其中,微軟近期推出了Hadoop Azure大數(shù)據(jù)服務(wù)。
隨著laaS的第一波浪潮過后,云服務(wù)市場逐步開始把PaaS作為主要的服務(wù)模式。與此同時,微軟也在近期推出了Hadoop Azure大數(shù)據(jù)服務(wù)。
對于PaaS的穩(wěn)步發(fā)展,Dr.Dobb‘s主編Andrew表示了認(rèn)同,他以自己的個人經(jīng)歷與云服務(wù)模式的發(fā)展做了比較。
當(dāng)我剛開始學(xué)習(xí)編程的時候,個人電腦還是即昂貴又不可靠的電子設(shè)備??紤]到電腦的成本,我認(rèn)識到擁有一臺個人電腦的最好的辦法是自己組裝一臺。每隔幾年,我都會搜尋最新最快的CPU、新的主板、我能買的起的最大的RAM、更好的驅(qū)動、性能更優(yōu)的顯卡。然后我會在某個周末津津有味地鼓搗我的新 “神秘盒子”。接下來就是漫長的重裝系統(tǒng),最后是安裝各種軟件和工具。在上述工作完成后,我得到了自己新的、更快的電腦。但相比興奮喜悅,我感受到更多的是筋疲力盡。
一些年過去后,攢了幾次電腦的我終于意識到這種攢機方式非常費時間,并且?guī)淼氖找娌淮?。這時個人電腦價位下降了,性能也更可靠了。最終我決定變聰明一點,在意識到這一點后我便一直買電腦了——相比攢機我節(jié)約了大量的時間,加快了進(jìn)度。
Andrew認(rèn)為他的經(jīng)歷和許多關(guān)注云解決方案的開發(fā)者的類似。有著一顆極客的心的我們很容易被IaaS模型所吸引——該模型提供只含有一個操作系統(tǒng)(大多情況是Linux)的虛擬機。之后,痛苦的構(gòu)建過程就開始了:打個比方,我們需要讓它服務(wù)于網(wǎng)絡(luò)應(yīng)用程序。于是,我們需要添加Apache,然后進(jìn)行Apache配置,添加MySQL,配置MySQL,添加腳本語言(如Python),配置腳本語言,添加業(yè)務(wù)邏輯,配置之。然后將這些組件連接起來,再進(jìn)行漫長的仿佛沒有盡頭的配置。這個過程,就是俗稱的“牦牛刮胡子”。
開發(fā)者需要花費幾天來進(jìn)行檢查網(wǎng)絡(luò)的設(shè)置和細(xì)節(jié),確保所有配置正確,這并不是什么讓人愉快的工作。但是至此一切還沒有結(jié)束。如果虛擬機需要按比例調(diào)整或克隆以符合集群需求,那么我們還需要在軟件基礎(chǔ)架構(gòu)中加入附加層。如果虛擬機需要調(diào)用緩存和負(fù)載平衡器,那么我們就更需要加入附加層。突然之間,你就變成了系統(tǒng)構(gòu)建者和管理者——你終于可以開始削減一些代碼了。如果當(dāng)時我沿著這種路線走下去,我將需要一直構(gòu)建我的個人電腦,拋棄我的集成開發(fā)環(huán)境(IDE)。
不僅是開發(fā)者,企業(yè)也意識到了這個問題。Andrew指出,亞馬遜云服務(wù)在提供可擴展性的同時變得使用、配置復(fù)雜——盡管可以使用有效的預(yù)配置模板——太復(fù)雜以至于現(xiàn)在有針對于服務(wù)各部分專門的研究。公司使用云服務(wù)是要減輕公司負(fù)擔(dān),而不是增加公司工作量。因此現(xiàn)在的潮流逐漸從Iaas轉(zhuǎn)向了PaaS——采用PaaS作為服務(wù)平臺——來減少麻煩,獲得更多的好處。
對于程序員,Andrew認(rèn)為Paas的一個經(jīng)典解決方案是CloudBees。你可以利用一個裝有Java的、運行著默認(rèn)的持續(xù)集成服務(wù)器Jenkins的虛擬機。當(dāng)然,這個虛擬機也裝有SCMs(GitHub和Subversion)。
一旦你完成CloudBees上實例的構(gòu)建與測試后,你就可以將此應(yīng)用程序部署到其它云服務(wù)上。CloudBees只在你使用實例的時候收費,因此你可以只在每天的最后時刻進(jìn)行構(gòu)建——利用機器,在構(gòu)建完成后停止機器。你設(shè)置自己的實例,測試所有的部件,確保它符合規(guī)模,這一切會花很長時間么?PaaS的作用不可小覷。
企業(yè)有很多PaaS可以選擇,Andrew指出了幾個選項:微軟的Windows Azure,谷歌的App Engine,還有一些小供應(yīng)商提供的服務(wù)。在合適的供應(yīng)商中,一個叫Apprenda的擁有一些獨特的優(yōu)點。他的PaaS能提供面向托管程序的多租戶管理。
打個比方說,如果你是一個企業(yè)級的消費者,你想要創(chuàng)建單個實例化的托管Oracle DBMS,同時你希望它可以被若干個之間相互獨立的應(yīng)用程序共享。如果你采用的是IaaS,那你就要面臨一個很大的管理難題。Apprenda的PaaS軟件對這類問題處理的很好。它對DBMS進(jìn)行設(shè)置,因此每個應(yīng)用程序都認(rèn)為自己是DBMS的唯一用戶,但事實上它們共享了DBMS。如果沒有這種支持——就像IaaS一樣——每個應(yīng)用程序都將需要自己的數(shù)據(jù)庫實例。
Andrew指出,現(xiàn)在市場上已經(jīng)有各種各樣的PaaS可供選擇:每一種應(yīng)對不同的用戶需求,許多還通過公司墻(enterprise walls)提高云體驗。我們可以看到PaaS產(chǎn)品日益成為解決方案首選——而IaaS更多的是為PaaS解決方案提供裸系統(tǒng),而不是與之競爭。
說到PaaS市場的發(fā)展,微軟最近推出了Hadoop Azure大數(shù)據(jù)服務(wù)。微軟公司通過其無處不在的Excel為商業(yè)世界帶來了電子表格。現(xiàn)在微軟希望以一種大致相同的方式,通過他們新的Windows Azure HDInsight 服務(wù)在大數(shù)據(jù)分析方面做出類似的效果。
微軟公司數(shù)據(jù)平臺部總經(jīng)理Eron Kelly說:“我認(rèn)為作為一家公司我們一直以來做的很好,因為公司能夠處理技術(shù)難題并且簡化它們,因此,我們正在簡化Hadoop,并且將它帶給每個人。”
Windows Azure HDInsight作為一個由Windows Azure所提供的PaaS(平臺即服務(wù))產(chǎn)品,它提供了Apache Hadoop的數(shù)據(jù)處理平臺和一些相關(guān)工具。HDInsight將使用Hortonworks數(shù)據(jù)平臺(HDP),這將是Hortonworks提供的Hadoop旗艦版產(chǎn)品。
微軟并不是第一家提供Hadoop云服務(wù)的公司。亞馬遜Web服務(wù)也提供了Hadoop和Rackspace計劃,并將很快提供HDP服務(wù)。IBM公司最近也發(fā)布了SoftLayer主機服務(wù),并且它將提供快速運轉(zhuǎn)的跨多個裸機服務(wù)器處理Cloudera 的Hadoop分布式服務(wù)。但微軟公司希望在可增長的空間中開拓出有競爭力的優(yōu)勢,即先簡化其部署過程,之后再使用Hadoop。比如,通過微軟的分析工具,服務(wù)將運行的更好。Excel表格的使用者可以使用電子表格的一個功能,例如“Power BI”功能,然后進(jìn)行采集數(shù)據(jù),并通過Hadoop MapReduce對數(shù)據(jù)進(jìn)行分析和可視化。
微軟公司在2011年首次宣布了這個服務(wù)計劃。原本微軟打算和Hortonworks一起合作,開發(fā)他們自己的Hadoop版本,并且使自己的版本經(jīng)設(shè)置后可以在Windows服務(wù)器上運行。
很快我們就發(fā)現(xiàn)在Hortonworks提供的產(chǎn)品功能和我們將要提供的產(chǎn)品間存在著一定程度的冗余,因此我們決定針對一個核心功能達(dá)成協(xié)議,即Windows上的HDP。微軟為此已經(jīng)為Apache Hadoop和相關(guān)軟件貢獻(xiàn)了超過1.6萬行的代碼。
Windows Azure HDInsight將運行一個HDP的Stock版,允許用戶在Azure和其他非Azure HDP環(huán)境之間無縫的遷移工作數(shù)據(jù)。Hortonworks發(fā)布下一個HDP版本之后,版本v2.0將盡快發(fā)布,Azure 的HDP版本將會自動更新。
Kelly說,微軟公司實際上已經(jīng)在為一些特定客戶以全生產(chǎn)模式運行了數(shù)個月的Windows Azure HDInsight服務(wù)。
•巴塞羅那市用該服務(wù)來分析交通模式、垃圾收集和一些有關(guān)市政府職責(zé)的數(shù)據(jù),并希望這些數(shù)據(jù)能夠用于幫助政府做出更加明智的支出決策。
•弗吉尼亞理工學(xué)院和州立大學(xué)的一組研究人員在使用該服務(wù)運行DNA測序工具。