Inne artykuły na podobny temat
Wazne strony po angielsku
Biogram autora

Mieczysław Owoc - absolwent Wydziału Inżynieryjno Ekonomicznego Wyższej Szkoły Ekonomicznej we Wrocławiu w roku 1973, doktorat na Wydziale Zarządzania i Informatyki na Akademii Ekonomicznej we Wrocławiu 1983 r. habilitacja na tym samym wydziale w roku 2005. Od 2001 roku kierownik Katedry Systemów Sztucznej Inteligencji (po przedwczesnej śmierci prof. Andrzeja Baborskiego), od 2002 r. pełnomocnik Rektora AE Wrocław w Zamiejscowym Ośrodku Dydaktycznym w Ząbkowicach Śląskich.

Opublikował ponad 100 artykułów z dziedziny technologii informacyjno-komunikacyjnych (w szczególności dotyczących problematyki baz danych i systemów inteligentnych). Jego prace były publikowane m.in. Kluwer Academic Plenum Publishers, Cambridge University Press oraz cytowane w IBM Systems Journal vol. 42 No. 3, 2003 (artykuł C.A. Singera - „Context-specific intelectual-capital – the Next Link in Knowledge Chain”), w Image and Vision Computing NZ, Palmerston North, 2003 (artykuł Jinhonga S., Miyazaki S., Aoki T., Yasuda H. - ”Filmmaking Production System with Rule-based Reasoning”) oraz w ramach Knowledge – “the Ultimate Asset” (SQA 2000 Software Management System, September 2003).

Redaktor jednego z pierwszych polskich podręczników z zakresu systemów ekspertowych (Elementy systemów ekspertowych wyd. I w r. 1991, wyd. II w r. 2006) oraz innych podręczników akademickich. Uczestnik szeregu konferencji międzynarodowych (w tym EXPERSYS’96 w Paryżu, EXPERSYS’97 w Sunderland, V Europejskim Sympozjum dotyczącym wartościowania wiedzy – EUROVAV’99 w Oslo, InSite’2003 w Pori oraz World Computer Congress’2004 w Toulouse) jest członkiem Komitetów Programowych m.in. konferencji: International FLAIRS Conference z afiliacją American Association of Artificial Intelligence, Informing Science + IT Education Joint Conference oraz Hybryd Inteligent Systems a od 2002 jest przewodniczącym Komitetu Programowego „Knowledge Acquistion and Management” – międzynarodowej konferencji organizowanej przez macierzystą katedrę. Reprezentuje uczelnię w projektach europejskich BINNet oraz EULLearN a także w ramach współpracy m.in. z: Katholieke Universitait Leuven i Hasselt Universitait (Belgia), Dublin City University i Limerick University (Irlandia), Malaradalens University w Vasteras (Szwecja) oraz Białoruskim Państwowym Uniwersytecie Ekonomicznym w Mińsku.

Jest cenionym dydaktykiem prowadzącym zajęcia na macierzystym wydziale m.in. wg programu MBA, na studiach doktoranckich a także wykłady w języku ang. dla studentów zagranicznych. Był zapraszany na wykłady m.in. na uniwersytety w Irlandii, Belgii i Białorusi a w latach 1993-1994 był wykładowcą w Ośrodku Szkoleniowym Ministerstwa Planowania w Kuwejcie. Jest promotorem ponad 70 prac mgr i ponad 30 prac licencjackich. Pracę dydaktyczną łączy z tematyką badań dotyczącą systemów inteligentnych, narzędzi wspomagających zdalne nauczanie czy zaawansowanych narzędzi informatycznych.

Kontakt do autora

dr hab. inż. Mieczysław Owoc
Uniwersytet Ekonomiczny we Wrocławiu
Katedra Systemów Sztucznej Inteligencji
tel. (071) 368 05 03, mob. (507) 017 111

Przetwarzanie siatkowe - nowa technologia informatyczna

Mieczysław Owoc
Burzliwy i bardzo dynamiczny rozwój informatyki obfitował w mniej lub bardziej znaczące dokonania, które miały istotny wpływ na dochodzenie do współczesnego społeczeństwa informacyjnego. M.in. podczas World Computer Congress w 2004 r. w Tuluzie podkreślono znaczenie technologii baz danych czy też idei Internetu jako globalnej sieci. Ciągłe poszukiwanie rozwiązań technologicznych poprawiających efektywność przetwarzania a zarazem stanowiących bardziej naturalne wykorzystanie zasobów informacyjnych doprowadziło do opracowania tzw. przetwarzania siatkowego (ang. grid computing).

Wprowadzenie 

mowoc.jpg W ramach niniejszego wykładu zostanie scharakteryzowana typowa (dla tego rodzaju przetwarzania) architektura informacyjna wraz z istotnymi w tym układzie własnościami i potencjalnymi ograniczeniami postrzeganymi we współczesnych przedsiębiorstwach. Rozważania są ilustrowane przykładami odnoszącymi się do środowiska Oracle - jako rozwiązania aktualnie najbardziejzaawansowanego.

