|
|
|
SQL Server 2008: Declarative Management
Framework
|
Son güncelleme tarihi: 25 Ocak 2008
Merhaba arkadaþlar,
Bu yazýmýn konusu, SQL Server 2008 ile birlikte gelen Declarative
Management Framework
(DMF).
Yazýmýn devamýnda, size ilk önce DMF' in kavramlarýndan ve bileþenlerinden bahsedeceðim,
daha sonra da DMF' i ne gibi iþlerde kullanabileceðimize dair iki örnek vereceðim
ve adým adým resimlerle oluþturulmuþ bir örnek yapýp yazýmý tamamlayacaðým.
Bu makalemi hazýrlarken kullandýðým SQL Server 2008, CTP5 versiyonudur. CTP versiyonlarýný
kesinlikle Production ortamýnýza kurmanýzý önermem. Microsoft' un kalbi olan Redmon'
tan konuþtuðum SQL Server ile çalýþan insanlar bana SQL Server 2008' in Aðustos
ayýndan önce çýkmayacaðýný söylediler. Yani RTM' e daha çok var. Bu makalemdeki
örnekleri yapmak için Sanal Makine kullanmanýzý tavsiye ederim.
Ben örneklerimi ve testlerimi MyDB isimli bir veritabanýnda oluþturuyorum. Hiç
bir özelliði yok, alelade bir veritabanýdýr kendisi ve arzu ederseniz aþaðýdaki
komutu kullanarak oluþturabilirsiniz.
=====================
CREATE DATABASE [MyDB]
=====================
Peki nedir bu DMF, ne iþe yarar? DMF, kýsaca Veritabaný Yöneticileri için
gerçekten iþe yarayacak, yönetimsel olarak istemediðimiz veya istediðimiz þeylerin
bir veya birden çok SQL Server Instance' ýnda Policy
tabanlý olarak uygulanýþýný
denetleyecek, bu sayede de iþlerimizi kolaylaþtýracak bir yönetim sistemidir.
DMF bir kaç bileþenden oluþuyor. Bunlar:
- DMF Managed Target (Yönetilen Hedef),
- DMF Facet (Bu kelimenin tam karþýlýðýný bilemiyorum ama sanýrým
'Model' diyebiliriz),
- DMF Conditions (Koþul),
- DMF Policy (Politika),
- DMF Policy Category (Politika Kategorisi),
- DMF Execution Mode (Çalýþtýrma Modu), ve
- Effective Policy (Etkin Politika)' dir.

Resim-1
|
Gözünüzü korkutmasýn sakýn bu terimler. Ne kadar basit olduklarýný verdiðim örneklerde
ve kendiniz uygularken göreceksiniz. Basit derken yönetimsel olarak basit demek
istedim, iþlevleri
ise çok iþe yarar ve güçlü.
Þimdi size tek tek bu bileþenlerden bahsetmek istiyorum. Nedir bunlar? Ne iþe yararlar?
Bunlarý anlatacaðým.
DMF Managed Target:
Bir SQL Server Database Engine örneði, bir veritabaný, bir tablo ya da bir dizin
(Index) gibi DMF tarafýndan yönetilen varlýklara DMF Managed Target denir.
DMF Management Facet:
Belli bir Managed Target' ýn davranýþ veya karakteristiðini modelleyen mantýksal
özellikler bütünüdür. Özelliklerin sayýsý ve karakteristikleri Facet içerisinde
inþa edilmiþtir ve sadece yapýcýsý tarafýndan eklenip çýkarýlabilirler. Bir hedef
tipi bir veya daha fazla Facet içerebilir ve bir Facet de bir veya daha fazla hedef
tipi tarafýndan içerilebilir.
DMF Condition:
Bir DMF Managed Target' ýn izin verilen durumlarýný Management Facet'
e göre belirleyen bir Boolean beyandýr.
DMF Policy:
Bir DMF Condition ve beklenen davranýþ biçimidir; örneðin, Execution Mode, Target
Filters ve Schedule gibi. Bir Policy sadece bir Condition içerebilir. Policy' ler
kullanýlabilir veya kullanýlamaz duruma getirilebilirler.
DMF Policy Category:
Policy' leri yönetmeye yardýmcý olan ve kullanýcý tarafýndan belirlenmiþ
bir kategoridir. Kullanýcýlar, Policy' leri deðiþik Policy kategorileriyle sýnýflandýrabilirler.
Bir Policy sadece bir kategoriye ait olabilir. Veritabaný sahipleri bir veritabanýný
bir Policy kategorisine üye yapabilirler. Sadece kategorilerine üye olunmuþ Policy'
ler bir veritabanýný yönetebilirler. Tüm veritabanlarý dolaylý olarak varsayýlan
Policy kategorisine üyedir.
DMF Execution Mode:
Bir Policy' nin nasýl çalýþtýrýlacaðýný belirler. Ýstendiðinde çalýþtýrýlan
modlar Check ve Configure' dýr. Otomatik çalýþma modlarý ise:
- Changes are attempted, prevent out-of-compliance (Deðiþiklik yapýlmak istendiðinde,
kuraldýþýysa önle)
- Changes are attempted, log out-of-compliance (Deðiþiklik yapýlmak istendiðinde,
kuraldýþýysa kayýt tut)
- On Schedule, log out-of-compliance (Zaman ayarlý olarak, kuraldýþýysa kayýt
tut)
Effective Policy:
Bir hedefin Effective Policy' leri, bu hedefi yöneten Policy' lerdir.
Bir hedef ile ilgili bir Policy, sadece aþaðýdaki þartlar gerçekleþtiðinde etkindir:
- Policy etkinleþtirilmiþse (Enabled)
- Hedef, Policy' nin hedeflerine aitse.
- Hedef veya hedeflerden bir tanesi bu Policy' yi içeren Policy grubuna üyeyse.
DMF' i nerelerde kullanabiliriz?
Aþaðýdaki iki örneði inceleyin lütfen.
- Meselâ þirket politikanýz Database Mil veya SQL Mail' in kullanýlmasýný yasaklýyor.
Bu iki özelliðin kontrol edilmesi için bir Policy oluþturulur. Bir yönetici, mevcut
ayarlarý ve Policy' yi karþýlaþtýrýr. Eðer ayarlar Policy kurallarýna uymuyorsa,
yönetici Configure modunu seçer ve Policy SQL Server ayarlarýný Policy ile uyumlu
hale getirir.
- AdventureWorkds veritabanýnýzdaki tüm Stored Procedure' larýnýnýn isimlerinin
AW_ ile baþlamasýnýn gerektiðini farzedelim. Bu politikanýn zorlanmasý için bir
Policy oluþturulur. Bir yönetici bu Policy' yi test eder ve Policy kurallarýna uymayan
Stored Procedure' larýn bir listesini hazýrlar. Eðer gelecekteki Stored Procedure'
lar bu isimlendirme standardýna uymazlarsa, Stored Procedure' lar için kullanýlan
oluþturma komutlarý (CREATE PROC) hata verecektir.
|
|
Anasayfa
Sonraki Sayfa -> |
|