BI Semantic Model – nowa odsłona dobrze znanych rozwiązań  Udostępnij na: Facebook

Autor: Bartłomiej Graczyk

Opublikowano: 2012-08-24

Wprowadzenie

Przyglądając się nowej odsłonie platformy Microsoft SQL Server oraz udostępnionym wraz z nią nowościom, nie sposób nie zauważyć wszechobecnego sformułowania BI Semantic Model. Celem tego artykułu jest omówienie podstawowych pojęć, związanych z BISM, a co za tym idzie, z technicznymi elementami platformy.

Na wstępie warto również przypomnieć o starszym bracie BISM, czyli modelu UDM (Unified Dimensional Model), zaprezentowanym ponad 6 lat temu. W owym czasie, UDM utożsamiany był pod kątem technicznym (zresztą słusznie) z nową odsłoną silnika usług analitycznych (Analysis Services). Jednocześnie był pierwowzorem koncepcji, w której rozwiązania Analysis Services są elementem warstwy semantycznej, pozwalającej na realizację dowolnych potrzeb raportowych. Celem było
stworzenie warstwy, umożliwiającej scalenie danych z wielu źródeł i udostępnienie danych w jednym,

Wizualizacja koncepcji UDM

Rys. 1. Wizualizacja koncepcji UDM.

spójnym modelu. Poglądowe założenia UDM zostały przedstawione na Rys. 1.

Warto zatem zobaczyć, co niesie nowa odsłona, czyli BI Semantic Model.

Biznesowe i techniczne aspekty BISM

Czym w zasadzie jest BI Semantic Model? – to pytanie zadał sobie zapewne prawie każdy, kto interesuje się choć trochę rozwiązaniami klasy Business Intelligence, a na 100% każdy, kto wykorzystuje produkty z rodziny Microsoft do rozwiązań BI. Ogólna koncepcja BISM została przedstawiona na Rys. 2., który jednoznacznie wskazuje, że BISM to trzywarstwowy model (warstwa modelu danych, logiki biznesowej i zapytań oraz dostępu do danych):

Koncepcja BISM

Rys. 2. Koncepcja BISM.

  • model danych stanowi konceptualny model danych, z którym pracują użytkownicy oraz twórcy rozwiązań BI. BI Semantic Model obejmuje swoim zakresem zarówno modele multidimensional, jak i tabular. Modele tworzone są za pomocą dedykowanych narzędzi – BIDS (Business Intelligence Development Studio), obecnie występujący pod nazwą Data Tools. Oba modele (multidimensional i tabular) mają zastosowanie tak samo szerokie. Umożliwiają, poprzez dostęp, wykorzystanie narzędzi, takich jak Excel czy PowerView, przez końcowych użytkowników,
  • business Logic & Queries to warstwa, w której zaimplementowane jest de facto powiązanie pomiędzy elementami biznesowymi, stanowiącymi informacje analityczne, a danymi, pochodzącymi ze zdefiniowanych źródeł danych. W zależności od stosowanego modelu, elementy biznesowe implementowane są w modelu, z wykorzystaniem MDX (Multidimensional Expressions) lub DAX (Data Analysis Expressions), w celu kalkulacji niezbędnych elementów biznesowych. MDX stosowany jest powszechnie w rozwiązaniach BI od ponad 10 lat, natomiast DAX jest językiem wprowadzonym do użycia stosunkowo niedawno, bazującym w dużej mierze na idei formuł Excela,
  • data Access to warstwa wykorzystywana do integracji źródeł danych, w szczególności baz relacyjnych, aplikacji biznesowych, plików tekstowych. W ramach dostępu do danych możliwe są dwa tryby – cached and passthrough. Metoda typu cached polega na pobraniu danych ze źródła i zapisaniu ich w skompresowanej postaci, przy jednoczesnym zagwarantowaniu możliwie największej wydajności. Metoda passthrough polega na wykonywaniu zapytań bezpośrednio w ramach źródła danych, bez konieczności ich kopiowania.

Dla obsługi metody typu cached, wykorzystane mogą być silniki, takie jak MOLAP I VertiPaq™. MOLAP to dobrze znany, z rozwiązań Analysis Services, silnik. Jest zoptymalizowany pod kątem operacji typu OLAP. Wykorzystuje mechanizmy pre-agregacji, kompresji. Nowością, a jednocześnie uzupełnieniem dla MOLAPA, jest silnik VertiPaq, który wykorzystuje przetwarzanie in-memory.

Dla rozwiązań typu passthrough – dostępne są silniki, takie jak ROLAP i DirectQuery, (odpowiednio alternatywy dla MOLAP i VertiPaq). ROLAP jest zoptymalizowany w celu

Warstwy BISM

Rys. 3. Warstwy BISM.

wykorzystania dla dużych tabel faktów, przy jednocześnie dość małych tabelach wymiarów.

Krótka charakterystyka opisanych warstw BISM została zawarta w zestawieniu na Rys. 3.

BISM bardziej technicznie i użytkowo

Patrząc jednak na BISM od strony bardziej technicznej, łatwo zidentyfikować, że jest to zbiór wszystkich dostępnych dla platformy SQL Server 2012 rozwiązań, pozwalających na analizę danych, niezależnie od źródła ich pochodzenia czy formy, w jakiej dane są prezentowane. Jest to zgodne z ideą BI dla wszystkich, niezależnie od skali, w jakiej wykorzystywane są modele: Self(Personal)-BI, Team BI czy Corporate BI. Jest on spójny dla wszystkich.

W tym miejscu warto również podkreślić, że BISM utożsamiany jest niesłusznie jedynie z nowym typem projektów usług analitycznych, czyli Analysis Services Tabular Model, który de facto stanowi rozwinięcie dobrze znanego rozwiązania PowerPivot, z tym że w wersji serwerowej. Może zostać użyty bez platformy SharePoint czy programu Excel.

Oczywiście, oprócz nowej, spójnej koncepcji BI – BISM pojawiły się usprawnienia na poziomie technicznym. Jednym z głównych problemów w poprzedniej wersji Analysis Services jest usunięcie ograniczenia dla danych tekstowych, których rozmiar przekracza w kostkach 4 GB. Warto również pamiętać, że wszystkie istniejące modele UDM/Projekty ( SQL Server 2005/2008 Analysis Services Projects), podczas ewentualnej migracji, transformowane są dla projektu typu multidimensional.

Obecnie, należy również pamiętać, że w ramach modeli tabular, niezbędne jest posługiwanie się językiem DAX, podczas gdy praca z projektami multidimensional odbywa się z wykorzystaniem MDX. Jednak, w niedługim czasie oba modele mają zostać ujednolicone również w tym zakresie.

Podsumowanie

Jak można zauważyć, BI Semantic Model to dobrze rokująca koncepcja, bogata w możliwości, skalowalna, a przede wszystkim pozwalająca na dopasowanie do wymagań. Możliwość zastosowania modelu multidimensional lub tabular sprawia, że rozwiązania mogą być tworzone zarówno przez doświadczonych programistów, jak i osoby posiadające podstawową wiedzę z zakresu modelu danych i potrzeb biznesowych.