Systemy zarządzania bazami danych

Slides:



Advertisements
Podobne prezentacje
Video DR-S Cyfrowy rejestrator wideo
Advertisements

Bazy danych II Transakcje Piotr Górczyński 25/08/2001.
Podstawowe pojęcia programowania współbieżnego
Architektura SAP R/3 Wybrane zagadnienia.
Moduł 2. Struktury Systemów Komputerowych
Promotor: prof. dr hab. inż. Andrzej Grzywak mgr inż. Piotr Kasprzyk
SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE
Microsoft Professional Developer Days 2004
MS Access 2000 Tworzenie bazy danych Piotr Górczyński 2005.
Oryginał: Hector Garcia-Molina8. Dzienniki i odtwarzanie1 Systemy zarządzania bazami danych 8. Dzienniki i odtwarzanie.
Systemy zarządzania bazami danych 10. Strojenie. Oryginał: Shasha & Bonnet10. Strojenie2.
Zapis danych.
ELEMENTY SKŁADOWE JEDNOSTKI CENTRALNEJ
Rozdział 13: Architektura systemu Oracle
Systemy operacyjne Copyright, 2000 © Jerzy R. Nawrocki Wprowadzenie do informatyki.
Wykład nr 7: Synchronizacja procesów
Wykład nr 1: Wprowadzenie. Pojęcia podstawowe
Systemy operacyjne Wykład nr 4: Procesy Piotr Bilski.
Wykład nr 2: Struktura systemu komputerowego a system operacyjny
Wykład 10 Prowadzący: dr Paweł Drozda
Synchronizacja Rozdział 5.
Systemy operacyjne.
Systemy operacyjne Bibliografia:
ETL – wymiana danych Michał Jabłonka
Wykład 3 Wojciech Pieprzyca
Wykład 5 Wojciech Pieprzyca
Zarządzanie transakcjami
ZARZĄDZANIE PROCESAMI
Systemów Operacyjnych
WPROWADZENIE DO WINDOWS 95
Elementy informatyki w nauczaniu zintegrowanym
Efektywna transmisja plików za pomocą TCP Piotr Kasprzyk Instytut Informatyki Politechniki Śląskiej.
Zarządzanie transakcjami w SQL Server
Zarządzanie transakcjami Wykład S. Kozielski. Zarządzanie transakcjami Transakcja – jedna lub więcej operacji na bazie danych stanowiących pewną logiczną
Bezpieczeństwo baz danych
Panel sterowania.
ZESTAW KOMPUTEROWY.
STORAGE Pamięci masowe.
SIEĆ P2P 1. Definicja sieci równouprawnionej. To taka sieć, która składa się z komputerów o takim samym priorytecie ważności, a każdy z nich może pełnić.
Tworzenie nowych kont lokalnych i domenowych, oraz zarządzanie nimi
Administracja serwerem bazy danych Oracle 11g Zarządzanie strukturą bazy danych Wykład nr 2 Michał Szkopiński.
WinPakSE/PE Zintegrowany System Ochrony Obiektów
Systemy operacyjne.
Zasada działania komputera
Maciej Kujawiński i Daniel Krystyniak, klasa 2G
Przystawka Zarządzanie dyskami
Dysk fizyczny i logiczny
Solphy Polska Prezentacja Produktu Solphy Home Storage.
Bazy danych rezydujące w pamięci operacyjnej komputera (in-memory)
SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE
Systemy plików FAT, FAT32, NTFS
Narzędzia administracyjne
Koncepcja procesu Zadanie i proces. Definicja procesu Process – to program w trakcie wykonywania; wykonanie procesu musi przebiegać w sposób sekwencyjny.
Pamięć komputerowa S t r u k t u r a p a m i ę c i.
Defragmentacja dysku Jednym z kluczowych czynników wydajności operacji wejścia/wyjścia jest poziom fragmentacji plików. Fragmentacja oznacza zapisywanie.
Architektura PC.
Opracowanie ćwiczeń dotyczących zapewniania niezawodności baz danych na przykładzie Oracle Opiekun : dr inż. Agnieszka Landowska Dyplomant : Tomasz Krzyżanowski.
(c) 1999, Instytut Informatyki Politechniki Poznańskiej Rozdział 1: Wprowadzenie do baz danych.
Cele RAID zwiększenie niezawodności (odporność na awarie),
System plików.
Adam Łożyński IVi System plików NTFS listy kontroli dostępu (ACL)
Procesor, pamięć, przerwania, WE/WY, …
1 Zarządzanie transakcjami Przygotował Lech Banachowski na podstawie: 1.Raghu Ramakrishnan, Johannes Gehrke, Database Management Systems, McGrawHill, 2000.
Informatyka – szkoła podstawowa – Scholaris - © DC Edukacja OnetSkype, czyli komunikator Internetowy Informatyka.
Procesy, wątki Program a proces Proces: Przestrzeń adresowa, kod, dane, stos (część pamięci do przechowania zmiennych lokalnych i niektórych adresów) Otwarte.
Optymalna konfiguracja Microsoft SQL Server 2014
Temat 1 Pojęcie systemu operacyjnego Opracował: mgr Marek Kwiatkowski.
BUDOWA WEWNĘTRZNA KOMPUTERA
mysz drukarka Jednostka centralna monitor klawiatura.
Przetwarzanie transakcyjne. Wprowadzenie (1) Baza danych – jest abstrakcyjnym odzwierciedleniem wybranego fragmentu rzeczywistości (ang. miniworld) mini.
Zapis prezentacji:

