OBIEE - modelowanie wymiarowe

Modelowanie wymiarowe zapewnia zestaw metod i koncepcji używanych w projektowaniu DW. Według konsultanta DW, Ralpha Kimballa, modelowanie wymiarowe to technika projektowania baz danych przeznaczona do obsługi zapytań użytkowników końcowych w hurtowni danych. Jest zorientowany na zrozumiałość i wydajność. Według niego, chociaż ER zorientowany na transakcje jest bardzo przydatny do przechwytywania transakcji, należy go unikać w przypadku dostarczania do użytkownika końcowego.

Modelowanie wymiarowe zawsze wykorzystuje fakty i tabele wymiarów. Fakty to wartości liczbowe, które można agregować i analizować na podstawie wartości faktów. Wymiary definiują hierarchie i opis wartości faktów.

Tabela wymiarów

Tabela wymiarów przechowuje atrybuty opisujące obiekty w tabeli faktów. Tabela wymiarów ma klucz podstawowy, który jednoznacznie identyfikuje każdy wiersz wymiaru. Ten klucz służy do kojarzenia tabeli wymiarów z tabelą faktów.

Tabele wymiarów są zwykle znormalizowane, ponieważ nie są tworzone w celu wykonywania transakcji i służą wyłącznie do szczegółowej analizy danych.

Przykład

W poniższej tabeli wymiarów wymiar klienta zwykle zawiera nazwę klienta, adres, identyfikator klienta, płeć, grupę dochodową, poziom wykształcenia itp.

Identyfikator klienta Nazwa Płeć Dochód Edukacja Religia
1 Brian Edge M 2 3 4
2 Fred Smith M 3 5 1
3 Sally Jones fa 1 7 3

Tabele faktów

Tabela faktów zawiera wartości liczbowe zwane pomiarami. Tabela faktów ma dwa typy kolumn - fakty i klucz obcy do tabel wymiarów.

Środki w tabeli faktów są trzech rodzajów -

  • Additive - Środki, które można dodać w dowolnym wymiarze.

  • Non-Additive - Miary, których nie można dodać w żadnym wymiarze.

  • Semi-Additive - Środki, które można dodać w niektórych wymiarach.

Przykład

Identyfikator czasu ID produktu Identyfikator klienta Jednostka sprzedana
4 17 2 1
8 21 3 2
8 4 1 1

Te tabele faktów zawierają klucze obce dotyczące wymiaru czasu, wymiaru produktu, wymiaru klienta i sprzedanej jednostki miary.

Załóżmy, że firma sprzedaje produkty klientom. Każda sprzedaż jest faktem, który ma miejsce w firmie, a tabela faktów służy do rejestrowania tych faktów.

Typowe fakty to - liczba sprzedanych jednostek, marża, przychody ze sprzedaży itp. Tabela wymiarów zawiera takie czynniki, jak klient, czas, produkt itp., Według których chcemy analizować dane.

Teraz, jeśli weźmiemy pod uwagę powyższą tabelę faktów i wymiar klienta, będzie również wymiar Produkt i czas. Biorąc pod uwagę tę tabelę faktów i te trzy tabele wymiarowe, możemy zadać pytania typu: Ile zegarków sprzedano klientom płci męskiej w 2010 roku?

Różnica między wymiarami a tabelą faktów

Różnica funkcjonalna między tabelami wymiarów a tabelami faktów polega na tym, że tabele faktów zawierają dane, które chcemy przeanalizować, a tabele wymiarów zawierają informacje wymagane do wykonania zapytań.

Tabela zbiorcza

Tabela zbiorcza zawiera zagregowane dane, które można obliczyć przy użyciu różnych funkcji agregujących.

Na aggregate function to funkcja, w której wartości wielu wierszy są grupowane razem jako dane wejściowe na podstawie określonych kryteriów, aby utworzyć jedną wartość o bardziej znaczącym znaczeniu lub pomiarze.

Typowe funkcje agregujące obejmują -

  • Average()
  • Count()
  • Maximum()
  • Median()
  • Minimum()
  • Mode()
  • Sum()

Te tabele zagregowane służą do optymalizacji wydajności w celu uruchamiania złożonych zapytań w hurtowni danych.

Przykład

Zapisujesz tabele z zagregowanymi danymi, takimi jak roczne (1 wiersz), kwartalne (4 wiersze), miesięczne (12 wierszy), a teraz musisz zrobić porównanie danych, np. Rocznie tylko 1 wiersz zostanie przetworzony. Jednak w tabeli niezagregowanej wszystkie wiersze zostaną przetworzone.

MIN Zwraca najmniejszą wartość w danej kolumnie
MAX Zwraca największą wartość w danej kolumnie
SUMA Zwraca sumę wartości liczbowych w danej kolumnie
ŚR Zwraca średnią wartość z danej kolumny
LICZYĆ Zwraca całkowitą liczbę wartości w danej kolumnie
LICZBA (*) Zwraca liczbę wierszy w tabeli

Wybierz Średnia (wynagrodzenie) z pracownika, gdzie tytuł = „programista”. To zestawienie zwróci średnią pensję dla wszystkich pracowników, których tytuł jest równy „Deweloper”.

Agregacje można stosować na poziomie bazy danych. Możesz tworzyć agregaty i zapisywać je w tabelach agregatów w bazie danych lub możesz zastosować agregaty w locie na poziomie raportu.

Note - Zapisywanie agregatów na poziomie bazy danych oszczędza czas i zapewnia optymalizację wydajności.