Extended abstract in Polish
Transkrypt
Extended abstract in Polish
POLITECHNIKA ŁÓDZKA WYDZIAŁ ELEKTROTECHNIKI, ELEKTRONIKI, INFORMATYKI I AUTOMATYKI KATEDRA INFORMATYKI STOSOWANEJ Rozprawa doktorska Przezroczysta integracja rozproszonych zasobów wewnątrz obiektowego bazodanowego gridu Promotor: prof. dr hab. inŜ. Kazimierz Subieta Łódź 2010 Rozszerzone streszczenie Termin grid znany jest jako termin określający rozproszone sieci obliczeniowe, jednak szybka ewolucja Internetu, powiększanie się społeczności internetowych, globalny wzrost wymiany informacji przez Internet wytworzyły potrzebę przetwarzania danych w architekturze rozproszonej i tym samym rozwój systemów gridowych w stronę przetwarzania danych opisanych modelami biznesowymi – danych o konkretniej strukturze. Obecnie popularne rozwiązania jak sieci P2P (peer-to-peer), w których moŜliwe jest równoległe przetwarzanie duŜych ilości danych w postaci mediów, czy plików nie wspierają zarządzania danymi strukturalnymi. Taki typ danych przechowywany jest w bazach danych. Przetwarzanie danych pochodzących ze źródeł, którymi są bazy danych, stwarza obecnie duŜe problemy. Są one związane z odpowiednim fizycznym traktowaniem tych danych oraz ze sposobem jak te dane widzi uŜytkownik – na co składa się dostęp do tych danych oraz sposoby ich przetwarzania. Główną trudnością w przetwarzaniu jest tutaj właśnie struktura takich danych. Dane biznesowe zazwyczaj charakteryzują się złoŜoną strukturą, przez co nie mogą być identyfikowane oraz przetwarzane jak zwykły ciąg bajtów. Często ich struktura moŜe być zaleŜna od innych struktur, stąd w systemie rozproszonym zarządzanie jest bardzo trudne, a w niektórych przypadkach niemoŜliwe. Przetwarzania rozproszonych danych strukturalnych – opisanych modelem biznesowym, związany jest z budową modelu zdolnego realizować równoległe przetwarzanie rozproszonych danych, gdzie róŜnego typu dane oraz usługi znajdujące się w fizycznie odseparowanych od siebie lokalizacjach mogą być wirtualnie dostępne przez ich wirtualną reprezentację. W systemach rozproszonych wymagane jest osiągnięcie transparentności, tzn. aby uŜytkownik pracując na danych mógł je przetwarzać bez względu na to czy są to dane lokalne znajdujące sie na lokalnym komputerze uŜytkownika, czy tez dane pobierane z lokalizacji zdalnych. Dodatkowo poszczególne lokalizacje skąd dane są pobierane zazwyczaj są systemami heterogenicznymi. Stawia to dodatkowe wyzwanie dla pojektantów takich systemów w postaci realizacji mechanizmu integracji takich zasobów. Mówiąc o przetwarzaniu danych mamy na myśli nie tylko ich odczyt, ale takŜe swobodną ich aktualizację. Właśnie moŜliwość swobodnej modyfikacji danych rozproszonych przy załoŜeniu, Ŝe uŜytkownik wprowadzający tą modyfikację nie jest nawet świadom, Ŝe działa na danych zdalnych jest najpowaŜniejszym problemem nierozwiązanym w innych istniejących systemach rozproszonych. Przy powyŜszych załoŜeniach rozproszony system baz danych, nazywany data-intensive lub data grid, musi mieć zapewnioną ciągłość pracy i łatwość dostępu do danych, aby to zrealizować musi to być zapewnione juŜ na poziomie architektury samego gridu. Dlatego wymaga to realizacji bardzo elastycznej łatwo skalowalnej architektury. W niniejszej pracy doktorskiej powyŜsze problemy poddane zostały dyskusji oraz zaproponowano ich rozwiązanie w kontekście architektury data grid. Za cel ustalono realizację gridu baz danych cechującego się: przezroczystością dostępnych zasobów gridu przy ich przetwarzaniu, automatyczną integracją zasobów dołączających do gridu, wirtualną siecią łączącą współpracujące bazy danych. Do osiągnięcia celu autor pracy doktorskiej zaproponował następujące załoŜenia: 1. Opracowanie modelu integracji rozproszonych, heterogenicznych zasobów danych objętych jednym wspólnym obiektowym schematem danych. Proces integracji opiera się o trójwarstwową strukturę aktualizowalnych perspektyw, które zgodnie z odpowiednimi wytycznymi są w stanie zrealizować odwzorowanie pomiędzy danymi kontrybuującymi do gridu – schematem danych najniŜszego poziomu, znajdującym się na maszynie uŜytkownika włączającego się do gridu, a globalnym schematem gridu (najwyŜszego poziomu) dostępnym dla wszystkich uŜytkowników pracujących w gridzie. Trój-warstwowa struktura perspektyw to wzajemne zestawienie obiektowych, aktualizowalnych perspektyw w trzech warstwach, w taki sposób, Ŝe kaŜda wyŜsza warstwa zaleŜna jest od warstwy niŜszej. ZaleŜność warstw określona jest umową, która mówi w jaki sposób wirtualne obiekty wyŜszej warstwy zaleŜą od obiektów niŜszej warstwy. Definicja perspektyw musi być zgodna ze sztuką budowy aktualizowalnych perspektyw opisaną w [6]. Zakładamy, Ŝe pierwsza warstwa musi zapewnić odwzorowanie i kontrybucję obiektów z lokalnej bazy danych do schematu odpowiadającego schematowi globalnemu – w wyniku tego powstają obiekty kontrybucyjne dopasowane do schematu kontrybucyjnego, druga warstwa dokonuje odwzorowania integracyjnego zgodnego ze schematem integracyjnym, gdzie wszystkie dostępne obiekty kontrubucyjne mapowane są na kolekcje obiektów integracyjnych, oraz trzecia warstwa, która dokonuje odwzorowania kolekcji obiektów integracyjnych na obiekty globalne dostępne bezpośrednio w gridzie. 2. Opracowanie generycznej techniki automatycznej integracji zasobów danych do globalnego schematu gridu. Jest to mechanizm składający się z szeregu metod i zasad wykorzystanych w algorytmach generujących perspektywy we wszystkich trzech warstwach opracowanego modelu integracji danych. Proces generacji perspektyw realizowany jest na podstawie specyficznej definicji perspektyw. 3. Opracowanie techniki zarządzania i utrzymania mechanizmu automatycznej integracji, tak aby moŜliwe było ciągłe przyłączanie oraz odłączanie się poszczególnych zasobów kontrybucyjnych gridu. Mechanizm ten wykorzystuje podobne zasady i metody podczas przebudowywania działających perspektyw jak w przypadku generacji perspektyw, z tą róŜnicą Ŝe działa tylko na poziomie integracyjnym (w warstwie drugiej). 4. Budowa wirtualnej sieci opartej o architekturę peer-to-peer, której zadaniem jest utowrzenie środowiska komunikacyjnego dla gridu, które ułatwi dostęp do baz danych jako węzłów w gridzie oraz uniezaleŜni komunikację od warstw TCP/IP. Dodatkowo przeniesie standardową pracę w sieci na wyŜszy poziom abstrakcji, w którym nie są wymagane typowe operacje sieciowe. 5. Budowa warstwy pośredniczącej tzw. middleware zawierającej wszystkie powyŜsze rozwiązania i w której zamknięte będzie proponowane rozwiązanie gridu baz danych. Przy budowie prototypu wykorzystano wirtualne repozytorium [7] oparte o silniki obiektowych baz danych ODRA [7], mechanizm aktualizowalnych perspektyw [2], [6] który jest natywnym mechanizmem realizacji perspektyw w bazach ODRA oraz środowisko do budowy sieci peer-to-peer – JXTA Framework [8]. Tezy pracy zostają sformułowane jak poniŜej: 1. MoŜliwe jest skonstruowanie rozproszonego systemu bazodanowego pracującego w architekturze przetwarzania równoległego (grid) przy wykorzystaniu obiektowej bazy danych opartej na teorii podejścia stosowego oraz aktualizowanych perspektywach. 2. MoŜliwa jest integracja zasobów lokalnych do wirtualnego repozytorium przy wykorzystaniu mechanizmu wirtualnych obiektowych aktualizowanych perspektyw. 3. MoŜliwe jest zrealizowanie wirtualnej warstwy transportowej dla rozproszonego systemu bazodanowego w oparciu o architekturę P2P i zapewnienie przezroczystości przetwarzania danych przy jej wykorzystaniu. Praca doktorska została wykonana w ramach projektu eGov-Bus (Advanced eGovernment Information Service Bus) wspieranego przez Wspólnotę Europejską w ramach priorytetu „Information Society Technologies” Szóstego Programu Ramowego (nr kontraktu: FP6-IST4-026727-STP). Tekst pracy został podzielny na następujące rozdziały, których zwięzłe streszczenia znajdują się poniŜej: Chapter 1 Introduction Wstęp Pierwszy rozdział wprowadza w tematykę pracy, zaprezentowane jest wprowadzenie w tematykę gridową, gdzie pokrótce scharakteryzowane są obecnie znane typy gridów. Przedstawione są motywacje autora oraz sformułowano cele pracy oraz zidentyfikowano związane z nimi problemy. W tym kontekście omówiono tezy dysertacji oraz zarysowano opracowane przez autora rozwiązania. Chapter 2 State of the Art and Related Works Stan wiedzy i prace pokrewne W opisie stanu wiedzy przedstawiono podstawowe pojęcia związane z systemami rozproszonymi, przetwarzaniem danych oraz integracją danych rozproszonych. Pokazano historię terminu grid oraz przykłady istniejących wczesnych oraz późniejszych rozwiązań nawiązujących do gridów. Omówiono podstawowe systemy gridowe od pierwszej do trzeciej generacji. Przytoczono reprezentatywne przykłady istniejących architektur rozproszonych stosowanych w przetwarzaniu danych. Dla zaprezentowanych rozwiązań omówiono najczęściej pojawiające się problemy w tych rozwiązaniach. Chapter 3 Technological Base of the New Approach to Grid Technologiczne podstawy nowego podejścia do gridu Jest to rozdział, w którym skupiono się na opisaniu szeregu technologii i rozwiązań mających bezpośredni wpływ na powstanie rozwiązania prezentowanego w niniejszej rozprawie doktorskiej bądź są jego częścią. Skupiono się tutaj wyłącznie na technologiach rozproszonych. Scharakteryzowana architekturę sieci peer-to-peer oraz jej implementację w projekcie JXTA, który znalazł zastosowanie równieŜ prototypie zrealizowanym w ramach niniejszej pracy. Scharakteryzowano terminy warstwy pośredniczącej (middleware), federacyjnych baz danych (federated databases), w skrócie opisano rozwiązanie wirtualnego repozytorium eGov-Bus w ramach którego został wykorzystany prezentowany w pracy prototyp oraz prototyp obiektowej bazy danych ODRA. Chapter 4 An Automatic Integration Methodology of Distributed Data, General Concept and Assumptions Ogólna koncepcja i załoŜenia metodologii automatycznej integracji rozproszonych danych Ta część pracy przedstawia trójwarstwowy model przezroczystej integracji rozproszonych źródeł danych do jednego wspólnego schematu danych dla rozwiązania ODRA-GRID. Omówiono poszczególne warstwy modelu, równieŜ w odniesieniu do występujących rodzajów fragmentacji danych. Zaprezentowano zaprojektowaną i w znaczącym zakresie zaimplementowaną architekturę mechanizmu automatycznej integracji rozproszonych zasobów do gridu baz danych w oparciu o silnik bazy danych ODRA i mechanizm aktualizowalnych perspektyw. Zaprezentowano równieŜ architekturę wirtualnej sieci będącą warstwą pośredniczącą w której zaszyte zostały wszystkie proponowane mechanizmy gridowe. Pokazano schemat działania mechanizmu automatycznej generacji aktualizowalnych perspektyw wykorzystany w mechanizmie automatycznej integracji rozproszonych zasobów. Opracowane metody i mechanizmy zostały poparte odpowiednimi rzeczywistymi przykładami integracji w języku SBQL. Chapter 5 Prototype Implementation and Examples Realizacja prototypu i przykłady W rozdziale znajduje się szczegółowe omówienie opracowanej wirtualnej sieci, opisano zasadę jej działania oraz wytyczne jak uruchomić prototyp ODRA-GRID i jak w nim działać. Szczegółowo opisano środowisko pracy, wraz z logiką, które zostaje udostępnione uŜytkownikowi sieci wirtualnej. Na bazie dwóch przykładów obiektowych schematów danych opisano proces generacji modelu integracyjnego wewnątrz prototypu ODRA-GRID oraz szczegółowo wytłumaczono kolejne kroki jego przetwarzania. Chapter 6 Automatic Integration – Testing Results Automatyczna integracja – wyniki testów W rozdziale zaprezentowano rezultaty testów zaimplementowanego systemu ODRA-GRID oraz mechanizmu automatycznej integracji rozproszonych zasobów. Wyniki potwierdzają skuteczność opracowanej metodologii. Testy empirycznie potwierdzają poprawność zastosowanych rozwiązań, a całość stanowi dowód dla tez dysertacji postawionych w rozdziale 1-szym. Chapter 7 Summary and Conclusions Podsumowanie i wnioski Zawarte zostały tutaj doświadczenia i wnioski zdobyte podczas opracowywania architektury systemu ODRA-GRID i testowania prototypu. Wymieniono opracowane rozwiązania i wyniki badań, które jednoznacznie potwierdzają słuszność tez pracy doktorskiej. Osobny podrozdział poświęcony jest dalszym pracom, które mogą zostać wykonane w celu rozwoju prototypu i rozszerzenia jego funkcjonalności. Tekst pracy został rozszerzony o załącznik omawiający uŜycie prototypu osłony obiektoworelacyjnej jako dodatkowego źródła danych integrującego i włączającego do gridu relacyjne zasoby danych. W skrócie zaprezentowano architekturę osłony oraz metodę jej integracji z gridem.