Większość instytucji, traktujących technologie informatyczne jako podstawowe narzędzie warunkujące sprawne zarządzanie, staje wobec podobnych wyzwań: poprawy jakości dostarczanych informacji, dostarczania odpowiednich informacji a nawet wiedzy we właściwym czasie czy wreszcie efektywnego wspomagania (z elementami optymalizacji) procesów biznesowych. Stąd też zrozumiałe jest oczekiwanie na dostarczenie przez producentów oprogramowania takich rozwiązań, które wychodzą na przeciw tym nadziejom. Rzecz w tym, że oferowane rozwiązania powinny stanowić wyraźny krok do przodu w zakresie obsługi współczesnych przedsiębiorstw - działających w bardzo zróżnicowanych warunkach: od kontaktów z partnerami dysponującymi bardzo ograniczonymi zasobami po firmy globalne operujące często w przestrzeni wirtualnej.

Właściwości przypisywane takim nowym technologiom powinny równocześnie "współgrać" z tymi zróżnicowanymi warunkami funkcjonowania współczesnych przedsiębiorstw. Przed bardziej szczegółową prezentacją tych rozwiązań zostanie przedstawiona "modelowa" struktura informacyjna uwzględniona w przetwarzaniu siatkowym.

Nowa architektura informacyjna i jej technologiczny kontekst

Podstawowe założenia przetwarzania siatkowego

Punktem wyjściowym rozwiązań - ogólnie określanych mianem "przetwarzania siatkowego" - było założenie o traktowaniu przetwarzania danych jako jednej z form usług publicznych. Z punktu widzenia klienta (niezależnie od pozycji jaką zajmuje na rynku czy w branży) nieważne staje się miejsce przechowywania danych czy komputer angażowany do wykonywania zadań. Powinien on mieć dostęp do interesujących go zasobów informacyjnych tak jak przy innych mediach, z których korzysta (wody, ciepła czy elektryczności) nie znając zupełnie obsługujących go "magistrali". Idea tego typu przetwarzania, zapoczątkowana jeszcze w latach sześćdziesiątych, odwołuje się do koncepcji "siatki" jako globalnego połączenia różnych i rozproszonych zasobów, które ze sobą współpracują i którymi można skutecznie zarządzać.

rys1

Rys. 1: Architektura informacyjna wykorzystująca infrastrukturę siatkową

Źródło: Opracowanie własne (por. Kelly, 2004). 

Idea tego typu przetwarzania, zapoczątkowana jeszcze w latach sześćdziesiątych, odwołuje się do koncepcji "siatki" jako globalnego połączenia różnych i rozproszonych zasobów, które ze sobą współpracują i którymi można skutecznie zarządzać. Ogólną ideę takiej infrastruktury przedstawiono na rys. 1.

W dolnej części rysunku wyodrębniono podstawową dla całego przetwarzania - infrastrukturę siatkową. Tworzą ją zespolone w jeden spójny układ - zasoby niezbędne do realizacji usług rozważanych w kategoriach użyteczności publicznej: odnoszące się struktur informacyjnych, sprzętowo-programowych oraz umożliwiających wzajemną wymianę informacji. Można przyjąć, że tego rodzaju warstwa odnosi się w pierwszym rzędzie do zarządzania technicznego.

Aby można było w skuteczny sposób realizować określone zadania poszczególne zasoby muszą być odpowiednio zestawione (uszeregowane) i w dalszej fazie zintegrowane. Ujęto to schematycznie w części środkowej rysunku. Zaznaczono także komponenty istotne dla tworzonych w ten sposób siatek (począwszy od różnych rodzajów stosowanych pamięci aż po aplikacje i pakiety).

Cześć górna rysunku odnosi się do merytorycznych zadań kojarzonych z biznesem. Podstawowe przetwarzanie dotyczy dostępu do informacji ale zarazem mamy do czynienia ze swoistą optymalizacją zasobów angażowanych do wykonywanych zadań. Kluczową integrującą rolę spełnia swoiste repozytorium pozwalające na dość klarowne dysponowanie poszczególnymi zasobami (co symbolicznie wyraża sygnalizowany wcześniej schemat) a także - wobec konieczności ciągłego rozwoju takiej architektury - narzędzia umożliwiające skuteczne dostosowywanie się do zmieniających się warunków działania całego układu.

Kluczowe, ze względu na funkcjonowanie siatki, wydają się być trzy jej elementy niezbędne do sprawnego działania całego systemu: sieć o dużej przepustowości,oprogramowanie warstwy pośredniczącej (ang.middleware) oraz stosowane w takim układzie standardy. Elementy tego rodzaju - choć znane i wykorzystywane od dawna w różnego typu strukturach tworzących superwydajne komputery - dopiero w zastosowaniach gridowych zdają się osiągać optimum swych możliwości, odkrywając na nowo drzemiący w nich potencjał.

Przepustowość sieci

Wydajność większości aplikacji sieciowych jest uzależniona od przepustowości sieci i występujących w niej opóźnień. Nie inaczej ma się sytuacja w wypadku przetwarzania siatkowego. Przepustowość sieci to ilość "ruchu", którą sieć potrafi obsłużyć w danej jednostce czasu, z kolei opóźnienia to czas przebiegu sygnału pomiędzy nadawcą a odbiorcą. Przykładowo: opóźnienie pomiędzy Centrum Badawczym zlokalizowanym w Karlsruhe (Niemcy) a Uniwersytetem Rury w Bochum wynosi około 20 ms, a opóźnienia w sieci lokalnej plasują się na poziomie od 0,11 do 0,16 milisekundy - czasy opóźnień w systemach wieloprocesorowych są w porównaniu z nimi pomijalnie małe por. [1].

