background image

1 ogólne pojęcie hurtowni danych  

Hurtownia danych to trwała analityczna baza danych, która staje sie podstawa „fundamentem” 
systemu wspomagania podejmowania decyzji. Jest ona projektowana dla dużej liczby danych stałych. 
Jest to przedsięwzięcie rozwijające sie, które zapewnia dostęp do właściwych danych właściwym 
użytkownikom, we właściwym czasie. 
Hurtownia danych ma za zadanie: 
- przyjmować i archiwizować duże ilości danych 
-dokonywać wstępnych analiz poprzez mechanizm migawek 
-być bazą danych tylko do odczyt uniemożliwiając manipulacje danymi 
-zapewniać stały dostęp do informacji w procesie podejmowania decyzji 
 

2  modele danych w hurtowniach danych  

Model Gwiaździsty - jest specyficznym rodzajem struktury bazy danych wykorzystywanej w 
przetwarzaniu analitycznym, charakteryzuje sie on tym, że zawiera dwa typy tabel – tabele faktów 
oraz tabele wymiarów.  
Tabele faktów zawierają dane ilościowe lub fakty dotyczące działalności firmy. 
Tabele wymiarów są mniejsze i przechowują opisowe dane, które przedstawiają wymiary 
prowadzonego biznesu. 
Spotyka sie także różne odmiany schematu gwieździstego, w których występuje więcej niż jedna 
tabela faktów . 
Korzyści wynikające ze stosowania schematu gwieździstego: 
• Szybki czas odpowiedzi na zapytania. 
• Prosta i przejrzysta struktura bazy danych, umożliwiająca lepsze jej 
wykorzystanie. 
Model płatka śniegu - zakłada przechowywanie wszystkich informacji dotyczących wymiarów w 
trzeciej postaci normalnej, a pozostawia bez zmian strukturę tabel faktów. 
 

