Hadoop——Microsoft大數(shù)據(jù)戰(zhàn)略的核心
導(dǎo)讀:眾所周知,大數(shù)據(jù)浪潮正在漸漸的席卷全球的各個(gè)角落。而Hadoop正是這股風(fēng)暴的動(dòng)力之源。Microsoft更是史無(wú)前例的與Apache Hadoop社區(qū)合作。Microsoft此舉就是希望利用自己在軟件領(lǐng)域的優(yōu)勢(shì)構(gòu)建一個(gè)打上Microsoft烙印的Hadoop生態(tài)圈。
如今,Microsoft已經(jīng)將Hadoop作為自身大數(shù)據(jù)戰(zhàn)略的核心。Microsoft此舉的理由就是看中了Hadoop的潛力,在大數(shù)據(jù)領(lǐng)域Hadoop已經(jīng)成為分布式數(shù)據(jù)處理的標(biāo)準(zhǔn)。通過(guò)集成Hadoop技術(shù),Microsoft允許客戶訪問(wèn)快速增長(zhǎng)的Hadoop生態(tài)系統(tǒng)。同時(shí)隨著越來(lái)越多善于在Hadoop平臺(tái)進(jìn)行開發(fā)的人才涌出,這對(duì)Hadoop發(fā)展極其有利。
Microsoft的目標(biāo)不僅僅是將Hadoop集成到Windows系統(tǒng)之中,Microsoft有意向Apache Hadoop社區(qū)貢獻(xiàn)代碼,并希望得到社區(qū)的采納。最終使任何人都可以在Windows上運(yùn)行純粹開源的Hadoop。
打上Microsoft烙印的Hadoop
Microsoft的Hadoop版本目前發(fā)展到“客戶技術(shù)預(yù)覽版”的階段。這意味著Microsoft在接受客戶群體的評(píng)價(jià),預(yù)計(jì)正式版會(huì)在2012年中期推出。Microsoft的Hadoop基于Windows Server平臺(tái)或Microsoft云平臺(tái)Azure之上。在將要推出的1.0版本之中,產(chǎn)品核心包括MapReduce、HDFS、以及Hadoop組件Pig和Hive。
Microsoft的目標(biāo)是兼容所有的Hadoop組件。Hadoop生態(tài)系統(tǒng)中的Zookeeper、HBase、HCatalog和Mahout等組件也會(huì)被附加到Microsoft的Hadoop版本之中。

同時(shí)Microsoft推出的Hadoop還會(huì)與自身之前的商業(yè)智能分析產(chǎn)品做整合。
●Hadoop連接器將使Hadoop與SQL Server和SQL Server并行數(shù)據(jù)倉(cāng)庫(kù)之間的通信變得簡(jiǎn)單。
●Hive的ODBC驅(qū)動(dòng),允許任何Windows應(yīng)用程序訪問(wèn)并對(duì)Hive數(shù)據(jù)倉(cāng)庫(kù)進(jìn)行查詢。
●Excel對(duì)Hive的訪問(wèn),使數(shù)據(jù)直接從Hive移動(dòng)到Excel和PowerPivot。
在后端,Microsoft對(duì)Hadoop進(jìn)行了其他的改善,Microsoft將整合Active Directory方便訪問(wèn)控制。同時(shí)集成System Center用于管理人員管理。
Microsoft官方計(jì)劃在即將于6月舉行的TechED大會(huì)上公布有關(guān)WAAD(Windows Azure Active Directory)的更多細(xì)節(jié)。這與Microsoft在Windows Server系統(tǒng)上的Active Directory的概念如出一轍。未來(lái)使用ACS(Access Control Service)與現(xiàn)有的Active Directory部署時(shí)可保證良好的互操作性。
利用JavaScript API與C#進(jìn)行Hadoop開發(fā)