Tradycyjne aplikacje równoległe dokonują wymiany danych w klastrze podczas uruchamiania - jeżeli jeden z programów musi czekać na kolejny, aby wykonać powierzone mu zadanie, może to być dużym problemem dla całej aplikacji. W takim przypadku długie czasy opóźnień i niska przepustowość sieci globalnej (WAN) mogą jeszcze pogorszyć sytuację. Sieci lokalne (LAN lub klastry), podobnie jak systemy wieloprocesorowe, są lepiej przystosowane pod tym względem.

Łatwo więc rozpoznać rodzaj aplikacji, która nadaje się do "grid computingu". Jako że programy takie pracują jak na razie zwykle w sieciach WAN (wdrożenia naukowe), jakość komunikacji pomiędzy węzłami (komputerami) obliczeniowymi jest czynnikiem decydującym o zasadności uruchamiania danego oprogramowania w infrastrukturze grid computing. Chociaż bowiem sieć obliczeniowa teoretycznie zapewnia nieskończone zasoby obliczeniowe, wydajność tych zasobów zostanie bardzo ograniczona w przypadku, gdy węzły sieci będą tracić czas na oczekiwanie na odpowiedź z innych węzłów, co wpłynie negatywnie na działanie całego systemu.

Zatem, aby osiągnąć cel, jakim jest stworzenie globalnej sieci rozproszonej, grid computing korzysta z najnowszych rozwiązań i pomysłów z szerokiego zakresu technologii informatycznych - szybkie sieci publiczne to jeden z warunków wstępnych udanej realizacji całego przedsięwzięcia.

Oprogramowanie grid-u

Stworzenie programu działającego w technologii grid computing, wymaga sporego doświadczenia z zakresu tworzenia oprogramowania pośredniczącego (ang. middleware) - jego rola jest podobna do roli warstwy sieciowej systemu operacyjnego; aplikacja, która chce przesłać dane po sieci, nie musi znać szczegółów dotyczących konkretnych podzespołów tej sieci. Jestto właśnie rola warstwy pośredniczącej - podobnie aplikacja działająca w sieci obliczeniowej nie powinna przejmować się uwierzytelnianiem i autoryzacją - zadania te należą do oprogramowania pośredniczącego. Jednak na tym rola oprogramowania pośredniczącego w wypadku grid computing-u się nie kończy; wydawać by się mogło, że oprogramowanie pośredniczące ma ograniczony zakres działania, polegający jedynie na ukrywaniu struktury sieci, w której pracuje. I owszem - dopóki użytkownicy sieci obliczeniowej będą wysyłać programy, które mogą być obsługiwane w sposób zgodny z oczekiwaniami, wszystko powinno działać bez zarzutu.

Należy zadać sobie jednak pytanie co się stanie, gdy zaczną być używane skompilowane wcześniej pliki binarne. W sieciach o dużej skali nie ma możliwości sprawdzenia, czy komputer po drugiej stronie kabla korzysta z 64 bitowej nowoczesnej i super wydajnej architektury RISC, czy jest to może 32 bitowa maszyna Intel'a, czy też może coś całkiem innego. W środowisku silnie rozproszonym zyskują z pewnością takie języki oprogramowania, jak Java czy C++ bądź jego następca C#, które skutecznie "ukrywają" architekturę, na której pracują - jednak nowoczesne oprogramowanie pośredniczące dla sieci obliczeniowych ma także możliwość ograniczenia aplikacji obliczeniowej do określonej, zdefiniowanej wcześniej architektury. Możemy zatem wybrać tylko te maszyny, które oferują nam np. tylko przetwarzanie 64 bitowe, ryzykując przy tym, że najwydajniejsze maszyny będą jednocześnie maszynami najbardziej obleganymi, a z braku źródeł dodatkowej mocy obliczeniowej czas przetwarzania zwiększy się do tego stopnia, że może być nawet dłuższy niż w przypadku wyboru np. wszystkich maszyn tworzących struktury grid-u.

W istniejących jeszcze pre-grid-owych rozwiązaniach prawie wszystko jest sterowane przez użytkowników - uruchomienie zadania wymaga uzyskania dostępu do zasobu (konta) i zasadniczo użytkownik jest odpowiedzialny za wybór metody komunikacji, czy też sposobu obliczeń mających mieć miejsce w systemie w celu rozwiązania postawionego problemu. Docelowym natomiast jest to, by konta i pojęcie lokalizacji, nie istniały dla systemu grid-owego; przynajmniej z punktu widzenia użytkownika, który nie musi dbać o wyszukanie zasobów do rozwiązania swego problemu - to technologia gridowa znajdzie dla niego usługi i zasoby, wykona niezbędne obliczenia i zwróci wyniki, niezależnie od lokalizacji użytkownika. To jednak sytuacja modelowa, a do niej jeszcze droga bardzo daleka zob. [7].

