Usługa przenoszenia danych umożliwia aplikacji przenoszenie danych ze źródłowej bazy danych do docelowej bazy danych. Źródłowe i docelowe bazy danych mogę być homogeniczne lub heterogeniczne,
innymi słowy mogą rezydować w pojedynczym systemie lub mogą być rozproszone w wielu systemach. Poza przenoszeniem danych usługa może także transformować dane
i udostępniać podstawowe funkcje cyklu życia danych wymagane przez aplikację.
Usługi przenoszenia danych są implementowane przez pięć głównych komponentów:
- Komponent przechwytujący (elementy źródłowe)
- Komponent wprowadzający (elementy docelowe)
- Komponent ETL (wyodrębniania, transformowania i ładowania)
- Komponent cyklu życia elementu źródłowego
- Komponent cyklu życia elementów docelowych
Komponenty przechwytujący i wprowadzający współpracują, przenosząc dane ze źródłowej bazy danych do docelowej bazy danych. Komponent ETL wykonuje niezbędne transformacje danych, jeśli struktura danych w źródłowej bazie danych jest inna niż struktura danych w docelowej bazie danych.
Następujący diagram ilustruje przepływ procesu w usłudze przenoszenia danych:
Przepływ pracy w usłudze przenoszenia danych przebiega w następujący sposób:
- Dane są zapisywane w tabelach źródłowych i często aktualizowane, na przykład przez serwer programu Monitor.
Komponent przechwytujący zapisuje w tabelach roboczych wszystkie zmiany danych, które są wprowadzane w tabelach źródłowych.
- Zmiany te są identyfikowane przez komponent wprowadzający i zapisywane w tabelach roboczych w predefiniowanych odstępach czasu.
- Po pomyślnym zapisaniu zmian wywoływany jest komponent ETL.
- Komponent ten przeprowadza niezbędne transformacje, korzystając z danych zapisanych w tabelach roboczych komponentu wprowadzającego i predefiniowanych reguł.
Dane, które zostały pomyślnie przekształcone, są zapisywane w tabelach docelowych. Wszystkie niekompletne lub błędne dane są zachowywane w innym zestawie tabel roboczych w celu dalszego przetwarzania.
- Na zakończenie przetwarzania ETL aktywowany jest komponent cyklu życia elementu docelowego.
- Z upływem czasu w tabelach roboczych komponentu wprowadzającego gromadzą się duże ilości danych.
Wszystkie dane z tych tabel, które zostały pomyślnie przetworzone przez komponent ETL, są usuwane przez komponent cyklu życia elementu docelowego.
- Po pomyślnym skopiowaniu danych do docelowej bazy danych nie są one już potrzebne i mogą zostać usunięte z tabel roboczych komponentu przechwytującego.
Komponent przechwytujący okresowo czyści tabele robocze, aby zredukować wykorzystanie zasobów.
- Usunięcie danych z tabel roboczych komponentu przechwytującego wyzwala wywołanie komponentu cyklu życia elementu źródłowego.
- Wszystkie dane, które zostały pomyślnie przetworzone, są oznaczane jako gotowe do usunięcia i przesyłane do strategii czasu przechowywania komponentu cyklu życia elementów źródłowych, a następnie usuwane ze źródłowej bazy danych.
Komponent przechwytujący i komponent cyklu życia elementów źródłowych zwykle rezydują w systemie źródłowym, natomiast komponent wprowadzający, komponent ETL i komponent cyklu życia elementów docelowych rezydują w systemie docelowym, co ilustruje poniższy rysunek:
W usłudze przenoszenia danych może być używanych wiele instancji komponentów, w zależności od struktur danych używanych w źródłowej i docelowej bazie danych.
Liczba instancji komponentu jest bezpośrednio powiązana z liczbą grup miar biznesowych oraz liczbą źródłowych i docelowych tabel w
modelu
miar
biznesowych. Każda instancja jest unikalna. W programie
WebSphere
Business Monitor są stosowane następujące reguły:
- Pojedyncza instancja komponentu przechwytującego jest przypisana do pojedynczego projektu modelu
miar
biznesowych
i przechwytuje zmiany ze wszystkich tabel źródłowych należących do tego projektu modelu
miar
biznesowych.
- Pojedyncza instancja komponentu wprowadzającego jest przypisana do pojedynczego projektu modelu
miar
biznesowych
i zapisuje zmiany, które mają zostać wprowadzone do tabel docelowych należących do tego projektu
modelu
miar
biznesowych.
- Pojedyncza instancja komponentu ETL jest przypisana do pojedynczej tabeli docelowej.
- Pojedyncza instancja komponentu cyklu życia elementów źródłowych jest przypisana do pojedynczej tabeli źródłowej.
- Pojedyncza instancja komponentu cyklu życia elementów docelowych jest przypisana do pojedynczej tabeli komponentu wprowadzającego.
Instancją komponentu może być na przykład program wykonywalny, procedura składowana bazy danych lub wyzwalacz bazy danych.
W programie
WebSphere
Business Monitor są używane dwie instancje usług przenoszenia danych:
- Usługa przenoszenia danych z bazy danych stanu do wykonawczej bazy danych
- Usługa przenoszenia danych z wykonawczej bazy danych do bazy danych historycznych.
Usługa przenoszenia danych z bazy danych stanu do wykonawczej bazy danych
przetwarza dane, które zostały zapisane przez serwer programu Monitor w bazie
danych stanu, oraz przenosi je do wykonawczej bazy danych, gdzie są one dostępne dla panelu kontrolnego.
Usługa przenoszenia danych z wykonawczej bazy danych do bazy danych historycznych przenosi dane z wykonawczej bazy danych do bazy danych historycznych.
Przeniesienie to ilustruje następujący diagram:
Następujące informacje zawierają opis domyślnych konfiguracji dla tych usług oraz sposobów ich konfigurowania, uruchamiania, zatrzymywania i monitorowania.