Systemy zarządzania bazami danych 13. Strojenie dziennika

Atomowość i trwałość Każda transakcja kończy się wycofaniem lub zatwierdzeniem. Nie może zmienić zdania Nawet po awarii: Wyniki zatwierdzonych transakcji muszą być trwałe Wyniki wycofanych transakcji muszą całkowicie zniknąć ZATWIERDZONA COMMIT Ø AKTYWNA (działa, czeka) BEGIN WYCOFANA ROLLBACK Oryginał: Shasha & Bonnet 13. Strojenie dziennika

Awarie, przestoje Środowiskowe Operacyjne Pielęgnacyjne Sprzętowe Pożar w serwerowni (Credit Lyonnais, 1996) Operacyjne Problemy przy rutynowej administracji systemu, konfiguracji, eksploatacji Pielęgnacyjne Problemy w czasie naprawy i konserwacji systemu Sprzętowe Usterka fizyczna w urządzeniu: procesor, pamięć, dysk, karta sieciowa Programowe 99% to „błędy Heisenberga” błędy, który wymykają się próbom wyizolowania warunków ich występowania, nie występują lub zmieniają swoje zachowanie w trakcie próby powtórzenia w tych samych warunkach zwykle związane z synchronizacją lub przeciążeniem nie widać ich śladów po restarcie systemu Oryginał: Shasha & Bonnet 13. Strojenie dziennika

Przestoje – częstości System tolerujący awarie musi być zabezpieczony na wszystkie rodzaje awarii Problemem jest oprogramowanie Awarie sprzętu powodują poniżej 10% przestojów Błędy Heisenberga zatrzymują system, ale nie niszczą danych SZBD chronią integralność danych przy pojedynczych awariach sprzętu i niektórych awariach oprogramowania From J.Gray and A.Reuters Transaction Processing: Concepts and Techniques Oryginał: Shasha & Bonnet 13. Strojenie dziennika

Sprzęt [ Procesor(y), Dysk(i), Pamięć ] Architektura SZBD Podsystem składu Kontrola współbieżności Odtwarzanie Menedżer buforów System operacyjny Sprzęt [ Procesor(y), Dysk(i), Pamięć ] Oryginał: Shasha & Bonnet 13. Strojenie dziennika

Założenia Działa jakaś kontrola współbieżności Modyfikacje są robione „w miejscu” Tzn. nowe dane są zapisywane (nadpisywane) w miejsce starych (które są usuwane z dysku) Jakiś prosty schemat zachowywania trwałości i atomowości? Oryginał: Shasha & Bonnet 13. Strojenie dziennika

Obsługa buforów bazy danych Brak wymiany ramek Wymiana ramek Zapis synchroniczny Banał Zapis asynchroniczny Pożą- dane Force/No force + Steal/No steal Oryginał: Shasha & Bonnet 13. Strojenie dziennika

Obsługa buforów – rozwiązania Brak wymiany ramek Wymiana ramek Zapis synchroniczny Banał Undo Zapis asynchroniczny Undo redo Redo Undo – dziennik wycofań Redo – dziennik powtórzeń Oryginał: Shasha & Bonnet 13. Strojenie dziennika

Prowadzenie dziennika Dziennik zawiera informację do powtórzeń (redo) i wycofań (undo) Sekwencyjne zapisy do dziennika (umieść go a oddzielnym dysku). Minimalizacja informacji zapisywanych do dziennika, żeby wiele modyfikacji zmieściło się na jednej stronie Dziennik: Uporządkowana lista akcji REDO/UNDO Wpis do dziennika zawiera: (IDTrans, IDStrony, offset, długość, stare dane, nowe dane) Dodatkowe informacje sterujące Obecny stan bazy danych = obecny stan danych na dysku + dziennik Oryginał: Shasha & Bonnet 13. Strojenie dziennika 7

Zapis wyprzedzający (WAL) WAL = Write-Ahead Logging Protokół zapisu wyprzedzającego Wymusza zrzut wpisu dziennika na dysk przed zapisem odpowiedniej strony na dysk Gwarantuje atomowość Wymusza zrzut wpisów dziennika z transakcji, zanim zakończy się jej zatwierdzenie Gwarantuje trwałość Algorytm ARIES opracowany przez C.Mohan w IBM Almaden na początku lat 90-tych XX wieku http://www.almaden.ibm.com/u/mohan/ARIES_Impact.htm Oryginał: Shasha & Bonnet 13. Strojenie dziennika

