| Termin | Definicja |
|---|---|
| Integracja z SSIS | Integracja z SSIS umożliwia wykorzystanie usług integracyjnych SQL Server do automatycznych przepływów danych. Rola SSIS w przepływach danychSSIS, czyli SQL Server Integration Services, jest platformą firmy Microsoft do budowania i wykonywania pakietów integracyjnych. Pakiet opisuje sposób pobierania danych ze źródeł, ich przekształcania oraz zapisywania w miejscach docelowych. Takie zadanie określa się często jako ETL: extract oznacza ekstrakcję danych, transform ich przekształcanie, a load załadowanie wyniku do systemu docelowego. SSIS może obsługiwać przepływy pomiędzy bazami danych, plikami oraz innymi źródłami, dla których dostępny jest odpowiedni menedżer połączeń i komponent przepływu danych. Architektura SSIS rozdziela silnik wykonawczy od silnika przepływu danych. Silnik wykonawczy zarządza pakietem, kolejnością zadań, zmiennymi, rejestrowaniem zdarzeń oraz procedurami obsługi błędów. Silnik przepływu danych wykonuje wyspecjalizowane operacje odczytu, transformacji i zapisu rekordów. Dzięki temu pojedynczy pakiet może zawierać zarówno elementy transportu danych, jak i czynności sterujące, takie jak przygotowanie tabel, sprawdzenie warunku, uruchomienie innego pakietu czy wysłanie powiadomienia. Control Flow i Data Flow w jednym pakiecieControl Flow, czyli przepływ sterowania, składa się z zadań, kontenerów i ograniczeń kolejności. Zadanie wykonuje określoną czynność, kontener grupuje zadania albo organizuje ich powtarzanie, a precedence constraint określa, kiedy kolejny element może się uruchomić. Ograniczenie może zależeć od wyniku poprzedniego zadania, na przykład od sukcesu, błędu lub zakończenia wykonania. Pozwala to zbudować sekwencję, w której najpierw sprawdzana jest dostępność źródła, następnie wykonywany jest import, a na końcu zapisywany jest wynik lub rejestrowana informacja o niepowodzeniu. Data Flow Task jest zadaniem przeznaczonym do przemieszczania i przekształcania danych. W jego obrębie znajdują się komponenty źródłowe, transformacje oraz komponenty docelowe. Źródło odczytuje rekordy, transformacja może zmienić typy lub wartości kolumn, filtrować wiersze, łączyć dane albo rozdzielać przepływ, a komponent docelowy zapisuje rezultat. Istotne jest sprawdzenie zgodności metadanych: nazw kolumn, typów danych, długości tekstu, wartości pustych i kluczy. Niezgodność na tym poziomie może spowodować błąd walidacji jeszcze przed rozpoczęciem właściwego importu. Połączenia, parametry i wdrażanie projektuSSIS korzysta z connection managerów, czyli menedżerów połączeń przechowujących informacje potrzebne do komunikacji ze źródłem lub miejscem docelowym. W zależności od użytego typu mogą one obsługiwać między innymi SQL Server, ADO.NET, OLE DB, pliki płaskie, pliki XML albo inne źródła dostępne przez właściwy dostawca. Połączenie może być zdefiniowane na poziomie pakietu lub projektu. Menedżer projektu może być współdzielony przez wiele pakietów należących do tego samego projektu, co ułatwia utrzymanie wspólnych ustawień. W modelu wdrażania projektu wartości zależne od środowiska można przekazywać przez parametry projektu, parametry pakietu i zmienne środowiskowe. Pozwala to używać tego samego pakietu w środowisku testowym i produkcyjnym bez edytowania jego logiki. Projekt jest budowany do pliku z rozszerzeniem Diagnostyka nieudanego przepływu SSISAnalizę problemu należy rozpocząć od ustalenia, czy błąd wystąpił podczas walidacji, na etapie nawiązywania połączenia, w Data Flow Task, podczas zapisu danych czy w Control Flow. Walidacja może wykryć brak sterownika, niedostępne połączenie, niezgodne metadane lub nieprawidłowe wyrażenie. Jeżeli źródło działa, ale przepływ zatrzymuje się przy transformacji, trzeba sprawdzić typy kolumn, konwersje, wartości W projekcie wdrożonym do SSISDB przydatne są informacje o wykonaniu pakietu, komunikaty zdarzeń, poziom rejestrowania oraz widoki katalogu zawierające historię operacji. Event handler może reagować na zdarzenia generowane przez pakiet, zadanie lub kontener, na przykład zapisać szczegóły błędu albo wykonać czynność porządkową. Podczas diagnostyki trzeba również porównać parametry i zmienne użyte w środowisku uruchomieniowym z wartościami przyjętymi podczas testów. Ten sam pakiet może działać poprawnie w narzędziu projektowym, a zakończyć się błędem na serwerze, jeśli używa innej wersji dostawcy, innego bitness runtime, innego konta wykonującego lub niedostępnej ścieżki plikowej. Naprawa problemu wymaga więc weryfikacji całego łańcucha: pakietu, komponentów SSIS, połączeń, parametrów oraz środowiska wykonania. |