W chwili obecnej główne wysiłki twórców "grid computingu" skupiają się na stworzeniu maksymalnie przezroczystego systemu i zapewnieniu odpowiednio wysokiego poziomu jakości usług jego użytkownikom. W momencie bowiem, gdy użytkownik przedkłada zadanie systemowi grid-owemu - do akcji wkracza cały szereg wyspecjalizowanych modułów; moduł odpowiedzialny zainterpretacje zapytania użytkownika dokonuje jego analizy i odwołuje się do kolejnego modułu odpowiedzialnego za wyszukiwanie zasobów. Ten z kolei, na podstawie wiedzy o zasobach i poprzednich wykonaniach zadań, stara się wyszukać zasoby, spełniające podstawowe kryteria zadanego przetwarzania (tj. rodzaj i ilość zasobów, system operacyjny itd.) - z góry odrzucane są zasoby, do których użytkownik nie ma dostępu ze względu na bezpieczeństwo (moduł systemu autoryzacji użytkowników). Znaleziona zostaje w ten sposób lista potencjalnych zasobów, która dalej jest przekazywana do modułu wielokryterialnej oceny zasobów - moduł ten generuje różne uszeregowania (na różnych zasobach) i ocenia zasób, uwzględniając preferencje użytkownika oraz preferencje administratorów systemów. Ostatecznie wybrany zostaje zbiór zasobów, na których zadanie zostanie wykonane - cały proces schematycznie przedstawiono na rys. 2.

rys2

Rys. 2. Sposób realizacji zadania przez system grid-owy

 

Sposób realizacji zadania przez system grid-owy Przekazanie wyników przetwarzania odbywa się niemal w identyczny sposób; pominiętymoże być moduł interpretacji zapytań na rzecz pojawienia się modułu lokalizacji użytkownika. Wynika to z faktu, że przetwarzanie skomplikowanych problemów mogło zająć sporo czasu, nie wiadomo zatem, czy użytkownik znajduje się w swojej pierwotnej lokalizacji - co w erze rozwiązań mobilnych nie powinno zbytnio dziwić. Kolejno zatem trwa wyszukiwanie wolnych zasobów sieciowych niezbędnych do przekazania informacji z pominięciem źródeł, do których użytkownik nie ma zaufania (poprzez system autoryzacji), bądź też które odmówiły przekazania usługi (np. w rezultacie oczekiwania na rychłe przekazanie wyników przetwarzania wyższego dla nich priorytetu), ocena ich przepustowości, oraz najkrótszej drogi dla pakietów danych zawierających wyniki przetwarzania, wybór zasobów i sposobu transferu (np. w zależności od szybkości negocjowanego połączenia) i wreszcie rozpoczęcie transferu.

Przedstawiony powyżej podstawowy szkielet budowy oprogramowania grid-u, wydaje się być bardzo prosty, jednak jego praktyczna realizacja nastręcza wiele problemów - wyzwaniem jest już opracowanie sprawnie komunikujących się ze sobą poszczególnych modułów, nie wspominając o opracowaniu metody podziału zasobów uwzględniającym szeregowanie zadań poszczególnych użytkowników, czy też równoważenia obciążenia zasobów. Równie kłopotliwe okazuje się zarządzanie kontami użytkowników, kwestie związane z zabezpieczeniem owej sieci i wykorzystanie w strukturach grid-u urządzeń mobilnych, nie wspominając już nawet o wymienionej na wstępie jakości usług, czy też przezroczystości systemu.

Standardy grid computing-u

Jedną z największych bolączek gnębiących technologię grid computing-u w chwili obecnej jest brak standardów dla tworzonej warstwy pośredniczącej (middleware) - stanowiącej podstawowy element struktur grid-owych - to swoista kula u nogi w rozwoju tejże technologii. Z jednej bowiem strony wiele niezależnych zespołów opracowało wielerozwiązań, z drugiej zaś rynek komercyjny cały czas czeka na wyłonienie się standardów, które umożliwiłyby rozpoczęcie prac na dużą skalę na tworzeniem oprogramowania.

Duża popularnością cieszy się obecnie - wnioskując z liczby instalacji- pakiet "Middleware Globus Toolkit" firmy "Globus", dla której to firmy pracują autorzy biblii grid computing-u - Ian Foster i Carl Kesselman nadając tym samym wiarygodność iprestiż całemu przedsięwzięciu (zob. [2]). Jednakże projekt "Globus" ze swą różnorodnością programów i wersji spowodował spore zamieszanie w środowisku grid computing-u; monolityczna struktura programu w wersji 2.0 Globus Toolkit, która doczekała się kilku pilotażowych wdrożeń w ośrodkach uniwersyteckich i badawczych, dosyć szybko odeszła w niepamięć za sprawą trzeciej wersji programu bazującej na nowej, otwartej architekturze usług obliczeniowych (ang.Open Grid Service Architecture - w skrócie OGSA), ta z kolei ustąpiła pola wersji 4.0, w której to podjęto próby zachowania kompatybilności z tradycyjnymi usługami sieciowymi. Oczywistym jest, że skutki tych działań są mówiąc delikatnie mało efektywne, a kompatybilność wersji 3.0 i 4.0 pozostawia wiele do życzenia.Nowa wersja została również pozbawiona bardzo istotnego elementu odpowiedzialnego za bezpieczeństwo struktur grid-owych - priorytetu zdawałoby się przy pracy w tak wielkiej (w zamyśle twórców) sieci rozproszonej, jaką jest Internet. Oczywiście wychodząc naprzeciw oczekiwaniom użytkowników firma zapewniła odpowiednią infrastrukturę, której celem jest uwierzytelnianie i autoryzacja pracy w sieci Globus tzw. Globus Grid Security Infrastructure (w skrócie GSI) - dostępnej wszak za dodatkową opłatą.

Kryteria istotne dla uznania przetwarzania siatkowego za przełom

