很多在微軟數(shù)據(jù)庫和云生態(tài)系統(tǒng)里工作的數(shù)據(jù)專業(yè)人士一直都迫不及待地想知道,微軟什么時候會推出云數(shù)據(jù)倉庫服務與亞馬遜的Redshift競爭。在微軟Build大會的開幕演講中,執(zhí)行副總裁Scott Guthrie宣布推出“Azure數(shù)據(jù)倉庫”( Azure Data Warehouse)——名字非常地恰到好處。
在發(fā)布Azure數(shù)據(jù)倉庫的同時,還傳出另外兩個服務的消息:Azure Data Lake和Azure SQL Database彈性數(shù)據(jù)庫。盡管這兩個服務看起來只是來湊湊熱鬧,但其實三個產(chǎn)品之間有著相輔相成的關系。
擴展易如反掌
首先要說明一下,Azure數(shù)據(jù)倉庫不僅僅是用來對付Redshift產(chǎn)品的,Azure數(shù)據(jù)倉庫也是對Redshift經(jīng)濟模式的挑戰(zhàn)。在Redshift里,用戶擴展數(shù)據(jù)倉庫時,計算資源和存儲的增加是以固定的比例鎖在一起的。而在Asure數(shù)據(jù)倉庫(英文縮寫為ADW)里,計算資源和存儲是脫節(jié)的,用戶可以只縮放其中之一。
ADW的經(jīng)濟模式可以為客戶省錢。這種模式可以在需要更多的存儲時消除多余的計算資源的配置(反之亦然),而且,在ADW模型里,沒用到的計算資源可以被暫停,需要時再恢復。如此,計算資源費用帳單可以自成一項,這與Redshift模式形成強烈對比,在Redshift模式里,用戶要為節(jié)點群集里的所有虛擬機買全天候的單。
ADW之所以能將存儲獨立出來是因為用了Azure Storage Blobs(Azure Storage Blob是Azure的云存儲服務,類似于亞馬遜S3),而不是用虛擬機上的本地驅(qū)動。這樣做可能導致性能上的差異,對Azure數(shù)據(jù)倉庫不利。但筆者本周初聽數(shù)據(jù)平臺集團副總裁T.K. Ranga Rengarajan和數(shù)據(jù)庫系統(tǒng)集團總經(jīng)理Shawn Bice介紹有關服務時,他們一口保證ADW性能優(yōu)良。我要靠那些喜歡折騰評估的朋友幫著做做這方面事。
那Hadoop呢?
ADW是千兆兆字節(jié)級別的服務——但談論數(shù)據(jù)量這碼事時,不是應該講到Hadoop嗎?別慌,會的。首先,ADW用的技術是微軟用在旗下分析平臺系統(tǒng)(Analytics Platform System,縮寫為APS——是以前的SQL Server并行數(shù)據(jù)倉庫)的技術,其中含一項名為PolyBase的技術,筆者以前寫過博文介紹過PolyBase。
APS和ADW通過PolyBase可以直接查詢在Hadoop集群上的數(shù)據(jù),或是可以將工作負載委托給Hadoop。這樣一來,Hadoop的數(shù)據(jù)對于數(shù)據(jù)倉庫而言就看起來好像是本地數(shù)據(jù)一樣,而開發(fā)人員和數(shù)據(jù)庫管理人員可以使用現(xiàn)有的技能對其進行查詢。PolyBase通過這種方式可以和Hadoop整合在一起,而不用理會是微軟云中的HDInsight集群還是在Azure虛擬機上或本地運行的Hortonworks或Cloudera集群。
還有更厲害的——Azure Data Lake
微軟在宣布ADW的同時還推出了一款新的Azure存儲,名為Azure Data Lake。它可處理流數(shù)據(jù)(低延遲、高容量、更新頻繁一類的數(shù)據(jù))、可進行地理分布處理、可利用數(shù)據(jù)的本地性,并可以在千兆兆字節(jié)的級別上對各個文件根據(jù)大小分組。
Azure Data Lake當然地可以通過Azure存儲API訪問,而且還與Hadoop分布式文件系統(tǒng)(HDFS)兼容。即是說,Hadoop集群可以使用Azure Data Lake,而Azure Data Lake也可以使用ADW/PolyBase。
回頭再看一下OLTP這一塊
數(shù)據(jù)倉庫和Hadoop集群牛得很,但我們也不要忘了,生產(chǎn)應用程序和數(shù)據(jù)庫生成交易數(shù)據(jù),分析工具則需要以此作參考。在微軟云里,我們則需要用到Azure SQL數(shù)據(jù)庫(提一下,ADW的基礎用到Azure SQL數(shù)據(jù)庫12版的技術)。
SQL數(shù)據(jù)庫領域有什么新東西?容量安排上有了新的選擇,就是這東西。存儲和計算資源扣在一起會在數(shù)據(jù)倉庫領域?qū)е滦实?,同樣,將?guī)模和數(shù)據(jù)庫或數(shù)據(jù)庫分區(qū)扣在一起也會導致OLTP(聯(lián)機事務處理)的效率變低。其原因是:數(shù)據(jù)庫容量單位的生長或收縮彼此之間相對靈活,所以,在總體上進行容量配置就具有更大的吸引力。
Azure SQL DB彈性數(shù)據(jù)庫(Azure SQL DB Elastic Databases)能夠利用這種以總體為導向的容量配置,對亞馬遜的關系數(shù)據(jù)庫服務(RDS)是另一個經(jīng)濟模式上的挑戰(zhàn),據(jù)我所知,RDS尚無一個可比選項。
客戶是贏家
競爭是好事??梢赃@樣說,假若不是亞馬遜先用Redshift攪了微軟的局,微軟肯定不會推出ADW的。新的計費法可能是被AWS產(chǎn)品里的點實例模式催化出來的——至少部分受到點實例模式的影響。微軟現(xiàn)在做出響應,不僅僅是做到AWS的同等水平而已,而是多走了重要的幾步。
亞馬遜將如何應對?亞馬遜已經(jīng)拿出一個機器學習產(chǎn)品對抗Azure。我猜測亞馬遜會在數(shù)據(jù)倉庫、存儲和OLTP方面有所動作。而且我們不要忘了,谷歌攜Hadoop、BigQuery和旗下的云存儲也是玩家之一。
創(chuàng)新成果令客戶受益,客戶只需對市場上的產(chǎn)品心中有數(shù)就能獲益。云供應商可以對其助一臂之力,需要做的是細心清楚地解釋自己的新產(chǎn)品。