Rozproszone bazy danych (cz.2)

Slides:



Advertisements
Podobne prezentacje
Mechanizmy pracy równoległej
Advertisements

SIECI KOMPUTEROWE WYKŁAD 10. RÓWNOWAŻENIE OBCIĄŻEŃ
Sieci komputerowe.
Microsoft Professional Developer Days 2004
Autor Roman Jędras Prowadzący: dr inż. Antoni Izworski Przedmiot:
Wycofywanie potwierdzonych transakcji
Internet Communication Engine
Microsoft Office Access
Łukasz Czerwonka. Podstawy i założenia regularność wydajność szybkość ochrona kopii.
Rozdział 13: Architektura systemu Oracle
Zarządzanie konfiguracją Doskonalenie Procesów Programowych Wykład 6 Copyright, 2001 © Jerzy.
Systemy rozproszone Komunikacja (I)
Jarosław Kurek WZIM SGGW
Wykład nr 2: Struktura systemu komputerowego a system operacyjny
Usługi sieciowe Wykład 5 DHCP- debian Jarosław Kurek WZIM SGGW 1.
Synchronizacja Rozdział 5.
Systemy operacyjne.
Wrocław DHCP Autorzy: Paweł Obuchowski Paweł Szuba.
Wykład 5 Wojciech Pieprzyca
Komunikaty sterujące zestawu protokołów TCP/IP
Rozwiązywanie problemów z routerem
Zarządzanie transakcjami
Rozproszone bazy danych
Rozproszone bazy danych
JOOMLA – nowoczesny system portalowy open source
„Relacyjne Bazy Danych (Oracle)”
Rozproszone bazy danych – 2 Zarządzanie transakcjami rozproszonymi
Rozproszone bazy danych – 1 Replikacja danych
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
Architektura systemów wykorzystujących bazy danych (systemów bazodanowych) Wykład S. Kozielski.
dr inż. Piotr Muryjas Wyższa Szkoła Przedsiębiorczości i Administracji
Rozproszone bazy danych
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ć.
Prezętacja pokazująca możliwości i sam język MySQL
Prezentacja funkcjonalności dziennika e-klasa
Wirtualna baza SQL zgodna z SQL Server SQL as a Service
Administracja serwerem bazy danych Oracle 11g Zarządzanie strukturą bazy danych Wykład nr 2 Michał Szkopiński.
Jerzy Jelinek Paweł Korpowski
Prezentacja i szkolenie
Wykład IV Protokoły BOOTP oraz DHCP.
Wybrane zagadnienia relacyjnych baz danych
dr Łukasz Murowaniecki T-109
Opracowanie ćwiczeń dotyczących zapewniania niezawodności baz danych na przykładzie Oracle Opiekun : dr inż. Agnieszka Landowska Dyplomant : Tomasz Krzyżanowski.
Sieci komputerowe.
ŁUKASZ SKROBOT, Konsultant techniczny Sybase Professional services
Clustering Technologia klastrowa - architektura łącząca serwery i urządzenia pamięci masowych w celu zwiększenia niezawodności, bezpieczeństwa i wydajności.
1 SBD, L.Banachowski Zaawansowane cechy SQL Powtórzenie wyk ł adu 5.
1 Zarządzanie transakcjami Przygotował Lech Banachowski na podstawie: 1.Raghu Ramakrishnan, Johannes Gehrke, Database Management Systems, McGrawHill, 2000.
Slajd 1© J.Rumiński Jacek Rumiński  Bazy danych Kontakt: Katedra Inżynierii Biomedycznej, pk. 106, tel.: , fax: ,
Andrzej Majkowski 1 informatyka +. 2 Bezpieczeństwo protokołu HTTP Paweł Perekietka.
Projektowanie obiektowe. Przykład: Punktem wyjścia w obiektowym tworzeniu systemu informacyjnego jest zawsze pewien model biznesowy. Przykład: Diagram.
Systemy kontroli wersji Podstawy. Cz 1. Systemy kontroli wersji  Czym są i po co stosuje się systemy kontroli wersji  Architektury systemów kontroli.
Optymalna konfiguracja Microsoft SQL Server 2014
BAZY DANYCH MS Access.
Model warstwowy ISO-OSI
Opracowanie studium przypadku w SAS ETL Studio Systemy baz danych i hurtowni danych Ludmiła Binek Katarzyna Rafalska
Serwis umożliwiający organizowanie turniejów rozgrywek oraz lig (e)sportowych wraz z dostępem mobilnym Grupa: Jarosław Zima , Karol Pieniążek ,
BVMS 5.5 Blok 2-Moduł 7: Konfiguracja SNMP
Wady i zalety pracy w chmurze
T. 18. E Proces DGA - Działania (operatorka).
Komponentowe systemy rozproszone
materiały dla uczestników
GIT - System kontroli wersji
PROGRAMY DO KONTROLI RODZICIELSKIEJ
PROGRAMY DO KONTROLI RODZICIELSKIEJ
Treści multimedialne - kodowanie, przetwarzanie, prezentacja Odtwarzanie treści multimedialnych Andrzej Majkowski informatyka +
Technologie Informacyjne Bazy danych
Rozproszone bazy danych
Zapis prezentacji:

Rozproszone bazy danych (cz.2) Henryk Telega BD 2006 Wykład 12

2PC w systemie Oracle Typy węzłów: Koordynator globalny: węzeł sieci, w którym zainicjowano transakcję rozproszoną Uczestnik Węzeł zatwierdzania (ang. commit point site) BD 2006 Wykład 12

2PC w systemie Oracle Faza przygotowania - koordynator koordynator globalny określa węzeł zatwierdzania (na podstawie parametru COMMIT_POINT_STRENGTH skonfigurowanego w każdym węźle) koordynator globalny wysyła do uczestników zadanie przygotowania do zatwierdzania (PREPARE) BD 2006 Wykład 12

2PC w systemie Oracle Faza przygotowania - uczestnik odbiór komunikatu od koordynatora globalnego żądającego przygotowania do zatwierdzania wysłanie żądania przygotowania do zdalnych węzłów, do których odwołuje się uczestnik w przypadku braku modyfikacji danych: wysłanie do koordynatora globalnego komunikatu READ-ONLY zapisanie zawartości bufora dziennika powtórzeń do pliku dziennika (online redo log) jeśli inne zdalne węzły dołączone do uczestnika zgłosiły gotowość i sam uczestnik jest gotów: wysłanie komunikatu PREPARED do koordynatora globalnego w przeciwnym przypadku: wycofanie lokalnej transakcji wyslanie ABORT BD 2006 Wykład 12

2PC w systemie Oracle Faza zatwierdzania: koordynator globalny odbiera potwierdzenia od uczestników PREPARED READ-ONLY (brak modyfikacji) ABORT (niemożliwość przygotowania do zatwierdzania) jeśli wszyscy odpowiedzieli PREPARED, to koordynator globalny wysyła żądanie zatwierdzenia transakcji do węzła zatwierdzania węzeł zatwierdzania zatwierdza transakcję i wysyła komunikat do koordynatora globalnego koordynator globalny wysyła zadanie zatwierdzenia do pozostałych węzłów jeśli choć jeden uczestnik odpowiedział ABORT, to koordynator wysyła zadanie wycofania transakcji do węzła zatwierdzania węzeł zatwierdzania wycofuje transakcję i wysyła komunikat do koordynatora globalnego koordynator wysyła żądanie wycofania do uczestników BD 2006 Wykład 12

2PC w systemie Oracle Faza zatwierdzania - uczestnik: odbiór od koordynatora globalnego komunikatu żądającego zatwierdzenia transakcji zatwierdzenie lokalnej transakcji zwolnienie blokad zapis informacji o zatwierdzeniu w pliku dziennika powtórzeń BD 2006 Wykład 12

2PC w systemie Oracle Transakcje „in-doubt” odtwarzanie automatyczne odtwarzanie ręczne standardowe mechanizmy testowania awarii BD 2006 Wykład 12

Replikacja BD 2006 Wykład 12

Replikacja BD 2006 Wykład 12

Replikacja w MS SQL Serwerze Serwer, który udostępnia dane nazywa się wydawcą (publisher), serwer pobierający dane jest subskrybentem (subscriber). Między wydawcą a subskrybentem jest serwer dystrybucyjny – dystrybutor (distributor). Publikacji podlegają artykuły. Artykuł to na ogół tabela lub część tabeli. Artykuł jest najmniejszą jednostką replikacji. W artykule możliwe jest pionowe i poziome filtrowanie danych (wybieranie kolumn i wierszy). Można również replikować procedury składowane (definicję) lub wykonanie procedury. Replikację konfiguruje się dla zestawu artykułów, który nazywa się publikacją. Subskrypcja może być wymuszana (push) lub żądana (pull), w zależności od tego, czy jest inicjowana odpowiednio przez wydawcę, czy subskrybenta. BD 2006 Wykład 12

Replikacja w MS SQL Serwerze Procesem replikacji w MS SQL Serwerze sterują tzw. agenci. Najważniejsi agenci to: Snapshot Agent – tworzy początkowe migawki (snaphots) i przekazuje je do dystrybutora; działa na dystrybutorze Distribution Agent – przekazuje migawki i dane transakcyjne do subskrybentów; typowo działa na dystrybutorze dla subskrypcji wymuszanych i u subskrybentów dla subskrypcji żądanych. Log Reader Agent – śledzi dziennik transakcji wydawcy i rejestruje zatwierdzone transakcje w bazie danych distribution Merge Agent – scala dane z wielu serwerów BD 2006 Wykład 12

