Pytania rekrutacyjne SQL Server Integration Services + Analysis Services

Pytania rekrutacyjne SSIS – SQL Server Integration Services

Jakie znasz komponenty architektury SSIS?

  1. Control Flow
  2. Data Flow
  3. Event handler
  4. Package Explorer 
  5. Parameters

Jak działa Control Flow?

Control Flow to tzw. mózg operacyjny SSIS. W tym komponencie sterujemy kolejnością wykonywania się poszczególnych elementów w SSIS – kontenerów i zadań (containers and tasks) oraz tzw. precedence constraints.

Container pozwala zachować daną strukturę w paczce, w jego obrębie wykonywane są zadania – tasks.

Tasks odpowiadają za działania funkcjonalne w paczce.

Każda paczka w SSIS zawiera przynajmniej Control Flow.

Więcej tutaj – https://docs.microsoft.com/en-us/sql/integration-services/control-flow/control-flow?view=sql-server-ver15


Co to jest Data Flow?

Podstawową funkcją Data Flow jest ekstrakcja danych ze źródła, modyfikacja tych danych, a następnie zapisanie ich w innej – wybranej -lokalizacji.

W Data Flow znajdziemy trzy typy componentów – Source (wyciąganie danych z ich lokalizacji źródłowej), Transformations (modyfikacja, transformacja wyciągniętych danych), Destination (zapis zmodyfikowanych danych do wybranej lokalizacji).

Więcej tutaj – https://docs.microsoft.com/en-us/sql/integration-services/data-flow/data-flow?view=sql-server-ver15


Pytania rekrutacyjne SSAS – SQL Server Analysis Services

Jak działają partycje w modelu tabularycznym w SSAS?

Partycje dzielą dane na części, wg zadanego klucza. Są potrzebne na przykład w momencie kiedy chcemy regularnie odświeżać tylko część danych, nie ich całość. Na przykład procesujemy tylko dane z ostatniego miesiąca.

Tabele mogą zostać podzielone na partycje, z których każda zawiera cząstkę całości tabeli. Następnie podczas procesowania modelu możemy wybrać, którą partycję – część – będziemy procesować oraz w jaki sposób.

Tworzymy je na przykład w Visual Studio w Tabular Model designer korzystając z Partition Manager.

Partycje definiowane są za pomocą albo języka M (Power Query) albo SQL.


Co to jest perspektywa w SSAS?

Modele w SSAS potrafią być złożone i składać się z wielu danych z różnych źródeł, użytkownik nie zawsze potrzebuje tych wszystkich danych jednocześnie. W wielu przypadkach poszczególnym użytkownikom wystarcza dostęp do konkretnej cześci informacji zawartych w modelu.

Aby ułatwić dostęp do części danych, można stworzyć perspektywy w modelu.

Perspektywa jest to tzw. podzbiór modelu, który pokazuje właściwe dla użytkownika dane. Często ukierunkowane na daną potrzebę raportową. W perspektywie zdefiniowane są tabele, kolumny, miary etc.

Więcej tutaj – https://docs.microsoft.com/en-us/analysis-services/tabular-models/perspectives-ssas-tabular?view=asallproducts-allversions


Jak możesz przeprocesować model tabelaryczny?

Obecnie model, partycję czy tabelę można przeprocesować w którymś z poniższym trybów:

  • Process Default – procesuje tylko nieprzetworzone (częściowo przetworzone) obiekty. Ładuje dane do pustych tabel czy partycji, przebudowuje kolumny obliczeniowe, hierarchie oraz relacje.
  • Process Full – procesowanie używane przy wgrywaniu zmian w strukturze modelu. Procesuje pełen model, wszelkie tabele, obiekty, przebudowuje je, przebudowuje relacje.
  • Process ReCalc – procesuje, ponownie oblicza wszelkie relacje, kolumny obliczeniowe i hierarchie.
  • Process Clear – czyści dane z modelu.

Jakie znasz rodzaje relacji między tabelami w modelu tabularycznym ?

Relacja między tabelami w modelu określa ich połączenie ze sobą. Oparte są na kolumnach z tmi samymi danymi w tabelach. Relacja pokazuje też rodzaj powiązania, na przykład:

one to one czyli 1 do 1. Jedna wartość z kolumny 1 (tabela 1) odpowiada jednej wartości z kolumny 2 (tabela 2).

one to many czyli 1 do wielu. Jedna wartość z kolumny 1 może odpowiadać wielu wartościom z kolumny 2. Ale nie na odwrót. Ustalona jest strona zależności.

many to many czyli wiele do wielu. Ten rodzaj relacji między tabelami dostępny jest dla modelu o kompatybilności 1500 i wyżej, deployowanych na SQL Server 2019 i wyżej oraz w Power BI Premium. W tym rodzaju relacji zarówno kolumna 1 jak i kolumna 2 nie są unikatowe. Kolumna 1 może zawierać produkty, które mogą zostać zakupione przez klientów z kolumny 2 (tabeli 2), ale jednocześnie klienci z kolumny 2 mogą zakupić więcej niż jeden produkt z kolumn 1.

Więcej informacji tutaj –

Zapraszam na mojego instagrama, gdzie to zagadnienie jest opracowane wizualnie i zapisane w Stories.

https://www.instagram.com/bideveloper_pl/


Co to jest OLTP a OLAP?

OLTP – Online Transaction Processing, czyli przetwarzanie danych transakcyjnych w systemach komputerowych.

Dane transakcyjne są to informacje o działaniach w organizacji, np. przepływy przelewów, przechodzenie towarów na magazyn ze sklepów etc. Są to dane o wysokiej normalizacji, czyli podzielone na mniejsze fragmenty, tak żeby ich przetwarzanie było bardziej efektywne. OLTP nie są dobrym wyborem jeżeli chcemy obsługiwać dużo zagregowanych danych. Spowoduje to spowolnienie systemu.

Przykłady OLTP w technologii Microsoft: SQL database, Azure SQL database etc.

OLAP – Online Analytical Processing, czyli przetwarzanie analityczne online.

Są to systemy stworzone do złożonych analiz i organizacji dużej ilości danych o wysokiej złożoności. Bazy OLAP są tak zaprojektowane, aby unieść duże obciążenia odczytu i przetworzenia danych.

W bazach OLTP przechowywane są wszystkie dane, transakcje, wprowadzane często po jednym rekordzie. W przeciwieństwie do OLAP nie są one dostosowane do zaawansowanych analiz tych danych. Aby wydajniej analizować dane tworzy się systemy OLAP.

Przykłady OLTP w technologii Microsoft: Azure Analysis Services, SQL Server Analysis Services.



Co to są hierarchie w modelu tabularycznym ?

Hierarchie pokazują relacje pomiędzy kolumnami w tabeli.

Tworzenie hierarchi ułatwia użytkownikom modelu nawigację pomiędzy danymi w modelu czy później raporcie, stworzonym na danym modelu.

Przez stworzenie hierarchi w tabeli z dużą ilością kolumn, możemy uporządkować dane, stworzyć swojego rodzaju bloki tematyczne.

Przykładowa hierarchia:
Year -> Month -> Week -> Day
Gdzie Year, Month, Week, Day to osobne kolumny. Nadrzędną kolumną będzie Year, który rozwinie się maksymalnie do poziomu Dnia.


Dagmara

.