SQL Azure方便開發(fā)者踏上云數(shù)據(jù)庫之路
其實(shí)SQL Azure可以看做是SQL Server的云端版本,兩者在Logo方面都有相似之處。那么在一堆非關(guān)系型數(shù)據(jù)庫中“鶴立雞群”的SQL Azure究竟有什么獨(dú)到之處呢?
SQL Azure標(biāo)志
SQL Azure是微軟提供的一個云數(shù)據(jù)庫系統(tǒng)。起初,該產(chǎn)品稱作SQL Data Services或SDS?,F(xiàn)在它重新命名了,它的特點(diǎn)也得到了擴(kuò)展。可以用T-SQL來管理、創(chuàng)建、操作云數(shù)據(jù)庫了。T-SQL是為數(shù)據(jù)庫管理的SQL Server本機(jī)語言。T-SQL起初在大多數(shù)云數(shù)據(jù)庫系統(tǒng)包括Azure上不被支持。然而,又要要求LINQ中的適當(dāng)語言和變量。所以T-SQL就被添加進(jìn)來了,這樣可以使現(xiàn)成的DBA技能擴(kuò)展到云。另外,因?yàn)镾QL Azure的數(shù)據(jù)類型和存儲過程幾乎和傳統(tǒng)的SQL Server匹配,所以在本地開發(fā)然后部署到我們喜歡的其他任何主平臺上的云是很容易的。
Azure是微軟提供的云計算系統(tǒng)。把Azure當(dāng)作云操作系統(tǒng),它可以為我們的應(yīng)用程序提供存儲和計算平臺。除了Azure之外,有5個擴(kuò)展部分提供額外的服務(wù)。這5個擴(kuò)展部分分別為Live Services、Net Services、Share Point、CRM和SQL Azure。
SQL Azure是一個關(guān)系型數(shù)據(jù)庫。在云技術(shù)里關(guān)系型數(shù)據(jù)庫是不常見的。大多數(shù)都是非關(guān)系型數(shù)據(jù)庫,你只能創(chuàng)建很不正規(guī)化的表。另一個不常見的特點(diǎn)是SQL Azure支持存儲過程。使用存儲過程可以允許你將數(shù)據(jù)庫和應(yīng)用程序邏輯之間完全分離。另外一個特點(diǎn)是SQL Azure支持大量的數(shù)據(jù)類型。包括幾乎所有典型的SQL Server 2008數(shù)據(jù)類型。
那么SQL Azure對初學(xué)者來說,它只與開發(fā)人員有關(guān)。SQL Server專家Brent Ozar表示,SQL Azure所關(guān)注的人群不是DBA而是開發(fā)人員。為什么?從性能角度出發(fā),許多的管理任務(wù)都移交到其他人員那里去了。
Ozar解釋說:“Azure中最重要的事情,就是它抽離了許多DBA的管理工作。這部分工作還是需要有人來做,而這些人需要是能夠應(yīng)對工作負(fù)載的人。”
這對于開發(fā)人員來說就是一個挑戰(zhàn)了,因?yàn)樵谑褂肁zure出現(xiàn)性能問題時,他們將不會得到DBA的幫助。Ozar指出,對于那些不喜歡同DBA打交道的開發(fā)者來說可以說是一個福音,對于出色的編碼者來說,Azure平臺再合適不過了。
Kevin Kline談到SQL Azure針對的是開發(fā)人群時,提到了微軟的廣告策略。他說:“回想一下微軟在發(fā)布Azure時是如何宣傳的吧,在PASS會議上幾乎就沒怎么提到它,而在開發(fā)者大會上它卻成了明星中的明星。Azure的目標(biāo)人群無疑是開發(fā)者,而DBA作為數(shù)據(jù)的真正‘保護(hù)者’卻用不上它。”
Ozar認(rèn)為DBA經(jīng)常做的加密與訪問控制等操作,在開發(fā)者中并不常見,而Azure平臺正是要給開發(fā)者以這樣的能力。
維護(hù)云數(shù)據(jù)庫就像是開車
云數(shù)據(jù)庫有一個比較形象的比喻,他說這就像是我們開車時,手動擋與自動擋的區(qū)別一樣。“云數(shù)據(jù)庫能給你單獨(dú)的額外層。因此就像你從開手動擋換到開自動擋的汽車一樣,你不用再去擔(dān)心離合器和換擋操作了,雖然其中的工作大都轉(zhuǎn)向幕后,但實(shí)現(xiàn)的功能卻是相同的。因此我個人認(rèn)為這樣的比喻是十分恰當(dāng)?shù)摹?rdquo;
Azure不是萬能的,但能幫你做很多事
數(shù)據(jù)庫技術(shù)人員分成兩個極端:什么功能都用上的人和只用所需功能的人。他指出,第一種人他們會嘗試使用所有SQL Server的新功能,但SQL Azure可能在一些領(lǐng)域會讓他們失望;而后一種人則會認(rèn)為SQL Azure帶來了足夠多的驚喜。Azure絕對是能讓人滿意的產(chǎn)品,它能夠?qū)崿F(xiàn)SQL Server現(xiàn)有九成以上的功能。
SQL Azure的架構(gòu)
【編輯推薦】