在一大三小:亞馬遜,微軟、谷歌、IBM ,IaaS四強爭霸中,我們有報道過IaaS領域的硝煙彌漫,而Amazon在市場占有率上有著壓倒性的優勢——租用的計算資源是象限中其它14個供應商的5倍,IaaS霸主地位毋庸置疑。然而,區別于其IaaS的絕對優勢,AWS在PaaS領域的日子似乎“沒那么好過”,其領先地位受GCE、Azure、Heroku等眾多勁敵窺伺。然而AWS之所以為AWS,不僅因為其數量龐大的合作伙伴,還有其獨一無二的云服務,就在本個月,Amazon一掃之前在PaaS領域的低調,在宣布EMR支持Impala之后,更推出了流計算服務Kinesis。
EMR支持Impala:AWS軍團亮劍流計算之始
本月,Amazon宣布EMR支持Impala,Impala是專為實時、ad-hoc查詢設計的開源工具,使用類SQL語言。在 AmazonEMR上使用Impala,用戶可以在非結構數據上執行快速的交互分析。對于許多類型的查詢,比Hive快很多。Impala的性能使它成為迭代查詢和許多流行BI工具一個很好的引擎。通過Amazon EMR,用戶可以用Impala作一個可靠的數據倉庫來執行數據分析、監控和商務智能等任務。這里是三個用例:
取代Hive,在長期運行的集群上使用Impala來執行ad-hoc查詢。Impala可以將迭代查詢時間減少至秒級,使它非常適合做快速調研。用戶可以在同一個集群上進行流計算和批處理,在一個長期運行的Hive和Pig分析集群上使用Impala,或者為Impala查詢建立一個經過專門調優的集群。
在短暫的Amazon EMR集群上使用Impala而不是Hive來進行批ETL作業。對于很多查詢來說,Impala比Hive快,就像Hive,Impala使用SQL,所以,從Hive到Impala查詢修改工作量并不大。
結合使用Impala和第三方商業智能工具。通過給集群連一個客戶端ODBC或者JDBC驅動,你可以將Impala作為強大可視化工具及監視面板的查詢引擎。
Kinesis的全面可用:AWS之所以為AWS的原因
Kinesis,AWS于11月宣布的流數據服務,現已公開使用。這種服務理論上可以與流行的開源技術(比如Apache Strom)相匹敵,而當下也只有Kinesis能帶來完全的管理經驗,這種經驗成為AWS的進程中的標準。
隨著公司(尤其是基于因特網的公司)尋求超越他們倚仗已久的批處理方式,流處理正變得越來越流行。流處理主要利用數據的實時優勢,而不是等待幾分鐘,甚至是數小時來分析收集所有(前一批正在處理之后)的數據,對這項工作而言Storm可能是最流行的工具,在發往其它地方(比如Hadoop)與歷史數據進行分析之前,Storm就會在數據傳輸過程中進行處理。
Twitter通過2011年購買Backtype獲得Strom建立者Nathan Marz,因此它應該是個典型的Storm用戶。Storm幫助Twitter完成許多事情,比如讓用戶Timeline保持實時更新,但是該公司同樣依靠了許多其他工具(Hadoop,當然名列其中)來做一些長期趨勢分析和搜索引擎模型訓練。
就像Storm,在將數據運輸到另一個數據存儲(基于AWS平臺的ElasticMapReduce、Redshift或者DynamoDB)之前,Kinesis就能夠進行實時處理。但是區別于Storm,Kinesis保存數據的時間可以長達24小時,同時,通過軟件開發工作包或者SDK可以自動地擴展到每小時上千個TB 。Kinesis還含一個轉移數據到Storm的連接器,AWS數據科學經理Matt Wood解釋到,在當現存Storm用戶想繼續使用它來處理數據時,Kinesis可以實現自動連接。
對Kinesis來說SDK是一項關鍵,因為這項服務的設計宗旨就是“降低建立響應式應用程序的門檻”,AWS在一次采訪中說到。早期訪問用戶,包括移動游戲開發商Supercell,正在使用Kinesis對游戲服務器和市場平臺Bizo中的數據流進行處理,然后供給實時監控面板。 Wood說Bizo有一個異常小的研發團隊,能有機會省卻管理數據管道的工時,從而轉移到更具價值的任務上,這得感謝AWS。
當Amazon首次公開Knesis這個產品時,我們就會發現,AWS的云服務無可比擬,這里我們不妨計算一下其他云供應商提供自己流處理服務的時間。當下企業的計算基礎設施一般都包括一個完整的數據管道,用以收集和處理數據,因此如果其他云服務供應商想遏制用于瘋狂涌向AWS,那么他們不可以只有一個Hadoop。