1. 概念
目前在Azure上,使用數據庫有兩種方式,一種是在VM上安裝數據庫或部署已有數據庫的VM,這種方式需要用戶自己配置SLA,備份甚至部署;另一種是直接使用PaaS平臺的SQL Database,無需部署,已有SLA保障,可直接配置,但是有DB的大小限制,最高爲500G。
使用Azure SQL Database可以i避免採購和安裝硬件的冗長週期 - 通過 Azure SQL Database,可隨時創建和刪除數據庫,而不必等待採購訂單獲批、設備到達、電源和散熱系統升級或安裝完畢。Microsoft 通過根據我們每個數據中心內的總需求預先配置硬件,全盤處理這些難題,可大大縮短從創意到解決方案的時間。與手動採購和部署硬件相比,這樣可爲客戶的業務節省數週或數月時間。
Microsoft 還在 Azure SQL Database 中加入許多自動管理功能,如自動 HA、負載平衡和內置管理。
自動高可用性 (HA)
Azure SQL Database 爲每個用戶數據庫保留至少三個副本,並具有一種邏輯,可自動將每個更改同步地提交到副本仲裁。這樣可確保任何單計算機故障均不會導致數據丟失。此外,每個副本均放在不同的硬件機架上,以使斷電或網絡交換機停運不會影響你的數據庫。最後,還有一種邏輯,如果失去計算機,則自動重建副本,以使系統自動保留所需的運行狀況屬性,即使計算機的運行狀況變得不正常也是如此。這些機制可避免當前在安裝和配置高可用性解決方案時所需的漫長過程。通過爲你的數據預先配置 HA 解決方案,可消除在使用傳統方法生成任務關鍵型數據庫解決方案時的另一個重大難題。
負載平衡
與傳統虛擬機不同的是,Azure SQL Database 還包含一種機制,可自動將負載分攤到多個計算機上。負載平衡器動態觀察羣集的資源用量,並將數據庫副本移至羣集中的計算機,以便將負載動態、公平地分攤到多個用戶上。這樣即擴展數據庫的按需擴容功能,並且用戶可獨立考慮每個數據庫的容量要求,因爲負載平衡器將可遷移繁忙的數據庫,使此類數據庫彼此遠離。在創建跨越許多數據庫的解決方案時,此邏輯提供一個抽象層,通過該層,客戶可集中精力處理每個數據庫的容量需要,而不必考慮虛擬機的具體大小限制。
內置管理
Azure SQL Database 以服務的形式運行。這意味着爲每個數據庫定義了運行時間目標,避免產生漫長的維護停機時間。Microsoft 對於服務提供單供應商解決方案,這意味着如有任何問題,只需致電一家公司即可。另外,Microsoft 不斷更新服務、添加功能、提高容量並尋找在我們進行的每次更新中改善體驗的方法。更新以透明方式進行,不產生停機時間,這意味着更新集成在我們正常的 HA 故障轉移機制內。這樣,我們一經宣佈推出新功能,客戶即可用上這些功能,而不必等待在未來某個停機時間內升級服務器。
2. 服務層
在Azure的SQL Database目前有五個服務層:基本、標準、高級、Web 和企業。但是從 2014 年 4 月 24 日算起的 12 個月內,Web 和企業服務層(版本)將被停用。
高級服務層通過嚴格控制 Azure SQL Database 及其輔助副本的資源量,使雲應用程序的性能更有預測性。Azure SQL Database 將這種理念擴展到了新的標準服務層,使數據庫具有更高的性能可預測性。基本服務層和標準服務層的性能要求更低,旨在滿足較低開銷數據庫的性能要求。
基本、標準和高級的5個性能級別:
服務層 | 性能級別 |
基本 | 基本 |
標準 | S1 |
高級 | P1 |
服務層結構:
服務層/性能級別 | DTU | 最大數據庫大小 | 最大 工作 線程數 | 最大 會話數 | 可預測性 |
基本 | 1 | 2 GB | 20 | 100 | 好 |
標準/S1 | 5 | 250 GB | 50 | 200 | 很好 |
標準/S2 | 25 | 250 GB | 100 | 500 | 很好 |
高級/P1 | 100 | 500 GB | 200 | 2,000 | 最好 |
高級/P2 | 200 | 500 GB | 400 | 4,000 | 最好 |
高級/P3 | 800 | 500 GB | 1,600 | 16,000 | 最好 |
服務層/性能級別 | DTU | 最大數據庫大小 | 基準事務率 | 可預測性 |
基本 | 1 | 2 GB | 每小時 3,467 個事務 | 好 |
標準/S1 | 5 | 250 GB | 每分鐘 283 個事務 | 很好 |
標準/S2 | 25 | 250 GB | 每分鐘 1,470 個事務 | 很好 |
高級/P1 | 100 | 500 GB | 每秒 98 個事務 | 最好 |
高級/P2 | 200 | 500 GB | 每秒 192 個事務 | 最好 |
高級/P3 | 800 | 500 GB | 每秒 730 個事務 | 最好 |
PS: 每個服務層和性能級別的資源和能力數據庫吞吐量單位 (DTU) 表示。DTU 可讓你根據 CPU、內存以及每個性能級別提供的讀取與寫入速率的混合度量標準描述該性能級別的相對容量。數據庫 DTU 等級翻倍就相當於數據庫能力翻倍。藉助該基準,我們可以通過執行實際的數據庫操作,同時根據提供給數據庫的資源按比例調整數據庫大小、用戶數和事務率,來評估每個性能級別提供的更高能力對數據庫性能的影響。