Replikacje. dr inż. Dziwiński Piotr Katedra Inżynierii Komputerowej. Kontakt:

Podobne dokumenty
Replikacja bazy danych polega na kopiowaniu i przesyłaniu danych lub obiektów bazodanowych między serwerami oraz na zsynchronizowaniu tych danych w

Ramowy plan kursu. Lp. Moduły Wyk. Lab. Przekazywane treści

Część I Tworzenie baz danych SQL Server na potrzeby przechowywania danych

Dokumentacja wstępna TIN. Rozproszone repozytorium oparte o WebDAV

Bazy danych. Plan wykładu. Rozproszona baza danych. Fragmetaryzacja. Cechy bazy rozproszonej. Replikacje (zalety) Wykład 15: Rozproszone bazy danych

Oracle11g: Wprowadzenie do SQL

LABORATORIUM Z ROZPROSZONYCH I OBIEKTOWYCH SYSTEMÓW BAZ DANYCH

AE/ZP-27-16/14. Oprogramowanie do wykonywania kopii zapasowych oraz zarządzania maszynami wirtualnymi

Microsoft SQL Server 2012 Krok po kroku

7. zainstalowane oprogramowanie zarządzane stacje robocze

Zasady współpracy programu Doradca Handlowy z Symfonią

Bazy danych 2. Wykład 1

Rozproszone bazy danych. Robert A. Kłopotek Wydział Matematyczno-Przyrodniczy. Szkoła Nauk Ścisłych, UKSW

Microsoft SQL Server Podstawy T-SQL

Pojęcie systemu baz danych

Leonard G. Lobel Eric D. Boyd. Azure SQL Database Krok po kroku. Microsoft. Przekład: Marek Włodarz. APN Promise, Warszawa 2014

Szkolenie autoryzowane. MS 6232 Wdrażanie bazy danych Microsoft SQL Server 2008 R2

Microsoft SQL Server 2012 : krok po kroku / Patrick LeBlanc. Warszawa, Spis treści

Część I Rozpoczęcie pracy z usługami Reporting Services

Wykaz zmian w programie WinAdmin Replikator

Podstawowe pojęcia dotyczące relacyjnych baz danych. mgr inż. Krzysztof Szałajko

Projekt dotyczy stworzenia zintegrowanego, modularnego systemu informatycznego wspomagającego zarządzanie pracownikami i projektami w firmie

1 Zaznacz poprawne stwierdzenia dotyczące grup plików (filegroup) możemy określić do której grupy plików trafi

Wykaz zmian w programie WinAdmin Replikator

2 Konfiguracja i utrzymanie bazy danych Przed rozpoczęciem Lekcja 1: Konfigurowanie plików i grup plików Pliki i grupy plików...

epuap Archiwizacja w Osobistym Składzie Dokumentów

KOŁO NAUKOWE INFORMATYKÓW SYSTEMY KONTROLI WERSJI CZ.1 16 XII 2009 OPRACOWAŁ: PRZEMYSŁAW PARDEL

Pojęcie bazy danych. Funkcje i możliwości.

William R. Stanek. Vademecum administratora. Microsoft. SQL Server Przekład: Krzysztof Szkudlarek

Administrowanie bazami danych Microsoft. SQL Server Training Kit. Egzamin Orin Thomas Peter Ward bob Taylor. Przekład: Marek Włodarz

Serwery LDAP w środowisku produktów w Oracle

PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL IV TI 6 godziny tygodniowo (6x15 tygodni =90 godzin ),

Warstwa integracji. wg. D.Alur, J.Crupi, D. Malks, Core J2EE. Wzorce projektowe.

Przesłanki powstania książki... xvi Dla kogo przeznaczona jest ta książka?... xvi Co znajdziemy wewnątrz książki?... xvii

KOMPUTEROWY SYSTEM WSPOMAGANIA OBSŁUGI JEDNOSTEK SŁUŻBY ZDROWIA KS-SOMED

ECDL/ICDL Zarządzanie projektami Moduł S5 Sylabus - wersja 1.0

1. Czym jest Wirtualny Serwer?

Program szkolenia: Administracja SQL Server

PLAN ZARZĄDZANIA KONFIGURACJĄ OPROGRAMOWANIA PROJEKT <NAZWA PROJEKTU> WERSJA <NUMER WERSJI DOKUMENTU>

Plan nauczania informatyki Opracował: mgr Daniel Starego

Zajęcia prowadzone przez MCT, auditora wiodącego systemów bezpieczeństwa informacji.

EXSO-CORE - specyfikacja

