[Azure] 使用SQL資料庫彈性集區,強化資料庫效能運用並節省成本

Azure SQL Database是微軟雲端提供的一項功能,可以快速的建立並使用資料庫的平台服務
以往傳統的SQL Database服務是採用單一伺服器的方式作服務的建立,也就是說每一個資料庫都必須指定要多少的DTU或是儲存空間
雖然費用的部份容易計算,但是當資料庫的數量一多,程式的設計複雜性一高的時候,花費在資料庫的成本就會增加,資源也容易造成浪費
SQL資料庫彈性集區就可以用來解決這樣的問題

所謂的SQL資料庫彈性集區,簡單來講就是在SQL Server中指定一個區塊,提供動態的eDTU讓區塊中的資料庫所使用,並依據資料庫所需的效能動態的調整DTU的數量
在Azure上有關SQL資料庫彈性集區的定價可以從這個網頁找到https://azure.microsoft.com/zh-tw/pricing/details/sql-database/

從定價層可以看得出來,若是選擇[基本集區],那在這個集區裡會提供50~1600個eDTU (動態DTU),並且可以在這個集區裡建立最多500個Database,每個Database最多5個eDTU

要建立SQL資料庫壇性集區的方式很簡單,首先必須要先有一個已經存在的SQL Server,才能進行彈性集區的建立,在新增項目的地方,可以直接選擇[SQL彈性資料庫集區]

新增的項目中,必須選擇一個現有的SQL Server,或是新增一個新的SQL Server,而設定集區的項目,則是可以選擇在這個集區裡可用的eDTU與儲存空間大小

在這裡選擇的[集區eDTU][集區GB],都是給集區內的資料庫所共用的,所以若是集區的eDTU數量過少,資料庫過多,可能就會造成eDTU不夠分配的情況,需要視狀況進行調整

 當彈性集區建立完成後,接下來我們可以建立一個新的資料庫,並在[要使用SQL彈性集區嗎?]的設定中選擇[是],並把剛剛建立好的彈性集區選擇進來

建立完成後,我們點選剛剛建立好的彈性集區項目,並點選左方的功能[資料庫資源使用量],在這個畫面中可以看到剛剛加進來的Db1這個資料庫,平均使用到的eDTU數量以及在整體來說尖峰時刻所使用到的eDTU數量是多少

如果要將現有的資料庫從同一個伺服器中的集區外加入到集區裡,只要進入到彈性集區中,點選[設定集區]=>[加入資料庫]=>選擇要加入集區的資料庫後,點選[選取]

當儲存設定完成後,我們重新回到彈性集區的功能,並點選[資料庫資源使用量]來看一下各資料庫的狀態,可以看到已經把剛剛選擇的資料庫都已經加入至這個彈性集區之中了,平均eDTU以及尖峰eDTU的用量也馬上的顯示在圖表之中

SQL資料庫彈性集區的使用,對於有著相當數量資料庫的系統或是服務來說,真的是提供了很方便管理並節省成本資源的功能,除了可以採用動態的eDTU,讓不忙碌的資料庫將資源分配給較為忙碌的資料庫外,讓有限的資源作更有效的運用,也是SQL資料庫彈性集區發揮它強大功能的一大特色

要將資料庫從集區中移出的話,只要進入資料庫設定,將定價層更改為單一資料庫的設定費用即可