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