Grid computing coraz częściej postrzegany jest za technologię mającą wywrzeć trwałe piętno na przyszłości świata. Wbrew pozorom bowiem nowych, przełomowych odkryć stanowiących istotny zwrot w historii jest bardzo niewiele; T. William Olle w przeciągu pięćdziesięcioletniej historii komputerów taki status nadał tylko ośmiu wynalazkom (zob. [3]). Bez znaczenia była dla niego warstwa soft lub hardware'owatworu, a jedynie efekt jaki wywarł on na naszym życiu i świecie w którym żyjemy.

Za kryteria można zatem uznać globalne rozpowszechnienie owej przełomowej techniki, jej wkład w rozpowszechnienie wiedzy i zmianę sposobu myślenia o IT, rozszerzenie horyzontów myślowych o komputeryzacji, a także pojawienie się nowych dziedzin w nauce, technice i biznesie - u podstaw których leży właśnie owa rewolucyjna myśl. Dodatkowym kryterium może być niewątpliwie dalsza rozwojowość owej idei i jej podatność na adaptacje do współpracy z innymi, starszymi tworami. Kryterium to dotyczy zwłaszcza software'u, gdyż nie można liczyć, że użytkownicy zgodnie zamienią wypróbowane i uznane rozwiązania na nowe rewolucyjne idee, które często w pierwotnych implementacjach nie są pozbawione błędów i wad typowych dla innowacyjnych produktów w fazie wczesnej młodości.

Rola jaką odgrywaprzetwarzanie siatkowe w globalizacji przetwarzania

Grid computing ma opinię bardzo ważnej technologii przyszłości i ma szansę stać się jednym z kamieni milowych w informatyzacji społeczeństwa XXI wieku. Sensu takich haseł jak "demokratyzacja mocy obliczeniowej", i "zasoby na żądanie" nie trzeba zdaje się, dziś już nikomu tłumaczyć. Przetwarzanie siatkowe ma zrewolucjonizować świat informacji w takim samym stopniu jak pojawienie się komputera osobistego, czy Internetu. Podobną wizję miał w 1991 r.Tim Berners-Lee, kiedy to wymyślił sieć WWW w CERN (franc.Centre Europeenne pour la Recherche-Europejskie Centrum ds. Badań Nuklearnych).Tak jak to miało miejsce w przypadku ogólnoświatowej sieci WWW, tak i teraz - w przypadku grid computing, główną siłą napędową tej idei jest właśnie CERN - stanowiące silne oparcie, rokujące nadzwyczaj dobrze na przyszłość.

Pierwsze inicjatywy tworzenia struktur grid-owych poprzez łączenie superkomputerów, czy też klastrów w jeszcze większe struktury "grid-owe" wypaczyły jednak nieco sposób postrzegania siatek, co przyczyniło się w środowisku do postrzegania grid-u jako zorientowanego wyłącznie na silne maszyny.Założenia jego twórców są jednak zgoła inne - udział w przetwarzaniu mają mieć maszyny najprzeróżniejszych typów; klastry, superkomputery są ważną składową systemu, ale nie mniejszą rolę mają odegrać miliony stacjonarnych komputerów, czy też serwerów - por. [2].

Optymalizacja zasobów

Grid computing ma szansę na scentralizowanie w sposób dotychczas nieznany w historii informatyki nie tylko wszelkich źródeł mocy obliczeniowej, lecz również zasobów informacyjnych i bazodanowych rozsianych po całym globie. Wykorzystanie owego niezagospodarowanego potencjału, jaki stanowią wciąż miliony stacjonarnych komputerów PC - choć niezwykle trudne do realizacji jest jednak możliwe; o czym świadczą choćby sukcesy programów badawczych takich jak Seti@home, czy rozrastających się z każdym dniem sieci wymiany plików P2P (Peer to Peer).

Globalna wioska za sprawą przetwarzania siatkowego ma szansę nie tylko wielokrotnie przyspieszyć tempo różnorakich obliczeń wykonywanych dotychczas jedynie przez superkomputery, bądź twory je udające - lecz również ma szansę na ponowne zrewolucjonizowanie światowej gospodarki. Idea wynajmowania mocy obliczeniowej superkomputerów ma bowiem szansę na przybranie zupełnie nowej postaci - źródłem zainteresowania potencjalnych firm poszukujących źródeł mocy obliczeniowej na szeroką skalę stać się mogą w niedalekiej przyszłości zwykli użytkownicy domowych pecetów, których niewykorzystana moc rośnie wykładniczo do sprzedaży nowych komputerów. Prekursorzy gigantów rynku mocy obliczeniowej już dziś próbują pozyskać jak najwięcej użytkowników swoich systemów oferując np. wzorem Distributed.net darmowy dostęp do Internetu w zamian za dostęp do niewykorzystanych cykli zegara naszych procesorów, sami z kolei użyczając ją np. firmą ubezpieczeniowym do kalkulacji ryzyka, czy też studiom zajmującym się projektowaniem, bądź animacją komputerową.

Rozwojowość technologii

O potencjale nowej technologii świadczyć może również fakt, że pomimo iż nie wykorzystujemy jeszcze w pełni jej możliwości, a wszelkie próby jej wdrożeń nadal mają charakter pilotażowo-badawczy już powstają plany jejrozszerzenia na różnorakie urządzenia. Grid computing być może już wkrótce będzie mógł wykorzystać do prowadzenia obliczeń nie tylko jądro procesora komputera, lecz również rdzeń jego karty graficznej, której wydajność we współczesnych komputerach nierzadko przekracza wydajność samego procesora. W tym samym celu wykorzystana w niedługim czasie może również zostać np. konsola do gier, czy nowoczesna lodówka [8] - procesory wszak, już dawno przestały być domeną tylko komputerów.