對(duì)于Microsoft推出的Hadoop版本***特色的特點(diǎn)之一是附加JavaScript API。Hadoop上的編程工作是乏味的,這就是為什么別的高級(jí)語(yǔ)言會(huì)出現(xiàn)(如Pig)。
Microsoft選擇在Hadoop環(huán)境中添加JavaScript層,開發(fā)人員可以使用它創(chuàng)建MapRedcue的工作,甚至在瀏覽器模式下與Pig和Hive進(jìn)行數(shù)據(jù)交互。JavaScript層所帶來(lái)的真正優(yōu)勢(shì)是將自身集成到Hadoop商業(yè)環(huán)境中,這使得開發(fā)人員能夠輕松創(chuàng)建內(nèi)網(wǎng)分析環(huán)境以便于商業(yè)用戶訪問(wèn)。
Microsoft通過(guò)Node.js將JavaScript引入服務(wù)器端的Windows Server以及Windows Azure平臺(tái)之上。同時(shí)Microsoft計(jì)劃將自身的JavaScript API貢獻(xiàn)給Apache Hadoop開源社區(qū)。這對(duì)于Hadoop社區(qū)也是一個(gè)利好的消息。
更重要的是Microsoft使得使用.NET平臺(tái)開發(fā)Hadoop應(yīng)用成為可能。Microsoft計(jì)劃直接利用現(xiàn)有Hadoop API使用.NET平臺(tái)創(chuàng)建MapReduce任務(wù)。更高級(jí)別的接口或許將出現(xiàn)在未來(lái)的版本中。隨著時(shí)間的推移,未來(lái)在Visual Studio中對(duì)Hadoop項(xiàng)目開發(fā)的支持將不斷提高。同時(shí)未來(lái)運(yùn)行在Azure之上的Hadoop項(xiàng)目將允許使用.Net Framework框架之上基于Common Language Runtime (CLR)語(yǔ)言(如C#語(yǔ)言)進(jìn)行編程。
流數(shù)據(jù)處理系統(tǒng)與NoSQL

對(duì)于大數(shù)據(jù)人談?wù)撟疃嗟臒o(wú)疑是Hadoop,但流數(shù)據(jù)處理以及NoSQL對(duì)于大數(shù)據(jù)同樣重要。對(duì)于Microsoft,他們自然會(huì)有所準(zhǔn)備。Microsoft推出了被稱之為StreamInsight的流數(shù)據(jù)解決方案。NoSQL方面,Microsoft也具備了Windows Azure平臺(tái)上被稱之為Azure Tables的NoSQL數(shù)據(jù)庫(kù)。
展望未來(lái),Microsoft對(duì)Hadoop兼容性的承諾意味著,流數(shù)據(jù)解決方案StreamInsight以及Azure Tables會(huì)作為Hadoop環(huán)境的一部分與Microsoft分布式HBase作為核心產(chǎn)品推出。同時(shí)現(xiàn)今的流數(shù)據(jù)解決方案(如Yahoo S4)將會(huì)與Microsoft相兼容。
與現(xiàn)有工具集成
Microsoft正傾向與向大數(shù)據(jù)工具集成現(xiàn)有的主要組件,這是否意味著Microsoft打算為企業(yè)提供一個(gè)綜合數(shù)據(jù)科學(xué)平臺(tái)?Microsoft大數(shù)據(jù)資深產(chǎn)品規(guī)劃負(fù)責(zé)人Madhu Reddy給出了肯定的答案。Microsoft Hadoop開發(fā)工作的主要宗旨就是讓人們使用熟悉的工具,Microsoft專注于與現(xiàn)有工具的互操作性。Microsoft此舉涉及各個(gè)層面的使用人員,包括開發(fā)者、分析師、企業(yè)用戶等。Excel是一個(gè)無(wú)處不在的軟件,Excel與Hive的互聯(lián)就是一個(gè)很好的例子。不過(guò)其他的工具也同樣重要,如MATLAB、SAS或R。
總結(jié)
Microsoft大數(shù)據(jù)戰(zhàn)略確保Windows平臺(tái)能夠在大數(shù)據(jù)時(shí)代繼續(xù)發(fā)揮自身的作用。并使得在數(shù)據(jù)中心業(yè)務(wù)中使自身的云服務(wù)具備更強(qiáng)的競(jìng)爭(zhēng)力。Microsoft的另一個(gè)做法是將大數(shù)據(jù)與自身龐大和多樣化軟件無(wú)縫集成??梢钥闯鯩icrosoft的重點(diǎn)是進(jìn)行大力整合。Microsoft與Apache Hadoop社區(qū)的合作確保了新的工具和天才的開發(fā)人員向這個(gè)平臺(tái)遷移。