Kostki analityczne Multidaimension vs tabular Tomasz Waloszek SSAS
Kostki analityczne Multidaimension vs tabular Tomasz Waloszek
SSAS – Anslisys Services • OLAP czyli On. Line Analytical Processing • Usługi analityczne (SSASS) to silnik analityczny pomagający w podejmowaniu decyzji i analiz biznesowych • Dostarcza dane analityczne do raportów biznesowych w aplikacji klineta takich jak Reporting Services, Power BI, Excel oraz innych narzędzi do wizualizacji i analizy danych • SSAS obsługuje dwa tryby modelowania – wielowymiarowy oraz tabularyczny
SSAS – Anslisys Services • Jeden model semantyczny - dwa sposoby rozwoju
Architektura SSAS
Pojęcie kostki wielowymiarowej
OLAP - nomenklatura • Wymiar (Dimension) - obiekt w hurtowni danych, którego zadaniem jest organizacja danych zapisanych w miarach w sposób umożliwiający analizowanie - według jednego aspektu - np. wymiar czas, geografia, produkt. • Fakt - rekord w tabeli opisujący zajście pojedynczego zdarzenia będącego podstawą analiz np. zakup danego produktu w sklepie. Jest opisany przy pomocy wymiarów i miar. • Miara (Measure) - obiekt w hurtowni danych, którego zadaniem jest rejestracja i przechowywanie wartości prezentowanych (najczęściej numerycznych), np. ilość sprzedanych produktów, stan magazynowy. • MDX (Multidimensional Expressions) - wielowymiarowe wyrażenia - język zapytań dla wielowymiarowych struktur OLAP pozwalający na zadawanie zapytań online w kostkach analitycznych.
Hierarchie • Są elementami wymiarów • porządkują poziomy, które organizują dane • umożliwiają agregowanie (zwijanie) oraz drążenie i rozwijanie danych
Relacje Relacja między wymiarem a grupą miar składa się z tabel wymiarów i faktów uczestniczących w relacji oraz atrybutu ziarnistości, który określa ziarnistość wymiaru w określonej grupie miar. Regular Dimension Relationships Regularna relacja wymiaru między wymiarem kostki a grupą miar istnieje, gdy kolumna klucza dla wymiaru jest połączona bezpośrednio z tabelą faktów. Ta bezpośrednia relacja opiera się na relacji klucz podstawowy-klucz obcy w bazowej relacyjnej bazie danych, ale może również opierać się na relacji logicznej zdefiniowanej w widoku źródła danych. Zwykła relacja wymiaru reprezentuje relację między tabelami wymiarów a tabelą faktów w tradycyjnym projekcie schematu gwiazdy
Relacje Reference Dimension Relationships Relacja wymiaru odniesienia między wymiarem kostki a grupą miar istnieje, gdy kolumna klucza dla wymiaru jest połączona pośrednio z tabelą faktów za pomocą klucza w innej tabeli wymiaru. Fact Dimension Relationships wymiary faktów, często nazywane wymiarami zdegenerowanymi, są standardowymiarami zbudowanymi z kolumn atrybutów w tabelach faktów zamiast z kolumn atrybutów w tabelach wymiarów. Użyteczne dane wymiarowe są czasami przechowywane w tabeli faktów, aby zmniejszyć duplikację.
Relacje Many to Many Dimension Relationships Obsługują wymiary wielu do wielu, umożliwiając bardziej złożone analizy niż to, co można opisać w klasycznym schemacie gwiazdy. Koncepcyjnie relacja wielowymiarowa w usługach Analysis Services jest równoważna relacjom wielu do wielu w modelu relacyjnym, obsługując te same rodzaje scenariuszy.
Procesowanie wymiarów: plan procesowania
Rodzaje procesowania • Process. Full • powoduje, że wszystkie połączone z wymiarem partycje muszą być przeliczane, należy stosować w wyjątkowych przypadkach • Czasochłonne ale akceptowalne gdy do dyspozycji jest duży interwał czasowy na procesowanie • Process Full --> Process Data + Process Index • Process Add • Najszybsza opcja procesowania • Dodaje tylko nowe wiersze • Duplicate. Key= Ignore. Error • Możliwa implementacja Update i Delete ale wymaga specjalnego zaprojektowania hurtowni danych
Rodzaje procesowania • Process Update • Inteligentnie sprawdza zmiany w wymiarze, bardzo wolny proces (wolniejszy niż Process. Full) • Relacje pomiędzy atrybutami przyspieszają procesowanie ale również są istotne z punktu widzenia agregacji. • Relacje pomiędzy wymiarami problemy: • RIGID – błąd w przypadku wykrycia zmiany w źródle • FLEXIBLE – w przypadku zmiany indeksy wymagają przeprocesowania
Rodzaje procesowania
Tabular mode czyli młodszy brat baz wielowymiarowych
Tabular mode - nomenklatura • Tabele i kolumny - dane importowane lub wyszukiwane ze źródeł danych • Hierarchia - metadane definiujące relacje między dwiema lub większą liczbą kolumn w tabeli. • Obliczenia - używanie DAX, agregowanie, filtrowanie, rozszerzanie, łączenie i zabezpieczanie tych danych. • Miara - obliczenie utworzone za pomocą formuły DAX do użycia w kliencie raportującym. Środki są oceniane na podstawie pól, filtrów i fragmentatorów użytkowników wybranych w aplikacji klienckiej raportowania. • KPI - służy do oceny wydajności wartości, zdefiniowanej przez miarę Base, w odniesieniu do wartości Docelowej zdefiniowane miarą lub wartością bezwzględną. • Perspektywa - Perspektywy w modelach tabelarycznych definiują widoczne podzbiory modelu, który zapewnia skupienie, specyficzne dla firmy lub specyficzne dla aplikacji punkty widzenia modelu.
Tabular Storage Modes • In Memory (Verti. Paq) Direct Query SSAS wysyła zapytania do SQL Server podczas:
DAX: Data Analysis Expressions • Język programowania wykorzystywany przez SSAS praz Power Pivot for Excel • Język prosty w użyciu, pozwalający na tworzenie: • Measures • Wylicznaych kolumn i tabel • Query Measure Name : = DAX Expression Order Quantity : =SUM([Order. Quantity])
Materiały Tutorial on Analysis Services http: //tinyurl. com/SSASTAB MSDN: SQL Server Analysis Services https: //msdn. microsoft. com/en-us/library/bb 522607. aspx Analysis Services and Power. Pivot Team Blog https: //blogs. msdn. microsoft. com/analysisservices/ You. Tube video of Azure Analysis Services https: //www. youtube. com/watch? v=44 I 48 uf. Kh. Os EDx course on Analysis Services: 8 hours of content and hands-on labs https: //www. edx. org/course/sql-server-analysis-services-developing-microsoft-dat 225 x 0#! Porównanie Tsbular vs Multidimensional https: //docs. microsoft. com/en-us/sql/analysis-services/comparing-tabular-andmultidimensional-solutions-ssas? view=sql-server-2017 Ciekawy wykład o zaawansowanej analityce w Tabular https: //www. sqlbi. com/tv/advanced-modeling-with-analysis-services-tabular/
- Slides: 20