Rozdział monografii: 'Bazy Danych: Nowe Technologie', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2007 Rozdział 9 w Definiowanie schematów rozszerzonej gwiazdy kaskadowej w da .b w Streszczenie. W rozdziale przedstawiono kilka nowych aspektów modelowania przestrzennych hurtowni danych. Zdefiniowano schemat rozszerzonej gwiazdy kaskadowej na potrzeby systemu przestrzennych hurtowni danych telemetrycznych SDW(t). Wykazano istnie silnej potrzeby budowania wielu schematów rozszerzonej gwiazdy kaskadowej SDW jako wynik odrębnego definiowania przestrzenno-temporalnych modeli pojęciowych. 1 Wprowadzenie 2 Schemat gwiazdy kaskadowej pl s. Modelowanie schematów logicznych na potrzeby przestrzennej hurtowni danych (ang. Spatial Data Warehouse_SDW) determinuje cecha hiperwymiarowości danych i wielotematyczności opisywanych procesów [1], [2]. Tradycyjne struktury logicznych modeli OLAP tj.: schemat gwiazdy, schemat płatka śniegu lub schemat konstelacji faktów nie są odpowiednie do modelowania tego typu danych. Te schematy nadają się do reprezentacji danych zorientowanych jednoprocesowo, a skojarzone operacje OLAP-owe mogą być wykonywane odpowiednio wzdłuż hierarchii wymiarów. I tak schemat gwiazdy czy płatka śniegu przedstawiając pojedynczy proces (temat) powoduje, że złożone zapytanie do SDW odnoszące się do wielu równoczesnych procesów opisanych różnymi poziomami wymiarów musi zostać zdefiniowane jako kilka odrębnych zapytań, których wyniki łączy użytkownik. W pracy [3] zaprezentowano nowy, sformalizowany logiczny model ROLAP, nazywany gwiazdą kaskadową (ang. Cascaded Star), który pozwala modelować hiperwymiarowe dane i wielotematyczne procesy wspomagania podejmowania decyzji. Gwiazda kaskadowa SC charakteryzuje się tym, że niektóre jej wymiary tworzą odrębne, zagnieżdżone schematy pojedynczej gwiazdy lub gwiazdy kaskadowej. Strukturę gwiazdy kaskadowej SC zamieszczono na rys. 1. Centralna tablica faktów T gwiazdy kaskadowej SC łączy wymiary ze sobą, gromadząc ich klucze główne, a także centralne fakty. Wymiary gwiazdy kaskadowej a, b, c, d, e mogą być albo wymiarami płaskimi, albo wymiarami kasMarcin Gorawski, Politechnika Śląska, Instytut Informatyki, ul. Akademicka 16, 44-100 Gliwice, Polska email:[email protected] (c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2007 Rozdział monografii: 'Bazy Danych: Nowe Technologie', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2007 M. Gorawski kadowymi (podgwiazdy) b, c, d, e. Główne tablice wymiarów kaskadowych przechowują fakty wymiaru oraz klucze główne tablic podwymiarów. T jest gwiazdą-rodzicem dla podgwiazd b, c, d, e. a c T b e w d f g Rys. 1. Schemat gwiazdy kaskadowej SC z centralną tabelą faktów T w Definicja 1. [3] Gwiazdę kaskadową definiujemy jako SC = (SS, DC, TC), gdzie: da .b w 1) SS jest zbiorem gwiazd, takich, że Si ∈ SS jest albo schematem pojedynczej gwiazdy S1 albo schematem gwiazdy kaskadowej SC. 2) DC jest zbiorem tablic wymiarów SC, gdzie każda tablica wymiarów Di ∈ DC zawiera [Ai, PKi]. Ai jest zbiorem atrybutów Di, a PKi jest kluczem głównym wymiaru Di. 3) TC = [V,SKD,PKD] jest tablicą faktów gwiazdy kaskadowej. V jest zbiorem centralnych pomiarów. SKD = {SKi} jest kluczem gwiazdy Si | Si ∈ SS, a PKD = {PKi} jest kluczem głównym {Di | Di ∈ DC}. W przypadku gwiazdy kaskadowej SC = (SS, DC, TC), każda gwiazda (kaskadowa lub pojedyncza) Si ∈ SS nazywana jest podgwiazdą gwiazdy SC. Poprzez rekurencyjne definiowanie podgwiazd osiąga się najniższy poziom wymiarów, który jest tworzony przez pojedyncze gwiazdy S1. Schemat gwiazdy kaskadowej, zgodnie z definicją 1 dopuszcza istnienie tylko wymiarów płaskich oraz wymiarów kaskadowych. W odróżnieniu od schematu pojedynczej gwiazdy, klucz podstawowy dla podgwiazdy w obrębie schematu gwiazdy kaskadowej nie wywodzi się bezpośrednio z połączenia podstawowych kluczy jego podwymiarów, ale jest kluczem tej gwiazdy. pl s. Definicja 2. [3] Klucz gwiazdy SKi dla gwiazdy Si definiuje się jako SKi = g(PKD) i służy jako podstawowy klucz Si, gdzie: 1) PKD = {PK1,…, PKn} jest zbiorem kluczy głównych dla podgwiazd {S1,… , Sk} i pojedynczym wymiarem dla Si, oraz 2) g jest funkcją, która, przyjmując jako argument zbiór PKD generuje unikalne wartości SKi. Dzięki zastosowaniu funkcji g możliwe jest wygenerowanie unikalnego klucza SKi, który reprezentuje pomiar w tablicy faktów wymiaru kaskadowego. Niestety autorzy [3] nie przedstawiają sposobu definiowania różnowartościowej funkcji g. Wadą takiego podejścia jest konieczność zdefiniowana funkcji g dla każdego z wymiarów kaskadowych, ponieważ funkcja będzie przyjmowała różną liczbę argumentów (różna liczba wymiarów tworzących wymiar kaskadowy). W znakomitej większości przypadków kluczami głównymi są kolumny typów numerycznych. Jednak czasami stosowane jest podejście, w którym kluczem głównym jest kolumna typu np. stempla czasowego (ang. timestamp). Wtedy złożoność funkcji g znacznie rośnie. Zastosowanie funkcji g w celu generacji klucza gwiazdy pociąga za sobą obliczenia jej wartości. Jeśli złożoność funkcji g będzie duża, wtedy wielokrotne obliczanie jej wartości może mieć duży wpływ na czas trwania procesu ETL – ładującego dane do SDW. W pracy [3] zdefiniowano także dwie dodatkowe wielkości pozwalające określić rozmiar gwiazdy kaskadowej. 104 (c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2007 Rozdział monografii: 'Bazy Danych: Nowe Technologie', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2007 Definiowanie schematów rozszerzonej gwiazdy kaskadowej w Definicja 3. [3] Poziomem zagłębienia podgwiazdy Si od centralnej gwiazdy kaskadowej SC definiujemy jako odległość M(Si) taką, że: 1) Niech Scentral będzie centralną tabelą faktów w centralnym schemacie gwiazdy kaskadowej SC. Wtedy M(Scentral) = 0; 2) Dla każdej podgwiazdy Si | Si ∈ SS mamy M(Si) = 1. Maksymalny poziomem zagłębienia podgwiazd Si w gwieździe kaskadowej SC określa m(SC) = max { M(Si)}. Dla przykładu gwiazdy kaskadowej przedstawionej na rysunku 1 wartości wielkości M oraz m wynoszą odpowiednio: M(T) = 0, M(b) = M(c) = M(d) = M(e) = 1, M(g) = M(f) =2. Maksymalny poziom zagłębienia m(SC) = 2. W pracy [3] zaproponowano także kaskadowe operacje OLAP-owe (COLAP-owe) umożliwiające wykonywanie doraźnych zapytań (ad-hoc) obejmujących gwiazdę kaskadową. W szczególności COLAP-owe operacje obejmują kaskadowe zwijanie (ang. cascaderoll-up), kaskadowe rozwijanie (ang. cascade-drill-down), kaskadowe obcięcie (ang. Cascade-slice), kaskadowe krojenie (ang. cascade-dice) oraz MCUBE. Pokazano także, że operacje COLAP mogą zostać zaprezentowane za pomocą relacyjnej algebry, w celu zademonstrowania, że kaskadowa gwiazda może zostać zbudowana w oparciu o tra-dycyjny schemat gwiazdy. Proponowana definicja 1 schematu gwiazdy kaskadowej nie jest wystarczająca dla naszych wymagań i potrzeb projektowych systemów przestrzennych hurtowni danych telemetrycznych SDW (t) [2]. da .b w w 3 System przestrzennych hurtowni danych telemetrycznych SDW(t) 3.1 Opis ogólny Decyzyjny System Zintegrowanego Odczytu Liczników Mediów (DSSM) odczytuje i steruje licznikami, integruje i intensywnie analizuje dane telemetryczne o zużyciu mediów (gazu, prądu, wody, ciepła) dla osiągnięcia celów strategicznych (rys. 1) [2], [4]. w ę z e ł z b io rc z y p rąd gaz w oda S erw ery t e le m e t r y c z n e T C P /IP pl s. O b ie k ty te le m e try c z n e S IL N I K R O L A P ETL DB S D W (t) S y ste m A M R in d e k s o w a n ie a g re g o w a n ie a n a li z a d a n y c h d a t a m in in g ra p o rto w a n ie S y ste m S D W (t) Rys. 1. Dwuwarstwowa architektura systemu DSSM Rozwiązaniem jest dwuwarstwowa infrastruktura telemetryczna, którą tworzy: (a) telemetryczny system zintegrowanego odczytu liczników (AMR) oraz (b) system przestrzennej hurtowni danych telemetrycznych (SDW(t)). Telemetryczny system zintegrowanego odczytu liczników (AMR) bazuje na technologii AMR (ang. Automated Meter Reading) oraz 105 (c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2007 Rozdział monografii: 'Bazy Danych: Nowe Technologie', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2007 M. Gorawski w GSM/GPRS. Jego komponenty to inteligentne liczniki mediów, węzły zbiorcze oraz serwery telemetryczne. System ten pozwala przesyłać dane z liczników zużycia mediów zlokalizowanych na dużym obszarze geograficznym do serwera telemetrycznego z wykorzystaniem sieci telefonii komórkowej GSM w technologii GPRS. Liczniki są w stanie przesyłać swoje pomiary z zadaną częstotliwością. Węzły zbiorcze odbierają pomiary przesyłane przez daną grupę liczników. Pomiary nie są w nich przechowywane, ale za pomocą standardowej sieci komputerowej przekazywane do serwerów telemetrycznych. Drugą warstwą stanowi system przestrzennej hurtowni danych telemetrycznych (ang. Spatial Telemetric Data Warehouse – SDW(t)). Dane przechowywane w serwerach telemetrycznych są pobierane przez proces ETL, transformowane, czyszczone i ładowane do bazy danych SDW(t). Proces ETL może także, w miarę potrzeb wykonywać inne operacje na danych, np. wstępne liczenie agregatów. Po załadowaniu danych możliwe jest przeprowadzenie eksploracji danych mających na celu wydobycie z danych niejawnej wiedzy. SDW(t) jest systemem wspomagania podejmowania decyzji taktycznych o wielkości produkcji medium na podstawie krótkoterminowych prognoz ich zużycia. w w 3.2 Logiczne modele SDW(t) da .b Na podstawie analizy dziedziny danych telemetrycznych generowanych przez system AMR i określeniu wymagań dotyczących modelu danych SDW(t) podjęto decyzję o zastosowaniu zmodyfikowanego schematu gwiazdy kaskadowej. Zaprojektowano kilka, znacznie różniących się od siebie, zmodyfikowanych schematów gwiazdy kaskadowej. 3.2.1 Schemat gwiazdy kaskadowej SC(SDW(t)) zorientowanej na pomiar Schemat gwiazdy kaskadowej SC(SDW(t)) z centralną tablicą faktów INSTALLATION składa się z centralnej tabeli faktów INSTALLATION oraz pięciu wymiarów: NODE, METER, WEATHER, MEASURE i MAP (rys. 2) [2], [4]. Wymiary te przechowują dane na temat (odpowiednio) węzłów i liczników wraz z ich atrybutami, warunków pogodowych panujących danego dnia w obszarze węzła, pomiarów odczytanych z liczników oraz map terenu. Odrębne tablice podwymiarowe wymiarów głównych przechowują atrybuty związane z czasem, lokalizacją przestrzenną oraz atrybuty inne. R E G IO N pl s. M A P D IM E N S IO N M E T E R D A T E T IM E D IM E N S IO N M E T E R D A T E M A P A T T R IB U T E S G R O U P _ O F _ R E A D IN G A T T R IB U T E S M E A S U A R E IN S T A L L A T IO N C E N T R A L F A C T T A B L E L O C A L IZ A T IO N IN S T A L L N O D E D IM E N S IO N A T T R IB U T E S N O D E L O C A L IZ A T IO N IN S T A L L _ D A T E D A T E W E A T H E R S U B D IM E N S IO N W E A T H E R A T T R IB U T E S D A T E Rys. 2. Schemat gwiazdy kaskadowej SC(SDW(t)) zorientowanej na pomiar 106 (c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2007 Rozdział monografii: 'Bazy Danych: Nowe Technologie', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2007 Definiowanie schematów rozszerzonej gwiazdy kaskadowej w 3.2.2 Schemat gwiazdy kaskadowej SC(SDW(t)) zorientowanej na stacjonarne usługi serwisu Innym przykładem jest gwiazda kaskadowa SC(SDW(t)) zaprojektowana do świadczenia zoptymalizowanych stacjonarnych usług harmonogramowania serwisu [5]. Centralną tabelą faktów gwiazdy kaskadowej SC(SDW(t)) zorientowanej na usługi serwisu jest tabela NODE (rys. 3). Tabelami wymiarów, opisującymi koncentrator, są tabele poszczególnych rodzajów koncentratorów (XX_CONCENTRATOR, XX-{GAS, WATER, ENERGY}) wraz z atrybutami oraz tabela krawędzi (MAP_EDGE), na której znajduje się dana jednostka. Każda krawędź jest opisana przez dwa tworzące ją wierzchołki (Point Start oraz Point End). Tabelą wymiarów tabeli krawędzi są zatem 2 tabele wierzchołków (POINT_START, POINT_END). w M A P D IM E N S IO N P O IN T _ S T A R T M A P_E G D E P O IN T _ E N D w NODE CENTRAL FACT TABLE GAS CONCENTRATOR GAS M ETER W ATER CONCENTRATOR ENERGY CONCENTRATOR ENERGY M ETER W ATER M ETER da .b G A S L O C A T IO N E N E R G Y L O C A T IO N W A T E R L O C A T IO N Rys. 3. Schemat gwiazdy kaskadowej SC(SDW(t)) zorientowanej na stacjonarne usługi serwisu Tabele poszczególnych koncentratorów są tabelami faktów dla tabel pojedynczych liczników i tabeli położenia koncentratora (XX_LOCATION). M A P D IM E N S IO N R E G IO N pl s. 3.2.3 Schemat wielowersyjnej gwiazdy kaskadowej SC(SDW(t)) zorientowanej na pomiar Wielowersyjność schematu SC(SDW(t)) zapewniają dwie tabele o nazwach SV_START i SV_END (rys.4). Przechowują one dane na temat przedziałów ważności struktur. Tabele te są współdzielone przez wymiary NODES i COUNTERS, tym sposobem staje się możliwe ustalanie przedziałów ważności dla węzłów i liczników. T IM E M E T E R D IM E N S IO N DATE M ETER DATE M AP A T T R IB U T E S G R O U P _O F _ R E A D IN G M ESAURE SV _STA R T CENTRAL FACT TABLE N O D E D IM E N S IO N A T T R IB U T E S DATE L O C A L IZ A T IO N SV _EN D W E A T H E R S U B D IM E N S IO N L O C A L IZ A T IO N W EATHER IN S T A L L _ D A T E A T T R IB U T E S IN S T A L L IN S T A L L A T IO N NODE A T T R IB U T E S DATE Rys. 4. Schemat wielowersyjnej gwiazdy kaskadowej SC(SDW(t)) zorientowanej na pomiar 107 (c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2007 Rozdział monografii: 'Bazy Danych: Nowe Technologie', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2007 M. Gorawski Fakt współdzielenia tych tabel przez dwa wymiary przekształca schemat gwiazdy kaskadowej w schemat konstelacji faktów, w którym uwzględnia się współdzielenie pewnych tabel przez kilka wymiarów, podobnie jak w omawianym modelu. Szczegóły opisu tego schematu można znaleźć w pracy [6]. w 3.2.4 Schemat gwiazdy kaskadowej SC(SDW(t)) współdzielącej wymiary Schemat z rys. 3 rozszerzono o pojedynczą gwiazdę CONSERVATOR [7]. Dla przechowywania danych na temat obiektów mobilnych została stworzona tabela konserwatorów (CONSERVATOR). Jest ona tabelą wymiarów dla głównej tabeli faktów i współdzieli wymiary dla tabeli gwiazd pojedynczych XX_CONCENTRATOR. M AP DIM ENSIO N M A P_EG DE PO INT_ EN D CO NSER VA TOR N O DE w w PO INT_ STA RT CEN TRA L FA CT TABL E GA S CO NC EN TR AT O R G AS M ET ER W AT ER CO NC EN TR AT O R W ATER M ETER EN ERG Y CO N CE NT R AT O R ENERGY M ETER da .b G AS LO CATIO N W ATER LO CATIO N ENERG Y LO CATIO N Rys. 5. Schemat współdzielenia wymiarów gwiazdy kaskadowej SC(SDW(t)) zorientowanej na mobilne usługi serwisu Analiza prezentowanych schematów zmodyfikowanej gwiazdy kaskadowej pokazuje, że definicja 1 gwiazdy kaskadowej nie obejmuje tak rozbudowanych struktur danych. Stąd autor podjął próbę zdefiniowania nowego schematu nazwanego rozszerzoną gwiazdą kaskadową (ang. Extended Cascaded Star) 4.1 Wiadomości wstępne pl s. 4 Formalizacja schematu rozszerzonej gwiazdy kaskadowej Definicja 1 bazuje na pojęciu pojedynczej gwiazdy jako kostki S1 (ang. Single Star Cube). W pracy [3] zdefiniowano nieprawidłowo to pojęcie poprzez: (a) niejednoznaczność nazewnictwa (ang. cube) i użytych pojęć (ang. dimension tables, fact table), (b) brak kompletności pojęciowej schematu – nie uwzględnienie wpływu granulacji danych. W nowej definicji 4 schematu pojedynczej gwiazdy (ang. single star schema) wyeliminowano te braki formalne. Schemat gwiazdy odwzorowuje obiekty modelu pojęciowego w model logiczny, w następujący sposób: 1) obiekty przechowujące fakty są zapisywane w postaci tablic faktów (tablic bazowych) (ang. fact tables, (base tables)), 2) wymiary i ich atrybuty są zapisywane w postaci nieznormalizowanych tablic wymiarów, po jednej tablicy na każdy wymiar ( ang. lookup tables ), 3) w schemacie występuje minimalna liczba połączeń pomiędzy tablicami. 108 (c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2007 Rozdział monografii: 'Bazy Danych: Nowe Technologie', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2007 Definiowanie schematów rozszerzonej gwiazdy kaskadowej w Definicja 4. Pojedyncza gwiazda Schemat pojedynczej gwiazdy określamy jako SS = (D, F), gdzie: 1) D jest zbiorem tablic wymiarów płaskich Di. Każda tablica wymiaru Di ∈ D zawiera [Ai, IKi, Gi] gdzie: − Ai jest zbiorem atrybutów Di, − IKi jest sztucznym, numerycznym kluczem identyfikującym wymiar Di, − Gi jest zbiorem poziomów granulacji danych wymiaru Di . 2) F = [VS, PKS, GS] jest tablicą faktów, gdzie: − PKS jest kluczem głównym SS, PKS = {IKi}, gdzie IKi jest kluczem identyfikującym Di | Di ∈ D, − VS jest zbiorem faktów, VS = f(GS), gdzie f jest funkcją, która przyjmując jako argument zbiór wskazanych poziomów granulacji GS | GS ∈ {Gi} generuje wartości faktów numerycznych VS. Schemat pojedynczej gwiazdy znacznie komplikuje się w przypadku stosowania agregacji danych opartej o użycie pola granulacja GS, ponieważ: 1) tablica faktów jest słabo skalowalna - przechowuje wszystkie agregaty, 2) poziom agregacji danych jest znany tylko poprzez połączenie z wszystkimi tablicami wymiarów i analizę wartości pól granulacja, 3) aplikacje analityczne są bardziej złożone - porządkują fakty należące do odpowiedniego poziomu agregacji w celu uniknięcia efektu podwójnego zliczania. W pracy [8] przeanalizowano poszczególne typy schematów gwiazdy z pojedynczą tablicą faktów uzupełnionym polem wskazującym poziom agregacji. Wymienione wyżej wady schematu gwiazdy można wyeliminować przez użycie jako logicznego modelu ROLAP, schematu płatka śniegu (ang. snowflake). Zasadniczą zmianą, którą wprowadzono w schemacie płatka śniegu jest: 1) odejście od pełnej denormalizacji tablic wymiarów w kierunku ich normalizacji – jawne ukazanie rzeczywistej, hierarchicznej struktury wymiarów, 2) tablice faktów przechowują tylko jeden poziom agregacji, 3) obsługa relacji zachodzących między atrybutami tego samego wymiaru o krotności 1:1, 1:N, N:1, a zwłaszcza relacji N: M. W zależności od stopnia znormalizowania tablic wymiarów można wyróżnić cztery typy schematów płatka śniegu – ich szczegółowa analiza znajduje się w pracy [8]. da .b w w H 1 2 H h h H 4 1 h 1 0 F 1 1 H 2 Rys. 6. Logiczny schemat płatka śniegu 3 3 0 pl s. h h r 3 0 - h 3 1 H 3 /3 1 3 2 Hierarchia wymiarów w schemacie płatka śniegu jest jasno reprezentowana poprzez tablice wymiarów znormalizowanych (tablice H1, H3 z rys.3), z których dane i relacje rozdzielone zostały na dodatkowe tablice (tablice {h10, h11, h12}∈ H1, {h30, h31, h32, tablica relacji r30_H3/31)}∈H3). Między atrybutami wchodzącymi w skład danego wymiaru Hi w schemacie płatka śniegu zachodzą pewne relacje, które wyznaczają logiczne połączenia atrybutów w ramach jednego wymiaru, są przechodnie w ramach hierarchii i mają swoją krotność (1:1, 1:N, N:1, N: M ). 109 (c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2007 Rozdział monografii: 'Bazy Danych: Nowe Technologie', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2007 M. Gorawski w Definicja 5. Płatek śniegu Schemat płatka śniegu jest określany jako SSF = (H, R, F), gdzie: 1) H jest zbiorem wymiarów hierarchicznych, gdzie dla relacji R typu: a) {1:1,1:N, N:1} każdy wymiar hierarchiczny Hi ∈ H ma określony stopień Li, definiowany jako liczba poziomów hierarchii. Hi jest zbiorem tablic tworzących wymiar znormalizowany o liczności minimalnej Li. Tablica hjk ∈ Hi zawiera [ Ah , PK h , IK h ], gdzie: Ah jest zbiorem atrybutów hjk, PK h jest klujk jk jk jk jk czem głównym hjk, a IK h jest zbiorem kluczy obcych migrujących z tabel jk hj,2,..., h j , L . Zbiór IK h jest pusty dla tablic na najwyższym poziomie hierarchii i jk w w oraz dla hierarchii jednopoziomowych (dla wymiarów płaskich), b) {N:M} zbiór R jest zbiorem tablic relacji {rik__ Hi/ik+r } zachodzących pomiędzy atrybutami jednego wymiaru Hi | Hi ∈ H takich, że rik__ Hi/ ik+r, zawierające kombinacje identyfikatorów atrybutów tablic hjk pozostających w związku w wymiarze Hi o krotności N:M, 2) F = [VSF, PKH] jest tablicą faktów, w której VSF jest zbiorem pomiarów, a PKH jest zbiorem kluczy głównych { PK h } wymiarów Hi. i0 da .b Bieżąca analiza badań i wyników eksperymentów nad w/w schematami gwiazdy kaskadowej na potrzeby systemu DSSM zebrane w pracach [2,4,5,6,7,9] uzasadniają opracowanie nowego schematu SDW o nazwie rozszerzonej gwiazdy kaskadowej (ang. Expanded Cascaded Star_ ES {CP − t } , gdzie P- stopień schematu określany typem i rodzajem podgwiazd oraz ich wielowersyjnością, natomiast t to liczba tematów jednocześnie faktografowanych. W zależności do stopnia rozbudowy gwiazdy kaskadowej rozróżniamy kilka jej postaci: 1) rozszerzona gwiazda kaskadowa I stopnia ( ES {CI −t } ) charakteryzuje gwiazdę kaskadową uwzględniającą wyłącznie wymiary o schemacie pojedynczych gwiazd lub gwiazd kaskadowych (def. 1 i 4); 2) rozszerzona gwiazda kaskadowa II stopnia ( ES {CII −t } ) to gwiazda kaskadowa I stopnia pl s. uzupełniona co najmniej jednym wymiarem o schemacie płatka śniegu (def. 1, 4, 5). Kolejne stopnie rozbudowy traktujemy jako uogólnioną rozszerzona gwiazdę kaskadową P stopnia ( ES {CP} ) - to gwiazda kaskadowa (P-1) stopnia z nowym komponentem. 4.2 Schemat rozszerzonej gwiazdy kaskadowej II stopnia ES{CII −1} SDW(t) Najnowszy eksperymentalny logiczny model systemu SDW(t) reprezentuje schemat rozwiniętej gwiazdy kaskadowej II stopnia ES{CII−1} SDW(t) zorientowany na pomiar (rys. 7). Centralną tabelą faktów schematu ES{CII −1} SDW(t) jest tabela MEASURES. Tabela ta przecho- wuje pomiary przesyłane z liczników. Fakty w tabeli MEASURES są opisywane czterema wymiarami: − wymiary płaskie zapisywane w tablicach MEAS_CONFIDENCE oraz MEAS_ZONE. Wymiary te opisują odpowiednio: pewność pomiaru (zakłócenia podczas odczytu i przesyłu danych) oraz strefę pomiaru; − czasowy wymiar hierarchiczny, wymiar ten określa czas pomiaru; − wymiar kaskadowy określający, z którego licznika pochodzi dany pomiar, główną tabelą tego wymiaru jest METER. 110 (c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2007 Rozdział monografii: 'Bazy Danych: Nowe Technologie', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2007 Definiowanie schematów rozszerzonej gwiazdy kaskadowej w Wymiar opisujący licznik jest rozbudowanym wymiarem kaskadowym. Tabelą faktów jest tabela METER. Licznik mediów jest opisany za pomocą wymiarów różnego typu: − wymiary płaskie: model licznika METER_MODEL i jego położenie geograficzne, opis mierzonego medium; − czasowy wymiar hierarchiczny określający datę instalacji licznika H_METER_INST_DATE; − wymiary kaskadowe: wymiar klienta, wymiar węzła zbiorczego oraz wymiar czujnika gromadzącego dane pogodowe. W TH _M EA SU R E_C O N F H _ W T H _ M E T E R _ IN S T _ D A T E H _W TH _M EA SU R E_D A TE W TH _M E A SU R E w W TH _M ETER W TH _M E TE R _LO C W TH _M ETER _M O D EL M E A S _ C O N F ID E N C E M EA S_ZO N E H _ M E T E R _ IN S T _ D A T E M E TE R _M O D E L M E A SU R E M ETER _LO C H _ N O D E _ IN S T A L L _ D A T E N O D E w N O D E_M O D EL N O D E _LO C M A P_LT_LO C M A P_R B _LO C C L IE N T M ETER C L_STA TU S M A P C L_PA Y M E N T D A Y M O N TH Q U A R TER Y EA R STR E ET Q U A R TER C IT Y H _ T IM E P R O V IN C E C O U N TR Y M A P_TY PE H _M A P_E X P_D A TE H _A D D R E SS da .b Rys. 7. Schemat ES{CII−1} SDW(t) zorientowany na pomiar pl s. Kaskadowy wymiar klienta przechowuje dane dotyczące klienta, u którego został zainstalowany licznik mediów. Tabela faktów CLIENT przechowuje informacje dotyczące np. liczności rodziny klienta, (w tym liczby dzieci). Dodatkowo, klient jest scharakteryzowany za pomocą trzech wymiarów: − wymiary płaskie: wymiar statusu klienta – tabela CL_STATUS określająca status finansowy klienta (ze względu na roczny przychód i wymiar płatności – tabela CL_PAYMENT określająca sposób płatności za zużyte media; − hierarchiczny wymiar miejsca zamieszkania klienta. Wymiar ten przechowuje informacje o umiejscowieniu lokalu klienta. Kolejny wymiar kaskadowy (tabela faktów NODE) przechowuje informacje o obiektach telemetrycznych, jakimi są węzły zbiorcze odbierające pomiary przesyłane przez liczniki mediów. Podobnie jak w przypadku licznika mediów, dla węzła zbiorczego jest definiowany jego model i położenie, a także hierarchiczny wymiar określający datę jego instalacji. Węzeł zbiorczy posiada także jeden wymiar kaskadowy przechowujący informacje o mapach regionów, z których węzeł odbiera pomiary. Tabelą faktów tego podwymiaru jest MAP. Podwymiar ten jest schematem płatka śniegu. W tabeli faktów przechowywane są informacje o skali i dokładności mapy. Mapa jest dodatkowo opisywana czterema wymiarami: − wymiary płaskie: wymiary określające zasięg mapy – tabele MAP_LT_LOC oraz MAP_RB_LOC oraz wymiary opisujący typ mapy – tabela MAP_TYPE; − wymiar hierarchiczny H_MAP_EXP_DATE przechowujący informację o aktualności danej mapy. Ostatnim z wymiarów kaskadowych jest wymiar przechowujący informacje o czujnikach gromadzących dane pogodowe. Tabelą faktów tego wymiaru jest WTH_METER. Czujnik pogodowy jest, podobnie jak licznik mediów, opisywany przez wymiary płaskie określające jego położenie i typ oraz przez wymiar hierarchiczny określający datę jego instalacji. Wymiar ten posiada także jeden wymiar kaskadowy przechowujący odczyty pogo- 111 (c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2007 Rozdział monografii: 'Bazy Danych: Nowe Technologie', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2007 M. Gorawski dowe. Tabelą faktów wymiaru kaskadowego jest WTH_MEASURE. Tabela ta przechowuje fakty numeryczne definiujące sytuację meteorologiczną, jak np. zachmurzenie, wilgotność, siłę i kierunek wiatru, ciśnienie atmosferyczne, ilość opadów deszczu i śniegu. Każdy z pomiarów czujnika pogody jest dodatkowo opisywany przez wymiar płaski definiujący dokładność pomiaru oraz czasowy wymiar hierarchiczny (analogicznie jak dla pomiaru licznika mediów). Prezentowany schemat ES{CII−1} SDW(t) jest rozszerzonym o 2 komponenty schematem SC w (SDW(t)). Pierwsze rozszerzenie schematu SC (SDW(t)) dotyczy użycia wymiarów hierarchicznych. Zgodnie z definicją 1 schemat SC (SDW) dopuszcza istnienie tylko wymiarów płaskich oraz wymiarów kaskadowych. Wymiary hierarchiczne, określone w definicji 5 są stosowane w schemacie płatka śniegu. W przypadku schematu ES{CII−1} SDW(t) wymiarami hierarchicznymi są: wymiar czasowy w da .b w (np. czas pomiaru, instalacji liczników, wygaśnięcia ważności mapy etc) oraz wymiar definiujący miejsce zamieszkania użytkownika. Drugie rozszerzenie schematu SC (SDW(t)) dotyczy sposobu połączenia tabel faktów z wymiarami kaskadowymi. W gwieździe kaskadowej stosowany jest klucz gwiazdy oraz związana z nim funkcja g (def. 2). Aby jednak uniknąć komplikacji związanych z definicją funkcji g, zdecydowano się na generowanie sztucznych kluczy głównych (ang. surrogate keys) w tabeli faktów. Dla każdego wpisu w tabeli faktów generowany jest kolejny numer. Wadą takiego podejścia jest konieczność zdefiniowana dodatkowej kolumny przechowującej klucz w tabeli faktów (wada ta dotyczy także podejścia wykorzystującego klucz gwiazdy). Jednak wykorzystanie sztucznych kluczy głównych pozwala na uniknięcie problemów związanych z definiowaniem funkcji g. Znakomita większość systemów relacyjnych baz danych pozwala na zdefiniowanie sekwencji. Użycie sekwencji umożliwia automatyczną numerację wierszy tabeli. Co ważne, użycie sekwencji nie wnosi narzutu obliczeniowego oraz jest bardzo wygodne nawet dla użytkownika korzystającego z bazy na najniższym poziomie – dla programisty aplikacji. W definicji 6 opisano w sposób formalny schemat rozszerzonej gwiazdy kaskadowej II stopnia, jednotematyczny (t=1). Definicja 6. Rozszerzona gwiazda kaskadowa II stopnia dla k=1 pl s. Schemat rozszerzona gwiazdy kaskadowej II stopnia dla k=1, ES{CII −1} definiowany jest jako C C C ES{CII −1} = (SS, H , T , L ), gdzie: 1) SS jest zbiorem wymiarów kaskadowych – schematów danych, takich, że Si ∈ SS jest: a) schematem pojedynczej gwiazdy SS, lub b) schematem płatka śniegu SF, lub c) schematem ES{CII −1} ; 2) HC jest zbiorem wymiarów hierarchicznych ESC. Każdy wymiar hierarchiczny Hi ∈ HC ma określony stopień Li, definiowany jako liczba poziomów hierarchii w schemacie SF; 3) TC = [VC, PKSR, PKH] jest kaskadową tablicą faktów, gdzie VC jest zbiorem centralnych pomiarów faktów, VC= {VSF ∪ VS}. PKSR = {SRi} jest zbiorem sztucznych kluczy wymiarów kaskadowych Si | Si ∈ SS, a PKH = {PKi} jest zbiorem kluczy głównych wymiarów hierarchicznych Hi | Hi ∈ HC. Kluczem głównym PKi wymiaru Hi jest klucz główny tabeli h0: PK h . i0 112 (c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2007 Rozdział monografii: 'Bazy Danych: Nowe Technologie', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2007 Definiowanie schematów rozszerzonej gwiazdy kaskadowej C Schemat ES może zawierać zarówno zagnieżdżone schematy gwiazdy jak i zagnieżdżone schematy płatka śniegu. Rozszerzenie to pozwala na przeprowadzenie normalizacji złożonych tabel wymiarów. Rys. 8 przedstawia logiczny schemat ES{CII −1} SDW(t) z zaznaczonymi wartościami w współczynnika M. W celu poprawienia czytelności rysunku, ze schematu zostały usunięte wszystkie wymiary płaskie oraz hierarchiczne. Analiza rysunku pozwala na określenie wartości współczynnika m(ESC(SDW(t))) = 3, co oznacza, że maksymalna odległość pomiędzy centralną tabelą faktów schematu ESC, a najbardziej zagnieżdżonym schematem wynosi 3. W przypadku prezentowanego schematu ES{CII −1} SDW(t) wartość współczynnika m jest ok- reślana przez położenie podschematu przechowującego pomiary pogodowe. Tablicą faktów tego zagnieżdżonego modelu płatka śniegu jest WTH_MEASURE. w W T H _M E T E R M = 2 W T H _M E A S U R E M = 3 M E A S U R E M = 0 M E T E R M = 1 w N O D E M = 2 C L IE N T M = 2 M A P M = 3 Rys. 8. Logiczny schemat ES{CII−1} SDW(t) z zaznaczonymi wartości współczynnika M da .b Analiza wartości współczynnika M dla schematu ESC (SDW(t) pozwala na stwierdzenie faktu, że model ten jest zbudowany asymetrycznie, jego wymiary znacznie różnią się stopniem rozbudowania. Centralna tabela faktów MEASURE posiada dwa wymiary zwykłe oraz jeden rozbudowany wymiar kaskadowy. Asymetryczność schematu wynika bezpośrednio z charakteru danych telemetrycznych, dla których schemat został zdefiniowany. Innym praktycznym przykładem rozszerzonej gwiazdy kaskadowej IV stopnia ES {CIV − 2} SDW (t ) jest gwiazda kaskadowa II stopnia ES{CII −1} SDW(t) wersjonowana (rys. 4), W T H _ M E A S U R E _ C O N F H _ W T H _ M E T E R _ IN S T _ D A T E H _ W T H _ M E A S U R E _ D A T E W T H _ M E A S U R E W T H _ M E T E R W T H _ M E T E R _ L O C M E A S _ C O N F ID E N C E H _ M E T E R _ IN S T _ D A T E W T H _ M E T E R _ M O D E L M E T E R S V N O D E N O D E _ L O C D A Y M O N T H Q U A R T E R M E A S U R E C L IE N T S T A R T H _ N O D E _ IN S T A L L _ D A T E N O D E _ M O D E L M E A S _ Z O N E M E T E R _ L O C M E T E R _ M O D E L S V pl s. z dodanym schematem współdzielenia wymiarów (rys. 5), dwutematyczna – zorientowana na pomiar i mobilne usługi serwisu (rys. 9). Opis formalny schematu ES {CIV − 2} SDW (t ) jest złożony i wymaga opracowania nowych operacji typu ROLAP do jego obsłużenia. E N D C L _ S T A T U S C L _ P A Y M E N T Y E A R S T R E E T Q U A R T E R C IT Y H _ T IM E P R O V IN C E M A P M A P _ L T _ L O C C O N S E R V A T O R C O U N T R Y H _ A D D R E S S M A P _ T Y P E H _ M A P _ E X P _ D A T E M A P _ E G D E M A P _ R B _ L O C M A P _ P O IN T _ E N D M A P _ P O IN T _ S T A R C Rys. 9. Logiczny schemat rozwiniętej gwiazdy kaskadowej ES {IV −2} SDW (t ) wielowersyjny, ze współdzielonymi wymiarami, dwutematyczny – zorientowany na pomiar i mobilne usługi serwisu 113 (c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2007 Rozdział monografii: 'Bazy Danych: Nowe Technologie', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2007 M. Gorawski 5 Podsumowanie w W rozdziale zaproponowano rozbudowany szkielet modelowania danych – rozszerzoną gwiazdę kaskadową dla przestrzennych hurtowni danych. Najpierw omówiono schemat gwiazdy kaskadowej przedstawionej w pracy [3]. Następnie przedstawiono motywujący przykład systemu przestrzennych hurtowni danych telemetrycznych SDW(t) jako nadrzędnej warstwy decyzyjnego systemu zintegrowanego odczytu liczników mediów (DSSM). W rozdziale rozwinięto kilka nowych aspektów modelowania danych SDW. Zdefiniowano schemat rozszerzonej gwiazdy kaskadowej na potrzeby SDW(t) w odniesieniu do schematów pojedynczej gwiazdy i płatka śniegu. Wykazano, że istnieje potrzeba budowania wielu schematów rozszerzonej gwiazdy kaskadowej SDW jako wynik odrębnego definiowania przestrzenno-temporalnych modeli pojęciowych. Nasza przyszła praca skoncentrowania będzie na implementacji kompletnej listy operacji COLAP dla schematów ES {CP − t } z uwzględnieniem funkcji eksploracji danych tj.: klasyfika- w w cja i predykcja. Literatura 2. 3. 4. 5. 7. 8. 9. Songmei Yu, Vijayalakshmi Atluri, Nabil R. Adam, and Yelena Yesha: Efficient storage and management of environmental information. 19th IEEE Symposium on Mass Storage Systems, College Park, Maryland, USA, 2002. Marcin Gorawski, Rafał Malczok: Materialized aR-tree in Distributed Spatial Data Warehouse. International Journal Intelligent Data Analysis, IOS Press Vol.10, nr. 4 pp. 361–377, 2006. Songmei Yu, Vijayalakshmi Atluri, and Nabil R. Adam: „Cascaded star: A hyper-dimensional model for a data warehouse”. 17th International Conference on Database and Expert Systems Applications, DEXA 2006, vol. 4080 of Lecture Notes in Computer Science, pp. 439–448, 2006. Marcin Gorawski, Michał Gorawski: Balanced Spatio-Temporal Data Warehouse with R-MVB, STCAT and BITMAP Indexes PARELEC 2006 5-th International Symposium on Parallel Computing in Electrical Engineering, IEEE Computer Society, pp. 43–48 (2006) Marcin Gorawski, Grzegorz Wróbel: Realization of kNN Query Type in Spatial Telemetric Data Warehouse (Realizacja zapytań klasy kNN w przestrzennej telemetrycznej hurtowni danych) Studia Informatica, vol.26, nr 2(63), pp. 1–22 (2005). Marcin Gorawski, Bortlik Łukasz: Temporalna telemetryczna hurtownia danych. Bazy Danych_ Modele, Technologie, Narzędzia, Eds. St. Kozielski, Wydawnictwo Komunikacji i Łączności (WKŁ), ISBN 83-206-1572-0, 2005, pp. 51–57. Marcin Gorawski, Wojciech Gębczyk: Realization of Continuous Queries with kNN Join Processing in Spatial Telemetric Data Warehouse 2nd International Workshop on Data Management in Global Data Repositories (GRep '06), 17th International Conference on Database and Expert Systems Applications, DEXA 2006, , IEEE CS, pp. 632–636 (2006). Jacek Frączek, Marcin Gorawski., Stanisław Kozielski: Modelowanie struktur wielowymiarowych w hurtowniach danych, Archiwum Informatyki Teoretycznej i Stosowanej PAN, III/2000. Marcin Gorawski, Adrian Górski: Modelowanie przestrzenno - temporalnej hurtowni danych indeksowanej aRB-drzewem. Systemy Czasu Rzeczywistego, Kierunki badań i rozwoju. Eds. A. Kwiecień. Wydawnictwo Komunikacji i Łączności, ISBN 83-206-1589-5, 2005, pp. 149–158. pl s. 6. da .b 1. 114 (c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2007