Slajdy

Transkrypt

Slajdy
DEKLARATYWNE ZARZĄDZANIE
W MICROSOFT SQL SERVER
Na podstawie artykułu:
Hongfei Guo Dan Jones Jennifer Beckmann Praveen Seshadri
Declarative Management in Microsoft SQL Server
Marek Wittkowski
Nowe podejście RDBMS
 Administrator
określa jaki stan
bazy danych chciałby
otrzymać
 Nie interesuje go w jaki
sposób to osiągnąć.
Standardowe narzędzia administratora
 Graficzne
narzędzia konfiguracji
 Linia poleceń
 Skrypty często powtarzanych operacji
 Monitoring czasu rzeczywistego i przeszłości
 Narzędzia diagnostyczne
Problemy
 Setki
instancji bazy danych zarządzanych przez jednego
administratora
 Ciągle rozwijane RDBMS (wiele wersji)
 Możliwość sporych strat wywołanych błędem człowieka
(np. Błąd w skryptach backup-u //możliwość utracenia
danych bezpowrotnie)
Intencje
 Prosty
zrozumiały system
 Cloud computing
 Odpowiedni poziom abstrakcji
Przykłady prac administracyjnych
 Wszystkie
kolumny o typie wskazującym na zawartość
wrażliwych danych powinny być szyfrowane
 Dla wszystkich baz danych powyżej 20MB statystyki
powinny być włączone
 Nazwy wszystkich tabel, widoków, składowanych procedur
powinny być dłuższe niż 5 znaków
A dodatkowe obostrzenia
 Wybór
zakresu naszych prac
 Regularność naszej pracy
Co na to administrator ?
 Przydałoby
się sprytny system, który mógłby zrozumieć
intencję administratora oraz potrafił je zastosować.
Środowisko akademickie
 Optymalizacja
zapytań
 Przetwarzanie zapytań
 Przetwarzanie transakcji
 Administrator jest pomijany
Wybór bazy danych
 Koszty
są najważniejsze
 Zestaw funkcji na 2 miejscu
Całkowity koszt posiadania(TCO)




Koszt licencji
Koszt sprzętu
Koszt pracy developera, tworzącego nową
aplikację
Koszt zarządzania aplikacji i systemu
w ciągu pracy aplikacji
Główny koszt


Administracja bazy danych (TCO)
Błędy ludzkie
Przyszłość nie pozostawia złudzeń



Wzrost złożoności systemu
Zwiększenie liczby danych, którymi zarządza
pojedynczy administrator
Różnorodność, ustawienia regionalne, ogrom wersji
oprogramowania
Praktyka

15 % awarii bazy danych spowodowane jest
błędem ludzkim
Podstawowe pojęcia deklaratywnego
systemu zarządzania






Warunki zdrowia
Wiążącego celu
Moduł automatyzacji – budowa jednostek intencji
Polityka zarządzania
Modele zarządzania
Aspektów hermetyzacji dziedziny wiedzy
Modele zarządzania
Na
przykładzie
relacyjnej
bazy danych



Model zarządzania może zdefiniować
następujące podmioty sytemu: tabele,
widoki, składowane procedury itd.
zależności między powyższymi
Zawierające różne atrybuty
(np. tylko do odczytu)
Cele zarządzania
Przykład:


Tabela T1 jest celem zarządzania typu
tabeli
Wartości właściwości modelu stanowią
stan celu zarządzania.
Funkcje poprawnego modelu


Instancja modelu powinna być wypełniona z systemu
bazy danych oraz odzwierciedlać jego stan
Zmiany modelu powinny być wiernie propagowane
do systemu bazy danych
Zalety modelu



Dostarczony przez producenta systemu bazy danych
Stały dla wszystkich wersji
Odporny na zmiany w systemie bazy danych
Warunki zdrowia




Zarządzanie przez stan zdrowia
Jeśli prosty warunek jest spełniony cel jest zdrowy
Przyładowo, jeśli statystyki w bazie danych są
włączone to wszystko jest ok, jeśli nie to należy
doprowadzić model do zdrowia włączając statystyki
Nie zawsze jest oczywiste jak przywrócić stan
zdrowia
Wiążący cel



Możliwość zapytań do modelu
(np. bazy danych większe niż 20 MB)
Można ograniczyć się do filtrowania
poszczególnych typów obiektów
Pozwala na dowolne modelowanie wybrania celów
(np. zapytanie zwraca aktualnie bazy danych
spełniające warunki)
Moduł automatyzacji



Kiedy jest oceniane
W jakim kontekście (synchroniczny, asynchroniczny)
Jakie działania podjąć w wypadku niezgody
Polityka zarządzania


Dyskretna jednostka deklaratywnego zarządzania
Co do sprawdzenia, kiedy i gdzie.
Hermetyzacja




Uproszczanie
Abstrakcyjna złożoność systemu
Abstrakcja złożoności zmian
Polimorfizm
Facet – moduł hermetyzacji
System Diagram
Przykład 1 w nowej koncepcji
Dziękuję za uwagę