Replikacja w MS SQL Serwerze Typy replikacji (1) Migawkowa (snaphot): dane (migawki) są przesyłane standardowo od wydawcy do subskrybenta zgodnie z pewnym harmonogramem, zwykle niezbyt często (np. raz dziennie, raz na kilka godzin). Standardowo zmiany replikowanych danych są możliwe tylko u wydawcy (chociaż można to zmienić). Transakcyjna (transactional): zmiany w danych podlegających replikacji są wykrywane przez agenta Log Reader i przesyłane przez agenta o nazwie Distribution Agent do subskrybentów natychmiast, albo zgodnie z pewnym harmonogramem. Tu również standardowo zmiany replikowanych danych są możliwe tylko o wydawcy (chociaż można to zmienić). Replikacja transakcyjna może obejmować wykonywanie procedur składowanych. BD 2006 Wykład 12

Replikacja w MS SQL Serwerze Typy replikacji (2) Scalana (merge): dane są przekazywane zgodnie z pewnym harmonogramem, na ogół stosunkowo rzadko (podobnie jak w replikacji migawkowej). Istotne jest jednak to, że standardowo subskrybenci też mogą zmieniać dane, a zatem synchronizacja jest w obie strony – od wydawcy do subskrybenta oraz od subskrybenta do wydawcy. Mogą się w związku z tym pojawić konflikty, np. jeśli wydawca zmieni pewien wiersz i pewien subskrybent zmieni ten sam wiersz. Konflikty aktualizacji są rozwiązywane automatycznie lub ręcznie. Standardowy sposób rozwiązywania konfliktów jest taki, że wydawca zawsze „wygrywa” z subskrybentami, natomiast różnym subskrybentom można przypisać różne poziomy ważności. BD 2006 Wykład 12

Replikacja w MS SQL Serwerze Typy replikacji (3) W replikacji migawkowej i transakcyjnej można włączyć mechanizmy umożliwiające aktualizację subskrybentów: immediate updating (subskrybent po zmianie replikowanych danych powiadamia natychmiast wydawcę, który zmiany akceptuje lub odrzuca w ramach transakcji rozproszonej z wykorzystaniem protokołu 2PC). queued updating (zmiany u subskrybenta są kolejkowane i przesyłane do wydawcy jeśli jest połączenie z wydawcą, nie działają tu transakcje rozproszone). BD 2006 Wykład 12

Replikacja w MS SQL Serwerze Modele replikacji Modele replikacji (terminologia firmy Microsoft): Jeden wydawca – wielu subskrybentów Jeden subskrybent – wielu wydawców Wielu wydawców i wielu subskrybentów Dowolny typ replikacji można łączyć z dowolnym modelem replikacji. BD 2006 Wykład 12

Prosta replikacja w Oracle - migawki Migawki (snapshots), perspektywy zmaterializowane. Tylko do odczytu (read-only snapshots), asynchroniczne, primary copy. Metoda przesyłania dla prostych kwerend: odświeżenie przyrostowe (fast refresh); wymaga założenia specjalnego dziennika lub odświeżenie pełne (reexecute query). Moment i częstotliwość odświeżania: manualnie automatycznie po zatwierdzeniu transakcji modyfikującej dane zgodnie z harmonogramem nigdy Grupa odświeżania – grupa migawek o wspólnych ustawieniach odświeżania BD 2006 Wykład 12

Zaawansowana replikacja w Oracle Replikacja migawkowa (materialized view replication). Rozszerzenie koncepcji migawki w wersji podstawowej o możliwość modyfikowania migawki. Środowisko replikacji migawkowej tworzą węzły nadrzędne i węzły migawkowe. Węzeł migawkowy to instancja bazy danych, zawierająca migawki, dla których źródłami danych są tabele z węzła nadrzędnego. Węzeł migawkowy może być węzłem nadrzędnym dla innych węzłów migawkowych (architektura wielowarstwowa). Replikacja multimaster (multiaster replication). Wszystkie węzły są równoważne, każdy węzeł jest typu master (nadrzędny). Zmiana wprowadzona w którymkolwiek węźle zostaje zaaplikowana we wszystkich pozostałych węzłach środowiska. Replikacja hybrydowa (mieszana). BD 2006 Wykład 12

Zaawansowana replikacja w Oracle Zaawansowana replikacja może być zarówno synchroniczna, jak i asynchroniczna. Zmiany danych mogą być wykonywane w węzłach migawkowych w przypadku migawki modyfikowalnej (updatable snapshot): zmiany są przekazywane asynchronicznie do węzła nadrzędnego, lub migawki zapisywalnej (writeable snapshot): można zmieniać dane w migawce, ale zmiany te nie są przekazywane do węzła nadrzędnego. BD 2006 Wykład 12