STUDIA IN F O R M A T IC A Volume 22
2001 N u m b er 3 (45)
Katarzyna H A R Ę Ż L A K , H enryk JO SIŃ SK I Politechnika Śląska, Instytut Inform atyki
HURTOWNIA DANYCH DLA ROZPROSZONEJ BAZY DANYCH
S treszczen ie. W artykule ro zw ażono zag ad n ien ie tw o rzen ia hurtow ni danych dla instytucji, których system y inform atyczne fu n k cjo n u ją opierając się na rozproszonych bazach danych nadzorow anych przez system zarządzania, którego elem en ty składow e k o m u n ik u ją się przez w irtualnie w sp ó łd zielo n ą pam ięć. O kreślo n o now e zadania elem en tó w system u zarządzania, pozw alające na w spółpracę z h u rto w n ią danych.
W ro zw ażan iach u w zględniono dw ie strategie zasilan ia hurtow ni now ym i danym i:
o k re so w ą i zdarzeniow ą.
A DATA WAREHOUSE FOR A DISTRIBUTED DATABASE
S u m m ary. T h e article presents analysis o f the virtual sh ared m em ory usage as a m ean o f c o m m u n icatio n betw een a data w arehouse an d O L T P system s, w hich are based on d istrib u ted databases. T h ere are also d efined new elem en ts o f the ex p erim en tal d istrib u ted database m anagem ent system and th e ir functions resulting from the research. T w o strategies o f a data w arehouse loading are taken into con sid eratio n : a periodic an d an e v e n t-d riv e n one.
1. Wstęp
N iniejsze o p raco w an ie dotyczy im plem entacji now ych elem en tó w eksperym entalnego systemu z a rząd zan ia ro z p ro sz o n ą b a z ą danych, p racującego w lokalnej sieci E thernet, łączącej grupę stacji roboczych Sun [7, 8, 9]. S tacje te m a ją ró ż n ą architekturę i ró ż n ią się mocą obliczeniow ą. W sy stem ie zaim plem entow ano p ro ceso r aplikacji z w ykorzystaniem wybranych sy stem ó w zarząd zan ia bazam i danych (Ingres, P o stg res9 5 , M S S Q L Server) ja k o procesorów danych (PD ). D o realizacji zadań procesora aplikacji zasto so w an o m odel w ielo procesorowego k o m p u tera z w irtualnie w sp ó łd zielo n ą p am ięcią. Im plem entacji dokonano
210 K. H arężlak, H. Josiński
bazując na w ykorzystującym ten m odel środow isku prog ram o w an ia rozproszonego i rów noległego P aradise [7, 10]. D ostęp procesora aplikacji do zaw artości lokalnych baz danych (L B D ) za p o śred n ictw em odpow iedniego pro ceso ra danych uzyskano stosując technikę zan u rzan ia instrukcji ję z y k a S Q L w ję z y k u C.
W skład p ro ceso ra aplikacji w c h o d z ą m oduły klienta i lo ka ln eg o serw era (LS) [9].
W system ie m oże ró w n o cześn ie funkcjonow ać d ow olna liczba pro g ram ó w klien ta oraz lokalne serw ery w liczbie odpow iadającej liczbie procesorów danych. P o szczeg ó ln e moduły u rucham iane n ieza leżn ie na różnych kom puterach k o m u n ik u ją się p rzez wirtualnie w sp ó łd zielo n ą p am ięć - p rzestrzeń krotek (TS) - za p o śred n ictw em je d n o s te k nazywanych kro tka m i, będących sekw encjam i pól.
P rogram klien ta je s t urucham iany na lokalnym k o m p u terze użytkow nika. Stanowi interfejs m iędzy użytkow nikiem a m odułem lokalnego serw era. D o je g o zadań zalicza się p ob ran ie od u ży tk o w n ik a ciągu zapytań, ich dekom pozycję na p o d zap y ta n ia operujące na danych w różnych w ęzłach sieci, w ysłanie ich do lokalnych serw erów o raz prezentację odebranych w yników . K lient zarządza także w ykonaniem transakcji rozp ro szo n y ch . Sprawuje ró w n ież k ontrolę nad w spółbieżnym dostępem do danych, zrealizo w an y m przez w prow adzenie d o d atkow ego m echanizm u blo k o w an ia (b lo ka d logicznych).
W ym iana inform acji m iędzy m odułem klienta a procesoram i d anych realizow ana jest przez lo ka ln e serw ery. Specyfika realizacji funkcji lokalnego serw era zw iązana jest z w łaściw ościam i system u stanow iącego pro ceso r danych. N ależy do nich m .in. ewentualna translacja zap y tań w ję z y k u S Q L na ję z y k w łaściw y dla procesora d anych lokalnej bazy danych, zarząd zan ie lokalnym i blokadam i, o ile tej funkcji n ie w ykonuje sam procesor danych, oraz zarząd zan ie lokalnym i transakcjam i.
S ystem ek sp ery m en taln y w zbogacony zo stał ró w n ież o m oduły odpow iedzialne za koordynację w szystkich zad ań operujących na pow ielonych danych.
W obecnym kształcie om aw iany system sp ełn ia sw o je funkcje w zak resie obsługi bieżących transakcji dotyczących rozproszonych baz danych (R B D ), je d n a k je g o elem enty nie s ą p rzygotow ane do obsługi hurtow ni danych, co sk łan ia tw órców sy stem u d o rozważenia m ożliw ości je g o ro zszerzen ia o m echanizm y w sp ieran ia procesu zb ieran ia danych historycznych.
2. Cel tworzenia hurtowni danych
W system ie is tn ie ją ro zp ro szo n e bazy danych zapew niające p o p raw n e funkcjonowanie m ech an izm u g ro m ad zen ia i w ym iany inform acji p o m ięd zy lokalnym i jednostkami o rganizacyjnym i.
Hurtownia danych dla rozproszonej b azy danych 211
W zw iązku z e w zrastającym zap o trzeb o w an iem u ży tkow ników końcow ych na korzystanie z danych, nie tylko dla analizy bieżącej sytuacji, lecz ró w n ież w celu oceny działalności je d n o ste k , których te d ane dotyczą, zachodzi p o trzeb a zw iększenia funkcjonalności tak ieg o system u przez dodanie obsługi hurtow ni danych.
R ozproszona b a z a danych ro zszerza m ożliw ości scentralizow anej bazy danych m iędzy innymi p o p rzez zn iesien ie o graniczenia objętości danych w ystępującego dla pojedynczego węzła. M o żn a w ięc w takiej b azie przechow yw ać pew ne d ane historyczne, je d n a k dostęp do takich danych, ja k i p rzygotow anie ich w postaci w ygodnej w celu przeprow adzenia przekrojowej an alizy pracy firm y na przestrzeni w ielu lat, m o g ą być czaso ch ło n n e, a ponadto opóźniałyby realizację bieżących transakcji. D latego w ydaje się celow e zbudow anie hurtow ni danych, gdzie histo ry czn e d ane b ę d ą przechow yw ane w postaci przygotow anej po d kątem zapotrzebow ania u żytkow ników końcow ych, jak im i s ą m enedżerow ie i d oradcy ekonom iczni.
D wie ro zp ro szo n e b azy danych p oddane zostały analizie prow adzącej zarów no do przygotowania p ro jek tu hurtow ni danych, ja k i do opracow ania m etod je j uaktualniania.
Pierwsza z nich d otyczy pracy firm lotniczych, druga - fu n k cjo n o w an ia korporacji skupiającej b iu ra p ro jek to w e i w ykonaw cze, które realizu ją tem aty w różnych b ranżach i dla różnych klientów . O gólne schem aty ideow e tych rozproszonych b az danych przed staw io n o na rysunkach.
K lient R B D
LS LS
PD • • • PD
LBD LBD
Rys. 1. S c h e m a t ideow y rozproszonej bazy danych dla korporacji b iu r projektow ych Fig. 1. T h e d istrib u ted d atabase sch ém a fo r a corporation o f design offices
W przypadku korporacji (rys. 1) lokalne b azy danych o d p o w ia d a ją poszczególnym biurom projek to w y m w chodzącym w je j skład. N ato m iast w p rzy p ad k u linii lotniczych (rys. 2) m am y do czy n ie n ia z lokalnym i oddziałam i różnych firm lotniczych, zajm ujących się obsługą klientów . B iorąc pod uw agę n iezależność tych firm , objętych zasięgiem rozproszonej
212 K. H arężlak , H . Josiński
bazy danych, celo w e było stw orzenie d odatkow ego szczeb la scalająceg o na poziomie pojedynczej firm y oraz m o d u łu klienta p o zio m u lokalnego - o d p o w ied zia ln eg o z a kontakt z użytk o w n ik iem tego p o zio m u , ja k rów nież za kom unikację z m odułem k lien ta rozproszonej bazy danych. E lem en t ten stanow i zasad n iczą ró żn icę m ięd zy rozw iązaniami zaproponow anym i w niniejszym opracow aniu.
R ys. 2. S ch em at ideow y rozproszonej bazy danych d la linii lotniczych Fig. 2. T h e d istrib u ted database schem a fo r airlines
O kreślając cel budow y hurtow ni danych, należy m ieć na u w ad ze fakt, że prace nad pro jek tem m a ją c h arak ter iteracyjny i b ę d ą w ym agały ścisłej w spółpracy z użytkownikiem końcow ym , który w początkow ym stadium tw orzenia hurtow ni m o że nie być je s z c z e w petni św iad o m y sw oich przyszłych potrzeb. N a w stępie należy w ięc w sk azać użytkowników końcow ych h urtow ni, aby m ożliw e stało się określen ie zadań, któ re h u rto w n ia m a spełniać.
W zasięg u zain tereso w ań pow in n y znaleźć się następujące zag ad n ien ia [1]: informacje o zak resie i szczeg ó ło w o ści danych poddaw anych analizie, form a ich p rezen tacji, najczęściej zad aw an e zap y ta n ia oraz elem enty zw iązane z efek ty w n o ścią realizacji tych zapytań, jak ró w n ież z o b ję to śc ią grom adzonych danych. W ażnym elem en tem w b u d o w ie hurtow ni jest o k reślen ie sp osobu i częstotliw ości zasilania hurtow ni danym i.
Hurtownia danych dla rozproszonej bazy danych 213
3. Opis struktury danych systemów obsługi bieżącej
Inform acje przechow yw ane w rozw ażanych hurtow niach danych p o c h o d z ą z system ów obsługi bieżącej (system ów O LT P), opartych na rozproszonych bazach danych. R o zp ro szo n a baza danych sk ład a się z szeregu lokalnych baz danych, w skład których, w przypadku linii lotniczych, w c h o d z ą n astęp u jące tabele:
Sam oloty (ID S a m o lo tu . ID _ T y p u _ S a m o lo tu , R o k _ P ro d u k c ji, L icz b a _ W y la ta n y c h _ G o d zin , L ic z b a _ W y la ta n y c h _ K ilo m e tró w , ID _ L o tn isk a _ M ac ie rz y steg o )
P racow nicy (ID P ra c o w n ik a . N azw isk o , Im ię, R o k _ Z a tru d n ie n ia , ID _ F irm y ) SkIad_Z ałogi (ID Z a ło g i. ID S ta n o w isk a. ID P ra c o w n ik a . D ata_ O d )
Loty (ID L o tu . ID _ S am o lo tu , ID _ T ra sy , ID _ Z a!o g i, N u m e r_ L o tu , C za s_ W y lo tu , D ata_ W y lo tu , O d p raw io n y ) Bilety (ID B ile tu . ID _ L o tu , ID _ K la sy _ M ie jsca , ID _ R o d z aju _ B ile tu , ID _ P a saż e ra , ID _ O d d ziaIu ,
D ata_ S p rz ed a ż y , N u m e r_ M iejsc a )
Pasażerow ie (ID P a s a ż e ra . N azw isk o , Im ię, ID _ M ie jsc o w o śc i, K o d _ P o c z to w y , U lic a , T e le fo n ) Cennik (ID C e n y . ID _ T ra sy , ID _ K la sy _ M ie jsca , ID _ R o d z aju _ B ile tu , ID _ F irm y , C en a) N ieobslużeni (ID L o tu . ID K lasy M ie jsc a . L ic z b a _ N ieo b slu ż o n y ch )
oraz szereg tabel o charakterze słow nikow ym (Trasy, L o tn isk a, T ypy_S am olotów , Klasy_Miejsc, R o d zaje_ B iletó w , Z ałogi, Stanow iska, O ddziały, Firm y, M iejscow ości, Regiony, K raje).
W przypadku korporacji b iu r do lokalnych b az danych n a le ż ą n astęp u jące tabele:
Projekty (ID P ro je k tu . N a zw a _ P ro jek tu , ID _ B iiira, ID _ K lien ta, D ata_ O d ,
D a ta _ D o _ P lan o w a n a , D a ta_ D o _ R z ec z y w ista, L ic z b a _ G o d zin _ P !a n o w an a , L iczb a _ G o d zin _ R z ec z y w ista, ID _ K ie ro w n ik a _ P ro jek tu )
klienci (ID K lie n ta . N azw a, ID _ M ic jsc o w o śc i, K o d _ P o c z to w y , U lica, T e le fo n ) Pracow nicy (ID P ra c o w n ik a . N azw isk o , Im ię, R o k _ Z a tru d n ie n ia , ID _ B iu ra) Inw estycje (ID In w e sty c ji. N a zw a, D a ta_ In w esty c ji, ID _ K a te g o rii_ In w e sty cji, K w o ta,
ID _ U lg i_ P o d atk o w c j, ID _ B iu ra)
Oferty (ID O fe rty . ID _ P rac o w n ik a , ID _ F irm y _ P o le c a n ej, W y so k o ść_ O ferty )
Staw k i_ G o d zin o w e (ID S ta w k i. ID _ B iu ra , ID _ Z ak resu , D ata_ U sta le n ia, W y so k o ść _ S ta w k i) R ozliczen ie_ T y g o d n io w e (ID R o z lic z e n ia . ID _ P rac o w n ik a , ID _ P ro jc k tu , ID _ Z ak resu _ P ra c ,
ID _ B ra n ż y , D ata_ R o z lic ze n ia , L icz b a _ G o d zin )
oraz szereg tabel o ch arak terze słow nikow ym (B iura, M iejsco w o ści, R egiony, K raje, B ranże, Firmy, K atcgorie_Inw estycji, Z akresy_P rac, U lgi_P odatkow e).
W obu p rzypadkach ro zp ro szo n a baza danych m a dostarczyć pełny obraz działalności opisywanej instytucji. W celu realizacji tego zadania tabele sło w n ik o w e zrep lik o w an o we wszystkich lokalnych bazach danych, nato m iast p o zo stałe relacje sta n o w ią fragm enty poziome je d n o ste k logicznych w sch em acie globalnym rozproszonej b azy danych [8].
214 K. H arężlak , H. Josiński
4. Opis struktury hurtowni danych
S tru k tu ra danych, będąca p o d staw ą pracy system ów obsługi bieżącej, zostanie w ykorzystana, po d o k onaniu pew nych m odyfikacji, w procesie bud o w y hurtow ni. Z e względu n a ob jęto ść, ja k i przezn aczen ie danych, nie w szystkie in fo rm ac je p o ch o d zące z systemów obsługi bieżącej m u s z ą być p rzechow yw ane w hurtow ni danych. C zęść z nich m oże zostać o drzu co n a, je ś li zo stan ie u zn an a za n ieisto tn ą z punktu w id zen ia u ży tkow ników hurtow ni. Na p rzykład, w przypadku bazy danych dla linii lotniczych, na szczeblu podejmowania strategicznych decyzji dotyczących działalności firm y nie w ydaje się istotne analizowanie szczeg ó łó w dotyczących zajm o w an ia konkretnego m iejsca przez k o n k retn eg o pasażera na k onkretnej trasie. M o że ró w n ież w ystąpić potrzeba, by dane szczeg ó ło w e z system ów obsługi bieżącej zo stały u zu p ełn io n e lub zastąpione przez w artości zagregatyzow ane.
M ając na uw adze różnice w strukturze danych d la p rzetw arzan ia bieżącego i analitycznego, należało postaw ić sobie pytania o ro d zaje inform acji, których b ędą żądać u ży tk o w n icy hurtow ni danych. W przypadku om aw ianej korporacji in fo rm acje te mogą dotyczyć:
- k ształto w an ia się staw ek godzinow ych w poszczególnych biurach w o statnich latach, - liczby pro jek tó w zrealizow anych w biurach dla różnych b ra n ż gospodarki
z u w zg lęd n ien iem p o ło żen ia geograficznego biura,
- inform acji o d ziedzinach gospodarki, w których poczyniono najw ięcej inwestycji w o statn ich latach,
- przekrojow ej analizy dotyczącej kontaktów z w ybranym klientem .
U ży tk o w n ik hurtow ni danych dla linii lotniczych m oże n ato m iast być zainteresow any:
- najczęściej lub najrzadziej w ykorzystyw aną przez pasażerów trasą, - firm am i lotniczym i preferow anym i przez klientów ,
- okresam i ro k u , w których w zrasta liczba pasażerów ,
- klasam i m iejsc najczęściej w ybieranym i przez pasażerów , z u w zg lęd n ien iem trasy lotu.
E fek tem tej analizy było przygotow anie w stępnych pro jek tó w o bu hurtow ni danych opartych n a m odelu R O L A P [5], T ab ele słow nikow e, po w cześniejszej denormalizacji, w y k o rzy stan e zo stały ja k o w ym iary, natom iast na po d staw ie stru k tu r p ozostałych relacji z b u d o w an o tabele faktów [6]. W niektórych p rzypadkach p o zo staw io n o poziom szczeg ó ło w o ści system u obsługi bieżącej, w innych - p rzep ro w ad zo n o agregatyzację.
Hurtownia danych d la rozproszonej bazy danych 215
Rys. 3. S chem at hurtow ni danych d la linii lotniczych Fig. 3. T h e data w arehouse schem a fo r airlines
Schem at hurtow ni danych dla linii lotniczych przed staw io n y na rys. 3 zaw iera dw ie tabele faktów . P ierw sza z nich (F S przedaż_B iletów ) o b ejm u je zestaw ien ie dotyczące sprzedaży biletó w i je s t w ym iarow ana przez atrybuty o pisujące firm ę, czas, trasę i klasę miejsca. Z ak ład a się, ż e pojedynczy rekord w tabeli faktów b ęd zie rep rezen to w ać w ielkości wyznaczone w procesie agregatyzacji danych szczegółow ych, takie ja k : łączna liczba sprzedanych biletów , k w o ta uzyskana z ich sprzedaży o raz łącz n a liczb a n iezrealizow anych prób kupna biletów . D ru g a tabela faktów (F C en aJB iletu ) rejestruje zm ien iające się w czasie ceny biletów .
216 K, H arężlak , H. Josiński
W In w e sty c ja W B iu ro
ID _Inwestycji N azw a _ In w e sty cj i B r a n ż a jn w e s t y c ji
F K o szt_ In w esty c ji
ID_Biura ID_Czasu ID _Inw estycji K w o ta _ In w esty c ji K w o ta_ U lg i_ P o d a tk o w ej
F K lie n t
ID _Biura ID_KIicnta ID _Czasu ID_Branży ID _Zakresu_Prac L icz b a _ G o d zin L ic z b a _ P ro je k tó w S u m a ry c z n a _ K w o ta
ID _Biura N a zw a M iasto R eg io n K raj K o n ty n en t
W C zas
ID_Czasu M iesiąc K w artał R ok
W B ran ża
ID _B raniy N azw a _ B ra n ży
W Z a k re s_ P ra c
I D_Zakresu_Prae N azw a _ Z a k re su _ P ra c K a tcg o ria _ Z a k re su _ P rac
F C e n a_ G o d z in y
ID _Biura ID _Czasu ID _Zakresu_Prac S ta w k a _ G o d zin o w a
F R e aliza c ja _ P ro je k tó w
ID _Biura ID _Czasu ID _Branży ID _Zakresu_Prac L ic z b a _ G o d z in L icz b a _ P ro je k tó w
W K Iien t
ID _Klienta N azw a_ K lien ta M iasto R eg io n K raj K o n ty n e n t
Rys. 4. S ch em at hurtow ni danych dla korporacji b iu r projektow ych Fig. 4. T h e data w arehouse sch ém a fo r a co rp o ratio n o f design offices
S ch em at hurto w n i danych dla korporacji przed staw io n y n a rys. 4 zaw iera cztery tabele faktów . P ierw sza z n ich (F R ealizacja_P rojektów ) o b ejm u je zestaw ien ie dotyczące realizacji p ro jek tó w i je s t w ym iarow ana przez atrybuty op isu jące czas, biuro, bran żę i zakres prac.
D ruga tabela faktów (F C ena_G odziny) rejestru je zm ien iające się w cza sie ceny godziny pracy biura dla danego zakresu prac. K olejna tabela faktów (F K oszt_Inw estycji) zaw iera koszty inw estycji biura, a o statn ia (F K lient) p rezentuje w ielkości w yznaczone w procesie agregatyzacji danych szczegółow ych w odniesieniu do pojedynczego k lien ta biura, takie jak:
łącz n a liczb a g o d zin pracy biura, łączna liczba realizow anych pro jek tó w o raz wypracowana w ten sposób kw ota.
Hurtownia danych d la rozproszonej bazy danych 217
5. Metody i częstotliwość uaktualniania hurtowni danych
Aby zaw arto ść h urtow ni danych o d zw ierciedlała inform acje zg ro m ad zo n e w system ach obsługi bieżącej, m usi o n a być zasilana danym i zgodnie z rytm em zm ian zachodzących w system ach O LT P. P ierw sze ładow anie danych odbyw a się w m om en cie o ddania hurtow ni do użytku, p rzy bazo w an iu n a danych archiw alnych, składow anych przez system y obsługi bieżącej, o raz na aktualnej zaw artości baz danych system ów O LT P. K ażde ko lejn e ładow anie obejmuje zm iany, ja k ie zaszły w zaw artościach baz danych od po p rzed n ieg o u aktualniania hurtowni, i w ym aga o dpow iedniego w y selekcjonow ania w łaściw ych rekordów . Istnieje kilka sposobów realizacji tego zadania [3]:
- w prow adzenie d o d atk o w eg o atrybutu w tabelach baz danych, reprezentującego czas ostatniej ak tu alizacji oraz oddzielnej rejestracji usuw anych rek o rd ó w , aby um ożliw ić okresow e zad aw an ie zapytań przez m oduł służący do w ykryw ania zm ian w danych, - w ykorzystanie plików d zien n ik a prow adzonych przez system y O L T P , co o d procesu
ładującego d an e do hurtow ni w ym aga znajom ości struktury tych plików o raz w łaściw ego interpretow ania ich zapisów ; h eterogeniczny ch arak ter system ów O L T P spraw ia, że je st to zadanie tru d n e do zrealizow ania,
- stosow anie specjalnych plików delta, zaw ierających w yłącznie zm iany, ja k ie zaszły w zaw arto ściach baz danych,
- tw orzenie m ig aw ek b az danych i ich porów nyw anie w celu w ykrycia zm ian w bazach danych,
- rozszerzenie kodu aplikacji w spółpracujących z system am i O L T P o elem en ty rejestrujące zm iany zach o d zące w bazie danych.
W obu prezen to w an y ch w niniejszym opracow aniu przypadkach, zasilan ie hurtow ni powinno o dbyw ać się zarów no okresow o, co sugeruje zasto so w an ie p ierw szej z wyżej w ymienionych m etod, ja k i w odpow iedzi na w ystąpienie pew nych zd arzeń w bazie danych.
W tym celu w yk o rzy stan e z o sta n ą m echanizm y aktyw nych b az danych, zaim plem entow ane w system ach obsługi bieżącej. Pom iędzy kolejnym i operacjam i o d św ieżan ia danych w hurtowni je j zaw arto ść p o zo staje niezm ienna [2]. Inform acje p rzek azy w an e z o k reślo n ą regularnością, w y n ik ając ą z w ym agań użytkow nika k ońcow ego, d o ty c z ą danych agregatyzowanych. S ą to;
~ w przypadku korporacji b iu r - kw artalne zestaw ienie inform acji dotyczących projektów i inw estycji prow adzonych w ram ach pojedynczego biura,
~ w przypadku linii lotniczych - zestaw ienie d obow e, dotyczące w ykorzystania m iejsc w sam olotach latających na różnych trasach oraz liczby osób, które nie zostały obsłużone z pow odu b raku m iejsc, zarów no na szczeblu pojedynczego o d d ziału , ja k i całej firmy.
218 K. H arężlak , H , Josiński
N ato m iast dla danych szczegółow ych oraz agregatyzow anych, p odlegających zmianom nieregularnym w odn iesien iu do w ym iaru czasu, o dnotow yw anie tych zm ian w hurtowni odbyw ać się b ęd zie w reakcji na zd arzenie zm iany danych w lokalnej bazie system u OLTP.
D o danych uaktualnianych w hurtow ni w taki sposób należą:
- w p rzy p ad k u korporacji b iu r - zestaw ienie inform acji o zak o ń czo n ej fazie projektu realizo w an eg o na po trzeb y konkretnego klienta oraz dane szczeg ó ło w e, odzw ierciedlające zm ian ę staw ki z a g odzinę pracy,
- w przypadku linii lotniczych - dane szczegółow e, in fo rm u jące o z m ia n ie ceny biletu.
5.1. W łaściw ości śro d o w isk a pracy
W pływ na p rzy jętą m etodę postępow ania m a śro d o w isk o pracy eksperym entalnego system u zarząd zan ia ro z p ro sz o n ą b a z ą danych [7, 8, 9], a w szczególności tech n ik a wymiany inform acji p o m ięd zy elem entam i system u, która o p arta je s t na m o d elu wirtualnie w spółdzielonej pam ięci. T ę sa m ą technikę, z uw agi na w b u d o w an y m ech a n izm transakcji oraz zd o ln o ść do o kresow ego sporządzania kopii zaw artości w szystkich przestrzeni krotek w plikach dyskow ych w celu ich ew entualnego odtw orzenia w p rzypadku aw arii serwera, z ap ro p o n o w an o dla kom unikacji elem entów system u zarząd zan ia z m odułam i, które zasilają hu rto w n ię danych.
S ystem P a ra d ise [7, 10] um ożliw ia d efin io w an ie transakcji - zb io ru operacji zm ieniających zaw artość przestrzeni krotek, które z o sta n ą w ykonane w k o m p lecie albo jeśli ok aże się to n ierealizo w aln e, nie zo stan ie w ykonana żad n a z nich. M ech an izm ten chroni p rzed w ystąpieniem niespójności w przestrzeni krotek, do której m ięd zy innym i mogłoby dojść w p rzy p ad k u aw arii procesu, który pobrał z przestrzeni krotkę w celu zm iany jej zaw artości i n ie zd ąży ł u m ieścić zm odyfikow anej krotki p o n o w n ie w p rzestrzen i. W tym przypadku, dzięki zasto so w an iu m echanizm u transakcji, w sk o ń czo n y m czasie zostanie w ykryty brak je j pro g ram o w eg o w ypełnienia, co sp o w o d u je au to m aty czn e w ycofanie tej transakcji (pobrana k ro tk a pojaw i się w przestrzeni kro tek z p ie rw o tn ą zaw arto ścią). Istnieje ró w n ież m o żliw o ść p rogram ow ego w ycofania transakcji. W y k o rzy stan ie tej ostatniej operacji będ zie w ynikało z logiki im plem entow anego algorytm u.
5.2. S p o só b w y k o rzy sta n ia przestrzeni krotek
Z uw agi n a w yżej w ym ienione cechy system u przyjęto, że dla p ro jek to w an y ch hurtowni przestrzeń k ro tek b ęd zie w ykorzystana w ch arak terze rejestrato ra zm ian zachodzących w system ach O LT P. W przypadku linii lotniczych, d la których zm ian y , istotne z punktu w id zen ia hurtow ni, d o ty c z ą zarów no liczby odpraw ianych w dan y m d n iu sam olotów , jak
Hurtownia d anych d la rozproszonej bazy danych 219
i liczby ich pasażeró w , zaproponow ano n astęp u jącą strukturę krotek przenoszących te informacje:
Dane o tra sa ch d la lotniska
IDJLotniska lD_Firmy lD_Trasy ID_Klasy_Micjsca ID_Czasu Liczba_Pasażcrów Uczba_Nieobstużonych
Dane z po szczeg ó ln y ch lotnisk b ęd ą agregatyzow ane innej przestrzeni za p o m o c ą krotek o strukturze:
D ane_o_trasach_dla J i r m y J o tn i c z e j
n a szczeb lu firm y i przen o szo n e do
ID_Firmy | ID_Trasy | ID_Klasy_Miejsca | ID_Czasu | Łączna_Liczba_Pasażcrów | Łączna_Liczba_Nieobstużonych
O prócz k ro tek ładow anych do przestrzeni okresow o, w ykorzystyw ane b ę d ą rów nież krotki p o jaw iające się tylko w tedy, kiedy określone in fo rm acje zaw arte w bazie danych uległy zmianie. K rotki te, w p ro w ad zan e na szczeblu firm y, b ę d ą m iały n a stęp u jącą strukturę:
D ane_o_cenach_biletów
lD_Firmy I ID_Trasy ID_Klasy_Miejsca ID_Rodzaju_Bilclu ID_Czasu Cena
Trasy
| ID_Trasy | M iejscc_Startu Micjscc_Lądowania
Klasy_miejsc
| ID_Klasy_Miejsca | Nazwa_Klasy_Miejsca |
Rodzaje_biletów
| ID_Rodzaju_Biletu Nazwa_Rodzaju_Biletu
Przew idyw aną liczbę krotek, które pojaw iać się b ę d ą podczas procesu okresow ego ładowania h urtow ni, o k re ś la ją w zory:
- dla krotek D a n e _ o _ tra sa c h _ d la J o tn isk a : K* N * liczb a_ tras * liczba_klas_m iejsc,
~ dla krotek D a n e_ o _ tra sa ch _ d la J ir m y J o tn ic z e j:
K * liczb a_ tras * liczba_klas_m iejsc,
gdzie sym bole N o raz K o zn aczają odpow iednio liczbę lotnisk i firm lotniczych.
Z agadnienie z asilan ia hurtow ni d la korporacji b iu r przed staw ia się analogicznie, z tą różnicą, że zm ian y p rzen o szo n e s ą kw artalnie. K rotki przen o szące zm ian y okreso w o m ają następującą postać:
Dane_o_projektach
[ ID_Biura ID_Czasu lD _Zakresu_Prac 1 ID_Branży Liczba_Godzin 1 Liczba_Projckt6w |
Dane_oJnwestycjach
[ ID_Biura ID_Czasu ID_Inwcslycji Kwota_Inwcstycji Kwota_Ulgi_Podatkowej
220 K . H arężlak , H . Josiński
N ato m iast kro tk i tw o rzo n e w odpow iedzi na w ybrane zm ian y danych w bazie zawierają następ u jące inform acje:
D ane o klientach
ID_Biura ID_Zakrcsu_Prac ID_Czasu ID_Branży ID_Klienta Kwota
D a n e_ o _ sta w ka ch _ g o d zin o w ych
| ID_Biura ID_Zakresu_Prac | lD_Czasu 1 Stawka_Godzinowa
B ranża _p ro jektu
1 ID_Branźy Nazwa_Bran2y 1
Z a k r e s jp r a c
1 ID_Zakrcsu_Prac Nazwa_Zakre su_Prac Kategoria_Zakresu_Prac
Inw estycje
i ¡D_lnwcstycji Nazwa_Inwestycji B ranżajnw cstycji
K lien ci
ID_Klienta Nazwa_Klicnta I Miasto I Region I Kraj I Kontynent
L iczebności krotek w prow adzanych do przestrzeni w p ro cesie o k reso w eg o uaktualniania hurtow ni w yrażone s ą przez następujące w zory:
- dla krotek D a n e _ o jp r o je k ta c h :
N * iiczb a_ zak resó w _ p rac * liczba_branż, - dla krotek D a n e _ o J n w e s ty c ja c h \
N * lic z b a jn w e s ty c ji,
g dzie sym bol N rep rezen tu je liczbę b iu r należących do korporacji.
6. Elementy eksperymentalnego systemu zarządzania rozproszoną bazą danych odpowiedzialne za obsługę hurtowni danych
K olejnym etap em prac zw iązanych z b u d o w ą hurtow ni je s t p ro jek t elem en tó w systemu eksperym entalnego, które o d pow iedzialne b ę d ą za je j zasilan ie, o k reślen ie ich funkcji oraz opracow anie d la nich p rotokołu w ym iany inform acji. P ro to k ó ł ten p o w in ien definiować stan d ard form atu i stru k tu ry transferow anych danych, znaczenie ich zaw arto ści, sekwencję o raz synchronizację w ysyłanych i otrzym yw anych k o m u n ik ató w , ja k ró w n ież definicję błęd ó w i zasad p o stęp o w an ia w chw ili ich w ystąpienia. N azw y oraz o gólnie nakreślone zadania now ych elem en tó w system u eksperym entalnego zg o d n e s ą z a rc h ite k tu rą systemu z h u rto w n ią dan y ch o p is a n ą w [4], N ato m iast środow isko pracy sy stem u eksperymentalnego n arzu ca o k re ślo n ą tech n ik ę w ym iany inform acji m iędzy elem entam i.
P o n ad to an aliza schem atów ideow ych rozproszonych b az danych w ykazuje, że ro zb u d o w a sy stem u eksperym entalnego b ę d z ie przebiegać inaczej w k ażd y m z badanych
Hurtownia danych dla rozproszonej b azy danych 221
przypadków. Jest to sp ow odow ane istnieniem d odatkow ego pozio m u scalającego d la firm lotniczych (rys. 5).
Inform acje z system ów obsługi bieżącej obsługujących p o szczeg ó ln e lotniska będą przekazywane do przestrzeni krotek (oznaczonej na rysunku 5 sy m b o lem 'A') za p o m o cą modułu konw ertera. P rogram ten będzie okresow o przeszukiw ał lo k aln ą bazę danych w celu wykrycia zm ian, które zaszły w bazie od je g o ostatniego uruchom ienia. P o d sta w ą do w yboru rekordów b ędzie czas w ylotu sam olotu. Inform acje o w szystkich odpraw ionych w tym okresie lotach sta n o w ią dane, które po w stępnej konw ersji i zag regatyzow aniu - w yznaczeniu liczby pasażerów , korzystających z danej trasy, oraz liczby osób, które nie zo stały obsłużone z powodu braku m iejsc - um ieszczone z o sta n ą w przestrzeni krotek A. W kolejnym kroku moduł m onitora, k tóry zap ew n ia łączność m iędzy p rzestrzeniam i A i B, pob iera te informacje, ag regatyzuje je w zględem firm y lotniczej i w prow adza do przestrzeni B. S tam tąd przez m oduł integratora z o sta n ą p rzeniesione do hurtow ni danych.
Na p o zio m ie scalającym dane o je d n e j firm ie, do przestrzeni kro tek B w prow adzane będą także krotki z danym i, które tw orzone b ę d ą w odpow iedzi n a w ybrane zm iany danych w bazie. W tym p rzypadku w ykorzystane z o sta n ą m echanizm y aktyw nych baz danych zaim plem entow ane w system ach obsługi bieżącej. Jeżeli b ęd zie w ym agała tego sytuacja, dane te z o sta n ą p rzek o n w erto w an e na je d n o litą postać przez program integratora.
Funkcje p oszczególnych m odułów uczestniczących w procesie ład o w an ia hurtow ni zdefiniowano następująco:
Konwerter:
- przeszukanie lokalnej bazy danych w celu znalezienia rekordów zaw ierających inform acje o lotach o dpraw ionych od m o m en tu p oprzedniego uru ch o m ien ia program u konw ertera, - zagregatyzow anie otrzym anych inform acji,
- zapis odpow iedniej inform acji w sw oim logu i w p ro w ad zen ie danych p rzeznaczonych dla m onitora do przestrzeni krotek A,
- ponow ienie zapytania do bazy danych po upływ ie o k reślonego czasu lub jeśli doba dobiegła końca, u m ieszczenie w przestrzeni A inform acji o liczebności krotek z danym i;
ze w zględu n a specyfikę operacji odczytu krotki z przestrzeni inform acja ta um ożliw ia m onitorow i p o b ran ie w szystkich w łaściw ych krotek,
~ oczekiw anie na p o tw ierd zen ie ze strony m onitora o pobraniu krotek dla niego przeznaczonych.
Monitor:
odbiór krotek w p row adzonych do przestrzeni A przez konw ertery, zagregatyzow anie inform acji zaw artych w tych krotkach,
222 K. H arężlak , H . Josiński
In teg rato r
M onitor.
K lient poziom u lokalnego
K lient pozio m u lokalnego
K o n w erter K onw erter
K o n w erter
Konwerter
K lient R BD
M o n ito r ■
dodatkow y szczebel scalający H u rto w n ia danych
- zap is odpow iedniej info rm acji w sw oim logu i w prow adzenie danych przeznaczonych dla in teg rato ra do przestrzeni krotek B,
- um ieszczen ie w przestrzen i B inform acji o liczebności krotek z danym i,
- o czek iw an ie na p o tw ierd zen ie ze strony integratora o pobraniu przeznaczonych dla niego krotek.
R ys. 5. S ch em at ideow y rozproszonej bazy danych dla linii lotniczych
z u w zględnieniem elem entów odpow iedzialnych za zasilan ie hurtow ni danych Fig. 5. T h e d istrib u ted d atabase schem a fo r airlines in clu d in g elem en ts responsible
fo r a d ata w arehouse loading
Integrator:
- zeb ran ie krotek um ieszczonych w przestrzeni B przez m onitory, - w ykonanie niezbędnych o b liczeń agregatyzujących,
- u ak tu aln ien ie zaw artości hurtow ni danych.
Hurtownia danych d la rozproszonej bazy danych 223
H u rto w n ia danych
Integrator
M o n ito r M o n ito r
K lient R BD
Rys. 6. S ch em at id eo w y rozproszonej b azy danych dla korporacji b iur pro jek to w y ch z u w zględnieniem elem entów odpo w ied zialn y ch za zasilan ie hurtow ni danych
Fig. 6. T h e d istrib u ted database schem a fo r a co rp o ratio n o f design offices in clu d in g elem ents responsible fo r a data w areh o u se loading
Aby zap ew n ić p o p ra w n ą pracę system u eksperym entalnego w zak resie obsługi hurtow ni danych d la korporacji b iu r projektow ych, w ystarczy ro zb u d o w ać sy stem o d w a m oduły - monitor oraz in teg rato r (rys. 6). P rogram m onitora będzie, z c z ę sto tliw o śc ią kw artalną, wysyłać zapytanie d o bazy danych system u O L T P w celu o d n alez ien ia rekordów opisujących tematy w ykonyw ane w tym okresie. Inform acja ta zaw arta je s t w co tygodniow ym rozliczeniu każdego p raco w n ik a, ja k ró w n ież w tabeli opisującej p ro w ad zo n e projekty. Pobrane informacje m u s z ą ulec p rzetw o rzen iu polegającem u n a z su m o w an iu godzin spędzonych przez pracow ników nad danym tem atem z u w zględnieniem je g o b ran ż o raz zakresu robót. D o zadań m onitora należy ró w n ież k onw ersja danych na p o stać w y m ag an ą w h urtow ni danych.
Tak przygotow ane d an e p rzek azan e z o stan ą do przestrzeni krotek, skąd p rogram integratora przeniesie j e do h u rtow ni. R ó żn ica w pracy integratora, w sto sunku do przypadku hurtow ni dla linii lotniczych, polegać będzie na tym , że w celu u zy sk an ia p ełn eg o obrazu zm ian zachodzących w e w szystkich biurach należących do korp o racji, b ęd zie on m u siał łączyć się z przestrzenią krotek, z k tó rą b ezp o śred n io w sp ó łp racu ją p o szczeg ó ln e b iu ra projektow e.
224 K. H arężlak, H. Josiński
7. W nioski
Prak ty czn a realizacja projektu m oże w ykazać o graniczenie objętości przestrzeni krotek dla zapro p o n o w an eg o w pracy sposobu je j w ykorzystania. D lateg o brane je s t pod uwagę ró w n ież inne ro zw iązan ie - użycie plików delta w celu g ro m ad zen ia zm ian zachodzących w danych należących do system ów obsługi bieżącej, z w ykorzystaniem przestrzeni krotek jed y n ie do przesyłania inform acji kontrolnych o lokalizacji plików delta.
P ro jek tu jąc h urtow nię danych, należy w ziąć p od uw agę sytuacje, w których m oże dojść do zakłóceń kom unikacyjnych pom iędzy m odułam i, ja k ró w n ież do aw arii sam ych modułów.
Z a b ezp ieczen ia ch ro n iące p rzed tym i zjaw iskam i obejm ują: w ykorzystanie mechanizmu transakcji w przestrzeni krotek, regularne tw orzenie kopii przestrzen i, p row adzenie logów o raz system po tw ierd zeń o odebraniu przesyłanych danych ujęty w protokół wymiany inform acji.
L IT E R A T U R A
1. Inm on W .H .: B uilding the D ata W arehouse. W iley C om puter P ublishing, 1996.
2. P oe V ., K lau er P., B robst S.: T w orzenie hurtow ni danych. W N T, W arszaw a 2000.
3. W rem bel R.: D ane hurtow o. Inform atyka 10/98.
4. K oszlajda T.: T echnologia M agazynów D anych. T rzecia K onferencja PL O U G , Zakopane 1997.
5. M atysiak M .: Technologia O LA P. T rzecia K onferencja PL O U G , Z akopane 1997.
6. Irek P., K m onk J., P ierzchała D.: B udow a hurtowni danych i aplikacji analitycznych na przykładzie narzędzi SA S i O racle. ZN Pol. SI. s. Inform atyka z. 37, G liw ice 1999.
7. B ajerski P., Josiński H., Stąpor K.: Zastosow anie system u P aradise do tw orzenia systemu zarządzania ro zp ro szo n ą b a z ą danych. 224 Pol. Śl. s. Inform atyka z. 30, G liw ice 1996.
8. C hłopek M ., H arężlak K „ Josiński H.: Im plem entacja podstaw ow ych mechanizmów zarządzania ro zp ro szo n ą b a z ą danych w eksperym entalnym system ie wykorzystującym m odel w irtualnie w spółdzielonej pam ięci. Z N Pol. Śl. s. Inform atyka z. 32, G liw ice 1997.
9. C hłopek M ., H arężlak K ., Josiński H.: S terow anie współbieżnymi dostępem do danych podczas realizacji transakcji rozproszonych - rozw ój eksperym entalnego systemu rozproszonej bazy danych. ZN Pol. Śl. s. Inform atyka z. 34, G liw ice 1998.
10. Paradise U se r’s G uide and R eference M anual, Scientific C om puting A ssociates, 1995.
Hurtownia danych d la rozproszonej bazy danych 225
R ecenzent: D r hab. inż. S tanisław W ołek
Wpłynęło do R edakcji 16 m arca 2001 r.
A bstract
The article p resen ts analysis o f the virtual shared m em ory usage as a m ean of com m unication betw een a data w arehouse and O L T P system s, w hich are based on distributed databases. T w o o rganisations serving as an exam ple are taken in to consideration:
a corporation o f design offices an d a set o f airlines. T h e d istrib u ted d atab a se schem as for organisations co n sid ered in the article are show n in Figures 1 and 2 respectively. T he data warehouse sch em as fo r both o f them are d ep icted in F igures 3 and 4. T h ere are also defined new elem ents o f the ex p erim en tal d istributed database m an ag em en t system an d their functions resu ltin g from the research. T h e structure o f tuples tran sferrin g info rm atio n am ong the new co m p o n en ts is also described. F igures 5 and 6 show the d istrib u ted d atab ase schem as for organisations co n sid ered in the article including elem ents resp o n sib le fo r a data warehouse loading. T w o strategies o f a data w arehouse load in g are taken into consideration:
a periodic an d an e v e n t-d riv e n one.