Si Sj SKŁADOWISKO NIETRWAŁE BUFOR BAZY DANYCH DZIEN- NIK DANE DANE DZIENNIKA wi wj ZRZUĆ wpisy dziennika przez COMMIT ZAPISZ Zmodyfikowane strony przed/po COMMIT DZIEN- NIK DANE DANE DANE ODTWARZANIE SKŁADOWISKO TRWAŁE Oryginał: Shasha & Bonnet 13. Strojenie dziennika

Dzienniki w SQL Server 2000 Si Sj DB2 UDB v7 ma podobnie Wpis dziennika: LSN (zegar logiczny) - obraz fizyczny przed lub po, albo operacje logiczne DB2 UDB v7 ma podobnie Wolny bufor dziennika Bieżący bufor dz. Zapełniony bufor dz. wolne Si Sj BUFOR BAZY DANYCH Procesy czekające Pisarz gorliwy Zapełniony bufor dz. Pisarz leniwy Kolejka do zrzutu Synchroniczne I/O Asynchroniczne I/O DZIEN- NIK DANE Oryginał: Shasha & Bonnet 13. Strojenie dziennika

Dzienniki Oracle 8i Si Sj BUFOR BAZY DANYCH DZIENNIK Segmenty wycofań Obrazy przed Lista wolnych Segmenty wycofań (stały rozmiar) Si Sj Bufor dziennika (domyślnie 32 KB) BUFOR BAZY DANYCH Obraz po (wpisy REDO) LGWR (pisarz dziennika) DBWR (pisarz bazy danych) Segmenty wycofań DZIENNIK DANE Plik #1 Plik #2 Oryginał: Shasha & Bonnet 13. Strojenie dziennika

Dziennik na oddzielnym dysku Zapisy do dziennika są sekwencyjne (szczególny profil dostępu) Zapisy na dysk są (co najmniej) 100 razy szybsze, gdy są sekwencyjne, niż gdy są losowe Dysk z dziennikiem nie powinien zawierać nic innego + sekwencyjne I/O + awaria nośnika dziennika niezależna od nośnika bazy danych Oryginał: Shasha & Bonnet 13. Strojenie dziennika

Dziennik oddzielnie – eksperymenty 300 000 transakcji. Każda ma instrukcję INSERT. DB2 UDB v7.1 5 % większa wydajność gdy dziennik jest na oddzielnym dysku Pamięć podręczna sterownika trochę tłumi negatywny wpływ Średniej klasy serwer, z kontrolerem Adaptec RAID (80Mb RAM) i dwoma dyskami 18GB Oryginał: Shasha & Bonnet 13. Strojenie dziennika

Grupowe zatwierdzenia 300 000 transakcji. Każda zawiera zdanie INSERT. DB2 UDB v7.1 Wpisy dziennika różnych transakcji są zapisywane razem Zwiększa przepustowość poprzez obniżenie liczby zapisów Kosztem jest za to większy średni czas oczekiwania Oryginał: Shasha & Bonnet 13. Strojenie dziennika

Strojenie zapisów bazy danych Brudne dane są zapisywane na dysk, gdy liczba brudnych stron przekroczy wartość graniczną (np. parametr w Oracle8) odsetek brudnych stron przekroczy wartość graniczną (np. 3% wolnych buforów w SQL Server 7) Wykonywany jest punkt kontrolny w regularnych odstępach czasu gdy dziennik jest pełny (Oracle 8). Oryginał: Shasha & Bonnet 13. Strojenie dziennika

Strojenie odstępów punktów kontrolnych Punkt kontrolny (częściowy zrzut brudnych strona na dysk) odbywa się w stałych odstępach lub po zapełnieniu dziennika: Wpływa na wydajność bazy Pozwala obciąć dziennik Zmniejsza czas odtwarzania 300 000 transakcji. Każda ma polecenie INSERT. Oracle 8i na Windows 2000 Oryginał: Shasha & Bonnet 13. Strojenie dziennika

Zmniejsz rozmiar długich transakcji modyfikujących Wsadowa transakcja z dużą liczbą modyfikacji (dostęp współbieżny nie jest problemem): Lepiej ją podzielić na mniejsze: + Łatwiejsze odtwarzanie + Nie przepełni bufora dziennika Przykład: Transakcja, która w określonym porządku przetwarza i modyfikuje konta, na których były zmiany danego dnia Podziela ją na mniejsze wsady po 10000 kont i dodaj licznik, żeby pamiętać, co już jest zrobione Oryginał: Shasha & Bonnet 13. Strojenie dziennika