3  rozszerzenie SQL`a dotyczące hurtowni danych  

-operatory agregujące: 
 

* ROLLUP  - jest to rozszerzenie klauzuli GROUP BY zapytania SELECT. Pozwala on na  

 

 

wyznaczanie funkcji agregujących na rosnących poziomach agregacji. 

 

* CUBE - jest to rozszerzenie klauzuli GROUP BY zapytania SELECT. Zapytanie z operatorem 

 

 

CUBE jest równoważne złożeniu wielu zapytań, w których stosowane jest grupowanie 

 

 

według wszystkich możliwych kombinacji podanych kolumn. 

 

* GROUPING SETS – umożliwia realizację wielu schematów grupowania w jednym wywołaniu 

 

 

instrukcji SELECT.  

-funkcje analityczne SQL: 
 

* Partycje obliczeniowe – możliwe jest wyznaczanie wartości funkcji grupowej oddzielnie dla 

 

każdego wiersza grupy (funkcja_grupowa() over (PARTITION by kolumna)) 

 

* Ruchome okno obliczeniowe Wartości funkcji grupowych mogą być również wyznaczane w 

oparciu o grupy wierszy przesuwające się wraz z wierszem bieżącym. Grupy takie są nazywane 
oknami i mogą być definiowane przy pomocy wyrazeń ROWS lub RANGE. 
 

* Funkcje rankingowe : Funkcje rankingowe umożliwiają wyznaczenie położenia wiersza w 

odniesieniu do pozostałych wierszy grupy względem wybranej funkcji porządkującej. 
 

 

- RANK() 

background image

 

 

- DENSE_RANK() 

 

 

-CUME_DIST() 

 

 

- PERCENT_RANK() 

 

 

- NTILE() 

 

 

- ROW_NUMBER() 

 
 
 

4 sposoby zasilania hurtowni danych danymi  

Sposoby: 
-wczytywanie za pomocą tabel zewnętrznych 
-wykorzystanie programu SQL*Loader 
-można także korzystać z funkcji Import w Enterprise manager Console ale w tym przypadku 
spowoduje to ograniczenie tylko do danych pochodzących ze środowiska Oracle 
 
Jeśli rozpatrywane są duże systemy pompowanie danych staje się problemem. Chodzi o to aby w 
trakcie kiedy obciążenie hurtowni jest najmniejsze wtłoczyć wszystkie dane. Przy małych ilościach nie 
stanowi to problemu, jednak sytuacja się zmienia kiedy przychodzi do wprowadzenia danych o 
rozmiarach liczonych w gigabajty. 
 
SQL*Loader jest dość poręcznym narzędziem, które pozwala integrować dane z różnych źródeł.  
Przykładowo aby wczytać dane tworzymy arkusz zawierający dane. Następnie wykorzystujemy 
możliwość zapisania arkusza w postaci pliku CSV, czyli kolejne dane oddzielone średnikami. Tak 
spreparowany plik z danymi należy przegrać do katalogu w którym znajduje się plik z SQL*Loaderem. 
Aby rozpocząć ładowanie danych należy stworzyć plik sterujący, który będzie zawierał odpowiednie 
parametry. Ponadto plik musi być zapisany z rozszerzeniem *.ctl. Następnie poprzez wywołanie 
,,sqlldr user/passw  control=ster’’ doprowadzamy do ładowania plików do tabeli. 
SQL*Loader może sczytywać dane niemal z każdego pliku w którym dane są zapisane w kolejności i 
oddzielone separatorem który można określić w pliku sterującym. 
Tabele zewnętrzne stanowią cenny element podczas tworzenia hurtowni danych. Umożliwiają one 
definiowanie tabel, które są tabelami tradycyjnymi (czyli takimi które są zarządzane przez serwer 
bazy danych). Tabele zewnętrzne są przechowywane w zwykłych plikach systemu plików. Pozwala to 
na zadeklarowanie pliku danych jako tabeli i następnie pobieranie z niego danych. 
Aby stworzyć tabele zewnętrzną należy w bazie danych utworzyć obiekt katalogu. Można tego 
dokonać za pomocą ,,SQL PLUS Worksheet’’ wpisując następujące polecenie. 
 
 

5 co to jest PSP i wszystko na ten temat  

Jest to narzędzie umożliwiające tworzenie kodu HTML, zawierające specjalne znaczniki z kodem 
PL/SQL. PSP umożliwia umieszczenie wewnątrz ograniczników <% oraz %> pewnych instrukcji dla 
serwera które nie są elementami kodu HTML. Taki „mieszany” kod umieszcza się  w pliku, którego 
nazwa posiada rozszerzenie „.psp” Następnie z poziomu wiersza poleceń systemu Oracle należy 
uruchomić program o nazwie loadpsp, który odczytuje plik PSP i przekształca go do postaci procedury 
PL/SQL. 

background image

Dyrektywy w PSP: 

 

Page – dostarcza informacji o bieżącej stronie 

 

Plsql – wyznacza nazwę procedury reprezentującej dany dokument PSP 

 

Parametr – ustawia parametry procedury 

 

Include – powoduje dołączenie w wybranym miejscu dokumentu PSP zawartości pliku 
wskazanego przez atrybut file 
 

Znaczniki: 
 

-  <%! %> deklaracje zmiennych 

 

- <%  %> tzw. skryptlety( miejsce na kod PL/SQL) 

 

- <%= %> wyrażenia – odpowiadają za wyświetlanie zawartości zmiennych 

 
 

6 SQL_MM - co to jest i do czego służy  

SQL/MM jest stosunkowo nowym standardem, którego zadaniem jest specyfikacja standardowych 
bibliotek typów obiektowych SQL do obsługi zaawansowanych rodzajów danych, których konstrukcje 
języka SQL bezpośrednio nie wspierają. 
 
Podobnie jak SQL, SQL/MM składa się z wielu części, przy czym części SQL/MM są ze sobą 
raczej luźno związane w porównaniu ze specyfikacjami SQL. Pełna nazwa standardu SQL/MM brzmi: 
SQL Multimedia and Application Packages, co oznacza że jego części niekoniecznie muszą dotyczyć 
przetwarzania szeroko pojętych danych multimedialnych, ale również innych zastosowań. W chwili 
obecnej standard obejmuje pięć części. 
 

7 Podstawy rozproszonych baz danych ( do dziennika migawki ) 

Stosujemy je kiedy scentralizowane bazy danych nie zapewniają wymaganej funkcjonalności i 
efektywności pracy. 
Rozproszona baza danych jest zbiorem współpracujących z sobą baz danych, z 
których każda znajduje się na innym serwerze. Bazy te dalej będziemy nazywali 
lokalnymi. Z punktu widzenia użytkownika wszystkie te bazy logicznie stanowią 
jedną rozproszoną bazę danych. 
• Zalety 
– dane umieszczone "blisko" użytkownika   skrócenie 
czasu transmisji sieciowej 
– mniejsze ryzyko utraty wszystkich danych na skutek 
awarii systemu 
– wzrost niezawodności całego systemu 
• Wady 
– utrudniony dostęp do pełnego (zintegrowanego) 
zbioru danych 
– konieczność utrzymywania kopii danych (replik) i ich 
Odświeżania