Zagadnienia egzaminacyjne INFORMATYKA. stacjonarne. I-go stopnia. (INT) Inżynieria internetowa STOPIEŃ STUDIÓW TYP STUDIÓW SPECJALNOŚĆ

ECDL ZARZĄDZANIE PROJEKTAMI

Tomasz Greszata - Koszalin

Zagadnienia egzaminacyjne INFORMATYKA. Stacjonarne. I-go stopnia. (INT) Inżynieria internetowa STOPIEŃ STUDIÓW TYP STUDIÓW SPECJALNOŚĆ

Git rozproszony system kontroli wersji

Od czego zacząć przy budowaniu środowisk wysokiej dostępności?

Informatyka I. Standard JDBC Programowanie aplikacji bazodanowych w języku Java

BACKUP BAZ DANYCH FIREBIRD

Tomasz Grześ. Systemy zarządzania treścią

Kopie bezpieczeństwa NAPRAWA BAZ DANYCH

Program szkolenia: Microsoft SQL Server 2012/2014 Databases, przygotowującego do egzaminu

Od uczestników szkolenia wymagana jest umiejętność programowania w języku C oraz podstawowa znajomość obsługi systemu Windows.

X-CONTROL -FUNKCJONALNOŚCI

Wykaz zmian w programie SysLoger

Usługi analityczne budowa kostki analitycznej Część pierwsza.

Mechanizmy pracy równoległej. Jarosław Kuchta

PRZEWODNIK PO PRZEDMIOCIE

Informatyka I. Programowanie aplikacji bazodanowych w języku Java. Standard JDBC.

Liczba godzin 1,2 Organizacja zajęć Omówienie programu nauczania 2. Tematyka zajęć

SZCZEGÓŁOWY HARMONOGRAM SZKOLENIA

Dostawa licencji na oprogramowanie serwerowe dla Małopolskiego Centrum Przedsiębiorczosci.

Część I: Podstawy administracji Microsoft SQL Server

Gra-zabawka dla niemowląt przygotowana z użyciem w Unity 3D

System Comarch OPT!MA v. 17.1

Problemy niezawodnego przetwarzania w systemach zorientowanych na usługi

Hurtownie danych - przegląd technologii

Microsoft SQL Server 2012 : vademecum administratora / William R. Stanek. Warszawa, Spis treści

Wrocławska Wyższa Szkoła Informatyki Stosowanej. Bazy danych. Dr hab. inż. Krzysztof Pieczarka.

