🎯 Definicja

OLAP (Online Analytical Processing) to technika wielowymiarowej analizy danych biznesowych, umożliwiająca szybkie przetwarzanie złożonych zapytań analitycznych w hurtowniach danych. Kluczowym elementem OLAP jest sześcian OLAP, czyli zoptymalizowana struktura danych pozwalająca analizować miary w kontekście różnych wymiarów, takich jak czas, produkt czy lokalizacja.

🔑 Kluczowe punkty

  • Wielowymiarowość – dane analizowane są w wielu wymiarach jednocześnie (np. sprzedaż wg regionu, kwartału, produktu).
  • Szybkie analizy ad-hoc – OLAP wspiera natychmiastowe odpowiedzi na złożone pytania analityczne.
  • Miary + Wymiary – dane są organizowane w postaci miar numerycznych oraz wymiarów opisowych.
  • Sześciany OLAP – specjalna forma przechowywania danych zoptymalizowana pod kątem analizy, nie transakcji.
  • Język MDX – specjalistyczny język zapytań zaprojektowany do komunikacji z OLAP, szczególnie w środowiskach Microsoft.

📚 Szczegółowe wyjaśnienie

Mechanizm działania OLAP

W przeciwieństwie do OLTP, OLAP służy do wspierania decyzji biznesowych i umożliwia analizę danych historycznych. Dane są organizowane w tzw. sześciany OLAP, gdzie:

  • Miary (np. przychody, suma zamówień) są wartościami numerycznymi, które chcemy analizować.
  • Wymiary (np. czas, klient, produkt) stanowią kontekst, w którym analizujemy dane.

Użytkownicy mogą:

  • Drążyć (drill-down) i zagregować dane (roll-up),
  • Przeglądać przekroje danych z różnych perspektyw (np. pivot),
  • Analizować trendy, porównania i wartości wskaźnikowe (KPI).

Rodzaje OLAP

  • MOLAP (Multidimensional OLAP) – klasyczny model, dane przechowywane w wielowymiarowych strukturach (np. Microsoft SSAS).
  • ROLAP (Relational OLAP) – dane przechowywane w relacyjnych tabelach, a sześciany są emulowane przez zapytania SQL.
  • HOLAP (Hybrid OLAP) – łączy zalety obu podejść: dane zagregowane w wielowymiarowej formie, detale w relacyjnej.

Język MDX

MDX (Multidimensional Expressions) to specjalistyczny język zapytań do pracy z OLAP. Pozwala np. na definiowanie hierarchii wymiarów, agregowanie danych czy budowę wskaźników. Często używany w systemach takich jak MS Analysis Services.

💡 Przykład zastosowania

W korporacji detalicznej dane sprzedażowe są ładowane co noc do hurtowni danych, a następnie agregowane do sześcianu OLAP. Analitycy mogą szybko sprawdzać:

  • sprzedaż wg regionów i kategorii produktów,
  • porównania kwartalne i roczne (YoY),
  • efektywność kampanii marketingowych przez pivot danych wg kanałów i produktów.
    Dzięki zastosowaniu OLAP, czasy odpowiedzi na zapytania spadły z minut do kilku sekund.

📌 Źródła

👽 Brudnopis

  • OLAP → zapytania analityczne na dużej liczbie danych, miary + wymiary
  • Sześcian OLAP = struktura wielowymiarowa z preagregacjami
  • MDX = język zapytań, alternatywa do SQL dla modelu wielowymiarowego
  • ROLAP wolniejszy, ale tańszy (działa na starszych hurtowniach)
  • MOLAP szybki, ale zużywa więcej zasobów
  • OLAP ↔ OLTP – analiza vs transakcje
  • Wspieranie decyzji biznesowych, raportowanie KPI, kokpity menedżerskie