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ę