Opis przedmiotu zamówienia: Przedmiotem zamówienia na potrzeby Miejskiego Ośrodka Pomocy Społecznej w Mikołowie jest zakup, dostawa oprogramowania (

nie trzeba pobierać wszystkich plików z serwera na stację roboczą. Teraz można pobierać tylko te

Instrukcja konfiguracji programu Invoice.Exporter

Instalacja SQL Server Konfiguracja SQL Server Logowanie - opcje SQL Server Management Studio. Microsoft Access Oracle Sybase DB2 MySQL

Plan. Raport. Tworzenie raportu z kreatora (1/3)

Wprowadzenie. Dariusz Wawrzyniak 1

Program szkolenia KURS SPD i PD Administrator szkolnej pracowni internetowej Kurs MD1 Kurs MD2 Kurs MD3 (dla szkół ponadgimnazjalnych)

Spis treści. Przedmowa

Od uczestników szkolenia wymagana jest umiejętność programowania w języku C oraz podstawowa znajomość obsługi systemu Linux.

DHL CAS ORACLE Wymagania oraz instalacja

Tomasz Greszata - Koszalin

Architektura aplikacji

Wykaz zmian w programie SysLoger

Wykład I. Wprowadzenie do baz danych

Instrukcja obsługi do programu i-monitallegro GT

Ogólne informacje o Systemie Archiwizacji ZEUS

Podręcznik administratora systemu

Projektowanie i implementacja infrastruktury serwerów

KOMPUTEROWY SYSTEM WSPOMAGANIA OBSŁUGI JEDNOSTEK SŁUŻBY ZDROWIA KS-SOMED

Referat pracy dyplomowej

Szkolenie autoryzowane. MS SharePoint Online Power User. Strona szkolenia Terminy szkolenia Rejestracja na szkolenie Promocje

Zapytania, złączenia, optymalizacja zapytań, planowanie zapytań, optymalizacja indeksów.

Klient-Serwer Komunikacja przy pomocy gniazd

Zapewnienie wysokiej dostępności baz danych. Marcin Szeliga MVP SQL Server MCT

SQL w 24 godziny / Ryan Stephens, Arie D. Jones, Ron Plew. Warszawa, cop Spis treści

Budowa aplikacji ASP.NET współpracującej z bazą danych do obsługi przesyłania wiadomości

Programowanie obiektowe

Zbuduj prywatną chmurę backupu w firmie. Xopero Backup. Centralnie zarządzane rozwiązanie do backupu serwerów i stacji roboczych

Transkrypt:

dr inż. Dziwiński Piotr Katedra Inżynierii Komputerowej Kontakt: piotr.dziwinski@kik.pcz.pl Replikacje 2 1

Podstawowe pojęcia Strategie replikacji Agenci replikacji Typy replikacji Modele replikacji Narzędzia replikacji 3 Tworzenia replikacji (wydawca) Tworzenia replikacji (subskrybent) Testowanie replikacji Użycie monitora replikacji 4 2

Jaki jest cel replikacji? Co to jest replikacja? 5 Publisher (wydawca) Serwer dostarczający źródło danych dla subskrybentów Article (artykuł) Zbiór danych istniejących jako część publikacji replikacji Publication (publikacja) Jeden lub więcej artykułów stanowiących jednostkę replikacji Distributor (dystrybutor) Serwer odpowiedzialny za dostarczanie danych do subskrybentów 6 3

Subscriber (subskrybent) Serwer lub klient otrzymujący publikacje Push Replication Metoda replikacji za pomocą której, dostawca dostarcza dane do subskrybenta Pull Replication Metoda replikacji za pomocą której subskrybent żąda danych od dostawcy Publisher/Distributor Serwer publikujący działający jako własny dostawca 7 Czy użytkownicy wymagają dostępu do danych które są całkowicie aktualne, czy też mogą korzystać z danych starczych (kilku godzinnych)? Czy użytkownicy będą modyfikować dane, które później muszą być zsynchronizowane z oryginalnym źródłem danych? Czy dane pochodzą z jednego źródła czy z wielu źródeł dostarczając dane dla centralnej bazy danych? 8 4

Snapshost Agent Wszystkie typy replikacji, odpowiedzialny za przygotowanie plików inicjalizacyjnych i informacji o schematach dla publikowanych artykułów. Dane są zapisywane do katalogu zrzutów, dane synchronizacyjne są zapisywane do bazy danych dystrybucji. Jest to podstawowy agent replikacji dla pozostałych agentów. Log Reader Agent Używany w przypadku replikacji transakcyjnej. Jeżeli transakcje są częścią publikacji zapisanej do logów transakcji, agent kopiuje te transakcje do bazy danych dystrybucji dostawcy. Pozwala to na wykonanie ich w bazach danych poszczególnych dostawców. 9 Distribution Agent Używany zarówno przy zrzucie oraz replikacji transakcyjnej bazy danych. Agent stosuje zrzuty, transakcje dla subskrybentów. W przypadku metody Pull Replication agent jest uruchamiany u subskrybenta, Push Replication u dostawcy. Merge Agent Używany w przypadku replikacji scalania, dostarcza początkowy zrzut do subskrybenta. Każda subskrypcja ma swojego agenta który obsługuje scalanie danych między wydawcą a subskrybentem. Jest uruchamiany na dostawcy w przypadku subskrypcji wysyłania danych, u subskrybenta w przypadku pobierania danych. 10 5

Queue Reader Agent Używany w przypadku specyficznego typu replikacji transakcyjnej, która odświeża subskrypcje. W przypadku aktualizacji od subskrybenta do wydawcy, aktualizacje są umieszczane w kolejce, następnie przetwarzane jako jednostki. Agent pracuje u dostawcy. Wymagana jest jedynie jedna instancja. 11 Replikacja transakcyjna Jak tylko transakcja jest zatwierdzona, dane które uczestniczą w replikacji transakcyjnej są do dystrybucyjnej bazy danych (do dystrybutora). W kolejnym kroku subskrybent może otrzymać przeprowadzone transakcje, następnie zastosować zmiany dla skopiowanych danych. 12 6

Replikacja transakcyjna standardowa Używana w przypadku, gdy subskrybent akceptuje dane w trybie tylko do odczytu. Zabezpiecza przed przeniesieniem zmian danych od subskrybenta do dostawcy. Nawet jeżeli w danych subskrybenta nastąpią zmiany, nie zostaną one przeniesione do dostawcy (zmiany w danych występują wyłącznie lokalnie). W topologii hierarchicznej W topologii równorzędnej 13 Replikacja transakcyjna w topologii hierarchicznej Występuje jeden dostawca oraz wiele subskrybentów. Subskrybenci mają potrzebę wprowadzania zmian do replikowanych danych, w tym przypadku aktualizacje są wysyłane do oryginalnego dostawcy. Lokalny dostawca wprowadza zmiany poprzez dystrybucję do wszystkich subskrybentów. 14 7

Replikacja transakcyjna w topologii równorzędnej Występuje w przypadku gdy wszyscy uczestnicy są równocześnie subskrybentami i dostawcami. Implementacja ta umożliwia tworzenie rozproszonego środowiska bazy danych, w którym wszystkie SQL Serwery dostarczają i otrzymują aktualizacje z niskimi opóźnieniami. 15 Replikacja migawki Używana w przypadkach gdy aktualizacje mogą być wprowadzane ze znacznymi opóźnieniami do wydawcy, następnie do wszystkich subskrybentów. Migawki całego artykułu są tworzone okresowo, następnie stosowane dla subskrybenta jako jednostki. Tworzona migawka jest zapisywana w postaci pliku na dysku, musi być ona dostępna dla wystawcy, dostawcy oraz subskrybenta. W przypadku rozdzielnych serwerów należy podać prawidłową ścieżkę sieciową. 16 8

Replikacja migawki Podstawową zaletą replikacji migawki w przypadku środowiska asynchronicznego jest opóźnienie pomiędzy wydawcą i subskrybentem. Wadą za każdym razem cała migawka jest kopiowana prze co może niewspółmiernie obciążać zasoby w przypadku dużych ilości danych Można zezwolić na kompresję pliku migawki, co znacząco redukuje użycie dysku oraz czas transferu między wydawcą a subskrybentem. 17 Replikacja przez scalanie Wykorzystywana w przypadku kiedy zadania są realizowane w sposób niezależny, użytkownicy i aplikacje okresowo wymagają połączeń w celu synchronizacji danych. Często używana w architekturze klient-serwer. Replikacja ta jest błogosławieństwem (umożliwia uzyskanie dostępu offline do krytycznych danych) i przekleństwem umożliwia przeprowadzenie synchronizacji z wielu subskrybentów. 18 9

Replikacja przez scalanie Wielu subskrybentów w trybie offline może próbować synchronizować zmiany do tych samych danych!! Pomocny jest mechanizm śledzenia zmian, który określa jak rozwiązać problem wielu subskrybentów np. poprzez wagi autorytetu. Problem ten można rozwiązać także programowo uwzględnić inne kryteria zależne od modelowanego problemu. 19 Replikacja Oracle SQL Serwer wspiera replikację obiektów Oracle, wymaga SQL Serwera min. 2005 i Oracle 9i. Generalnie wspiera dowolnego wystawcę Oracle bez względu na platformę bazową 20 10

Dostawca/wiele subskrybentów W tym przypadku oryginalne dane pochodzą z jednej lokalizacji Stosuje się w celu umożliwienia dostępu do danych z odległych lokalizacji 21 22 11

Wiele dostawców/jeden subskrybent W przypadku gdy, wiele serwerów śledzi i aktualizuje dane, dane muszą być skonsolidowane na jednym serwerze. 23 24 12

Wiele dostawców/wiele subskrybentów W przypadku współdzielenia danych przez wszystkich. Lokalne bazy danych zawierają informacje o lokalnych i odległych operacjach. Każdy dostawca dostarcza aktualizacji występujących lokalnie do wszystkich innych partnerów replikacji (subskrybentów). 25 26 13

Filtrowanie Statyczne filtry wierszy Filtry kolumn Sparametryzowane filtry wierszy Filtry złączeń 27 Statyczne filtry wierszy Wykorzystywane we wszystkich typach replikacji, definiowane u dostawcy, umożliwiają ograniczenie liczby wierszy, które są dostępne poprzez zastosowanie klauzuli WHERE 28 14

Filtry kolumn Używane do usuwania wybranych kolumn dla wszystkich wierszy w publikacji kolumn które nie powinny być udostępnione subskrybentom Wykorzystywane we wszystkich typach replikacji 29 Sparametryzowane filtry wierszy Dostępne tylko w przypadku replikacji scalającej, podobne do statycznych filtrów wierszy, Umożliwiają wielokrotny podział danych (dla wielu subskrybentów) bez tworzenia wielu publikacji. Podział danych zawartych w jednej tabeli dla wielu subskrybentów przy użyciu jednej publikacji 30 15

Filtry złączeń Zastosowanie ograniczone do replikacji scalania, jest wspólnie używane do rozszerzania danych w publikacjach, które używają filtrów sparametryzowanych. Filtry te są podobne do filtrów złączeń zapytań SQL. 31 32 16

34 35 17

Pytania, sugestie: piotr.dziwinski@kik.pcz.pl Dr inż. Dziwiński Piotr Katedra Inżynierii Komputerowej 37 18