Projekty komercyjnego zastosowania na szeroką skalę, również wydają się z dnia na dzień zdobywać nowych zwolenników, lecz co najważniejsze nowe horyzonty niekoniecznie pojmowane w tradycyjnym modelu prowadzenia e-biznesu. Oprócz standardowego użyczania mocy obliczeniowej zainteresowanym, już dziś można korzystać choćby z darmowej telefonii internetowej opartej na technologii siatkowej (darmowej, gdyż nie potrzebującej serwerów do przechowywania danych, ta bowiem funkcja przeszła na użytkowników programu) [9], jak również bazującym na niej rozproszonej dystrybucji przekazu wideo [10], czy też programach do wymiany danych w sieciach BitTorrent [11].

Podstawowe własności przetwarzania siatkowego i ich użyteczność w przedsiębiorstwach

Koncepcja przetwarzania siatkowego ujmowana w przedstawiony powyżej sposób jest systematycznie rozwijana przez czołowych producentów branży informatycznej (m.in. IBM oraz Oracle). Jej początki przypominają rozwój Internetu, który także zainicjowany w ośrodkach naukowych (laboratorium CERN) został upubliczniony i wykorzystany do prowadzenia nowoczesnych form biznesu niekoniecznie zgodnie z intencjami pomysłodawców. Cechą charakterystyczną obydwu technologii jest rozproszenie zasobów.

Założenia i pierwsze sukcesy tej nowej technologii pozwalają przypuszczać, że może ona odegrać podobną rolę w rozwoju informatyki jaka ostatnio przypisana została Internetowi. Można przyjąć, że jest to swoista technologia "na żądanie" (zob. Baum, 2004) która jest wspierana opracowaniem i dostosowywaniem specjalizowanych narzędzi. Przeanalizujmy te nowe rozwiązania na przykładzie trójwarstwowej architektury przyjętej w środowisku Oracle.

rys3

Rys. 3. Infrastruktura przetwarzania siatkowego Oracle.

Źródło:Opracowanie własne na podstawie Baum, 2004.

Warstwa oprogramowania zapewnia dostęp do siatkowej technologii Oracle za pośrednictwem szeregu wyspecjalizowanych produktów począwszy od serwera Oracle 10g poprzez systemy obsługujące środowisko Internetowe i złożone zasoby uczestniczące w omawianych dalej zadaniach. W ramach tej warstwy następuje administrowanie i bilansowanie tych zasobów.

W obrębie warstwy przetwarzania (obejmującej komponenty sprzętowe) korzystając z otwartych standardów następuje właściwa realizacja zadań. Poszczególne procesy są odpowiednio alokowane w węzłach swoistej "siatki" przetwarzania.

Ostatnia z warstw - usług siatkowych - przejmuje zadania związane z automatycznym zarządzaniem dostępem, wydajnością i bezpieczeństwem przetwarzania. Konkretyzując, może to np. doprowadzić do wykorzystania nieużywanych zasobów w porze nocnej lub urlopowej. Chodzi tutaj również o aktywizację poszczególnych zasobów przez nadanie im odpowiedniej specjalizacji (zob. OraclePL, 2002). Do dyspozycji są np. narzędzia umożliwiające na szybkie przenoszenie danych między węzłami sieci (Oracle Streams) czy mobilne przetwarzanie za pośrednictwem odmiennych środowisk sprzętowych i operacyjnych.

Wszystkie sygnalizowane właściwości przetwarzania siatkowego są zorientowane na obsługę przedsiębiorstw funkcjonujących zarówno w sposób tradycyjny, jak i mających znamiona organizacji przyszłości. Spróbujmy skonfrontować te nowe możliwości omawianej technologii z tendencjami rozwojowymi współczesnych instytucji.

Z uwagi na pewną niejednoznaczność własności współczesnych i przyszłościowych instytucji ograniczymy się jedynie do wybranych aspektów ich charakterystyki (por.Organizacja przyszłości, 1998 oraz Perechuda, 2004).Podobnie wobec wielu często wzajemnie zawierających się cech specyficznych dla przetwarzania siatkowego należałoby je sprowadzić do prostej postaci. W poniższej tabeli została zaprezentowana próba oceny użyteczności nowych rozwiązań technologicznych w kontekście wyselekcjonowanych kierunków rozwoju współczesnych przedsiębiorstw.

Tabela 1: Użyteczność przetwarzania siatkowego dla współczesnych przedsiębiorstw

Wybrane kierunki rozwoju przedsiębiorstw
Własność technologii grid
Niezawodność komponentów
Sterowanie dostępem Mobilność przetwarzania
Standaryzacja rozwiązań
Optymalizacja zasobów
Autonomia
x
x
-
-
x
Integracja
x
x
x
x
x
Uczenie się
-
x
x
x
x
Wirtualizacja
x
x
x
x
x
Globalizacja
x
x
x
x
x

Źródło: opracowanie własne 

Jak wynika z wprowadzonych w tabeli oznaczeń użyteczność przetwarzania siatkowego w przeważającej liczbie przypadków jest bezsprzeczna.

Wprowadzona jako pierwsza z własności (niezawodność komponentów) jest istotna zarówno dla przedsiębiorstw współczesnych jak i ma kluczowe znaczenie w przyszłości. Własność ta jest wypadkową ogólnego rozwoju technologicznego instytucji i korzystania przez nią z konkretnych zasobów Jedynie w przypadku organizacji samouczących się czynnik ten wydaje się wtórny.

Sterowanie dostępem (rozumiane jako rozwiązanie zapewniające selektywne i swobodne korzystanie z zasobów informacyjnych) jest istotne w każdym z przytoczonych kierunków rozwoju. Należy podkreślić, że ta własność także pośrednio wpływa na ogólne bezpieczeństwo systemu oraz kształtowaną w ten sposób niezawodność komponentów.

Kolejna z własności - mobilność przetwarzania - stała się kluczowa dla organizacji korzystających w przeważającej części z zasobów Internetowych. W szczególności dotyczy ona takich tendencji jak wirtualizacja i globalizacja instytucji. Nie ma ona większego znaczenia w rozwiązaniach traktowanych jako autonomiczne.

Podobnie możemy ocenić użyteczność przetwarzania siatkowego w kontekście wprowadzanych standardów. Funkcjonująca od kilku lat instytucja zajmująca się tym zagadnieniem Global Grid Forum i zalecane przez nią standardy są kluczowe dla procesów udostępniania kodów źródłowych programów (zob. Souder,2004).

Ostatnia z własności ma zasadnicze znaczenie dla ogólnej poprawy wydajności i użyteczności omawianego przetwarzania dla instytucji niezależnie od ich kierunków rozwoju. Chodzi o wprowadzanie za pośrednictwem technologii siatkowych funkcji pozwalających na automatyczną realizację wybranych faz przetwarzania (zob. Floss, 2004 oraz Wiseth, 2003).

Konsekwencje zastosowania grid computingu

Coraz bardziej powszechne wykorzystywanie technologii siatkowych będzie powodowało znaczącą ewolucję przetwarzania zarówno po stronie użytkowników, jak i administratorów systemu (zob. [4] oraz [5])

Z punktu widzenia użytkownika grid computing powinien zmieniać sposób, w jaki przedsiębiorstwa postrzegają zasoby. Pojawia się szansa na racjonalizację wykorzystywania zasobów informatycznych: zamiast kupować sprzęt do określonych zastosowań firmy będą się starały uwzględniać całość potrzeb, a następnie przydzielać zasoby poszczególnym aplikacjom na żądanie lub według ustalonych reguł. Równocześnie będzie można osiągać zdecydowanie wyższą jakość usług informatycznych poprzez większą dostępność do zasobów przy zintegrowanym systemie bezpieczeństwa (por. [6]). Ponadto łatwiejsze będzie korzystanie z zaawansowanych funkcji bazodanowych obejmujących m.in. lepszą obsługę hurtowni danych, przetwarzania typu inteligencja biznesowa czy wreszcie koniecznych w obydwu przypadkach przesyłaniach danych.W przypadku konkretnego użytkownika, grid computing oznacza, że nie musi on się zajmować miejscem i sposobem wykonywanych obliczeń. Nie musi wiedzieć, kiedy powinien wykonywać określone czynności ani jakie parametry czy pytania powinien zadawać.

Z punktu widzenia administratora systemu rewolucja ma polegać na znacznie efektywniejszym zarządzaniu zasobami informatycznymi. Dotyczy to m.in. udostępnienia funkcji samo-zarządzania bazy danych i automatyzacji szeregu usług wymagających dotychczas bezpośredniej ingerencji administratora - np. zasilania danymi. Umożliwia to efektywniej wykorzystywać zasoby firmy przyczyniając się do istotnego zmniejszenie kosztów projektowania, wdrażania i zarządzania.

Podsumowując, przetwarzanie siatkowe ma znacznie zmniejszyć koszty mocy obliczeniowej i zwiększyć dostępność oraz wykorzystanie zasobów obliczeniowych przez różne komórki organizacyjne firmy. Dostępne będą w ramach przedsiębiorstwa różne strategie współużytkowania zasobów i łączenia ich w pule, które powinny pomóc uporać się z problemami wynikającymi ze współużytkowania stałych cykli procesora, a także z niechęci użytkowników do dzielenia się ograniczonymi zasobami.

Uwarunkowania podyktowane wprowadzeniem technologii siatkowej nie są z kolei zbyt obciążające. Przede wszystkim należy, na bazie poprawnie przygotowanej infrastruktury, zaimplementować jeden z wariantów rozwiązań gridowych. Zgodnie z zakresem funkcjonalnym omawianej technologii - szereg zadań może być wykonywanych automatycznie. Nieistotna w takim układzie wydaje się bariera finansowa - niektórzy z producentów oprogramowania (np. Oracle) oferują nowe produkty w cenie rozwiązań wcześniej wprowadzonych. Pozostają do przełamania tradycyjne ograniczenia wynikające z dotychczasowych doświadczeń i procedur użytkowników, które nabierają innego kształtu w obliczu nowej technologii.

Podsumowanie

Podstawowe konkluzje wynikające z przedstawionego materiału można sformułować następująco:

  1. technologia siatkowa stanowi bardzo interesującą propozycję doskonalącą współczesne przetwarzanie danych,
  2. cechy omawianej technologii, a przede wszystkim dynamiczna restrukturyzacja zasobówsprawiają, że stanowić ona może bardzo istotny punkt zwrotny w zakresie szeroko rozumianego przetwarzania globalnego,
  3. istniejący poziom wykorzystywania technologii gridowych jest niezadowalający ale wobec dość świadomej roli producentów - można się spodziewać, że w najbliższych latach będzie ona bardziej akceptowana.

Analiza istniejących rozwiązań doprowadza do stwierdzenia, że obecne zalążki systemów grid-owychrealizują jednak tylko niektóre elementy przedstawionej wcześniej koncepcji i są naturalnym wytworem ewolucji charakterystycznym dla wczesnych etapów rozwoju nowej technologii. Nie oznacza to również że nie można wskazać potencjalnych prekursorów, dla kolejnych generacji programów realizujących już w znacznie większym stopniu (bądź nawet całkowicie) idee grid-u.

Przetwarzanie siatkowe okazuje się już na początku pierwszych praktycznych zastosowań bardzo obiecującym i wykraczającym poza aktualne poziomy rozwiązaniem. Adresowane do firm przyszłości dostarcza zupełnie nowych możliwości porównywalnych z eksplozją Internetu. Podstawowych walorów przetwarzania siatkowego należy upatrywać przede wszystkim w:

  1. Optymalizowaniu zasobów używanych do przetwarzania; dotyczy to zarówno lepszego ich dobrania i wykorzystania w realizowanych zadaniach jak i obniżania ogólnych kosztów wynikających ze stosowania informatyki.
  2. Zapewnieniu większej niezawodności rozwiązań. Komponenty wykorzystywane w technologii siatkowej mogą być indywidualnie wprowadzane do przetwarzania.
  3. Coraz powszechniejszym stosowaniu technik przynależnych rozwiązaniom charakterystycznym dla sztucznej inteligencji (samo-zarządzająca się baza danych Oracle 10g czy uczenie się organizacji za pośrednictwem specjalizowanego oprogramowania).

Wskazane zalety nabierają istotniejszego znaczenia w konfrontacji z oczekiwaniami organizacji reprezentujących wszystkie cechy instytucji przyszłości. Organizacje te, kształtowane w dużej mierze przez rozwój technologii informacyjnych, wydają się coraz bardziej odległe od klasycznych kanonów zarządzania. Wpływ tych technologii na wybrane cechy instytucji przyszłości powinien być przedmiotem badań dotyczących natury rozwoju organizacji. W szczególności, wskazanie rang poszczególnych własności przetwarzania siatkowego na kierunki rozwoju tych organizacji stanowi wyzwanie dla badających zależności pomiędzy tymi zjawiskami.

Przypisy i literatura
  1. Berlich R.: "Die neue Netzmasche", Linux Magazin 2004/06
  2. Foster I, Kesselman C.: „The Grid: Blueprint for a New Computing Infrastructure“, Morgan-Kaufman Publishers, 1999
  3. Olle T.W.: “Eight Significant Events in the 50 Year History of Computing”. Proc. of the 18th World Computer Congress, Toulouse 2004
  4. Owoc M.L.: Przetwarzanie siatkowe – infrastruktura i własności istotne dla współczesnych przedsiębiorstw, [w:] Prace Naukowe nr 1044 pod red. Niedzielska E., Dudycz H., Dyczkowski M.. Wyd. AE we Wrocławiu 2004
  5. Owoc M.L., Sachańbiński J.: Wybrane funkcje administrowania zasobami informatycznymi w przetwarzaniu siatkowym. [w:] Prace Naukowe AE 1044 pod red. Niedzielska E., Dudycz H., Dyczkowski M.. Wyd. AE we Wrocławiu 2005
  6. OWP Oracle Database 10g: A Revolution in Database Technology. An Oracle White Paper, December 2003
  7. Węglarz J.: „Zarządzanie zasobami w systemie typu grid”, Pro Dialog 16, Nakom 2003
  8. http://cell.raw.net/news.php , http://www.butterfly.net/
  9. http://www.skype.com/
  10. http://www.tvoon.de/ctv/
  11. http://www.bitcomet.com/ , http://azureus.sourceforge.net/
  12. Baum D. (2004) Technology On-Demand. A New Frontier. Oracle Magazine May/June 2004, s. 26-35.
  13. Floss K. (2004) Advice and Consent. Oracle Magazine March/April 2004, s. 85-88.
  14. Kelly D.A. (2004) Core to Your Business. Oracle Magazine May/June 2004, s. 26-35.
  15. Organizacja przyszłości(1998).Red. Hesselbein F., Goldsmith M.,Beckhard R. Business Press, Warszawa
  16. Perechuda K. (2004) Tworzenie wartości w dynamicznych sieciach przedsiębiorstw.[w:] Pozyskiwanie wiedzy i zarządzanie wiedzą. Red. Nycz M., Owoc M.L. Prace Naukowe AE nr 1011,Wydawnictwo Akademii Ekonomicznej, Wrocław.
  17. Wiseth K. (2003) The World’s First Self-Managing Grid-Ready Database Arrives. Oracle Magazine September/October 2003, s. 28
  18. OraclePL (2002) Oracle i grid computing. Artykuł przeglądowy Oracle. http://www.oracle.polska (dostępne 15.06.2004)
  19. Souder B. (2004): Grid computing i Oracle 10g w pytaniach i odpowiedziach. http://www.oracle.polska (dostępne 15.06.2004)

Projekt jest częścią serwisu internetowego Uniwersytetu Ekonomicznego we Wrocławiu.
Wszelkie prawa zastrzeżone. Kopiowanie i rozpowszechnianie tylko za zgodą właściciela.
Design: Centrum.pl