Samouczek SSIS dla początkujących: Co to jest, Architecture, Pakiety

Co to jest SSIS?

Usługa integracji SQL Server (SSIS) jest składnikiem Microsoft SQL Server oprogramowanie bazodanowe, którego można używać do wykonywania szerokiego zakresu zadań związanych z migracją danych. SSIS to szybkie i elastyczne narzędzie do hurtowni danych używane do ekstrakcji, ładowania i przekształcania danych, np. czyszczenia, agregowania, łączenia danych itp.

Ułatwia przenoszenie danych z jednej bazy danych do drugiej. SSIS może wyodrębniać dane z wielu różnych źródeł, takich jak bazy danych SQL Server, pliki Excel, Oracle i bazy danych DB2 itp.

SSIS obejmuje także narzędzia graficzne i kreatory do wykonywania funkcji przepływu pracy, takich jak wysyłanie wiadomości e-mail, operacje FTP, źródła danych i miejsca docelowe.

Dlaczego używamy SSIS?

Oto najważniejsze powody, dla których warto używać narzędzia SSIS:

  • Narzędzie SSIS pomaga łączyć dane z różnych magazynów danych
  • Automatyzuje funkcje administracyjne i ładowanie danych
  • Zapełnia magazyny danych i hurtownie danych
  • Pomaga w czyszczeniu i standaryzacji danych
  • Wbudowywanie BI w proces transformacji danych
  • Automatyzacja funkcji administracyjnych i ładowania danych
  • SIS zawiera graficzny interfejs użytkownika, który pomaga użytkownikom łatwo przekształcać dane, zamiast pisać duże programy
  • Może załadować miliony wierszy z jednego źródła danych do drugiego w ciągu kilku minut
  • Identyfikowanie, przechwytywanie i przetwarzanie zmian danych
  • Koordynowanie konserwacji, przetwarzania i analizy danych
  • SSIS eliminuje potrzebę stosowania programistów hardcorowych
  • SSIS oferuje solidną obsługę błędów i zdarzeń

Historia SSIS

Przed SSIS korzystano z SQL Server, Data Transformation Services (DTS), który był częścią SQL Server 7 i 2000

Wersja Szczegół
SQL Server 2005 Kolekcja Microsoft zespół zdecydował się na modernizację DTS. Zamiast jednak aktualizować DTS, postanowiono nadać produktowi nazwę Integration Services (SSIS).
Wersja serwera SQL 2008 W SSIS wprowadzono wiele ulepszeń wydajności. Wprowadzono także nowe źródła.
SQL Server 2012 Było to największe wydanie dla SSIS. Wraz z tą wersją wprowadzono koncepcję modelu wdrażania projektu. Umożliwia on wdrażanie całych projektów i ich pakietów na serwerze zamiast konkretnych pakietów.
SQL Server 2014 W tej wersji nie wprowadzono wielu zmian w SSIS. Ale dodano nowe źródła lub transformacje, co zostało wykonane poprzez osobne pobranie za pośrednictwem koduPlex lub pakiet funkcji SQL Server.
W SQL Server 2016 Wersja umożliwia wdrażanie całych projektów zamiast pojedynczych pakietów. Istnieją dodatkowe źródła, szczególnie chmury i źródła dużych zbiorów danych, a w katalogu wprowadzono kilka zmian.

Najważniejsze funkcje SSIS

Oto kilka ważnych podstawowych funkcji SSIS:

  • Środowiska studyjne
  • Odpowiednie funkcje integracji danych
  • Efektywna szybkość wdrożenia
  • Ścisła integracja z innymi Microsoft Rodzina SQL
  • Transformacja zapytań eksploracji danych
  • Przekształcenia wyszukiwania rozmytego i grupowania
  • Ekstrakcja terminów i transformacje wyszukiwania terminów
  • Elementy umożliwiające szybsze przesyłanie danych, takie jak łączność z SAP or Oracle

SSIS Architektura

SSIS Architektura
SSIS Architektura

Poniżej przedstawiono komponenty architektury SSIS:

  • Przepływ kontroli (przechowuje kontenery i zadania)
  • Przepływ danych (źródło, miejsce docelowe, transformacje)
  • Obsługa zdarzeń (wysyłanie wiadomości, e-maili)
  • Eksplorator pakietów (oferuje jeden widok dla wszystkich w pakiecie)
  • Parametry (interakcja użytkownika)

Rozumiemy szczegółowo każdy komponent:

1. Kontroluj przepływ

Przepływ sterowania jest mózgiem pakietu SSIS. Pomaga w ustaleniu kolejności wykonania wszystkich jego komponentów. Komponenty zawierają kontenery i zadania, którymi zarządza się poprzez ograniczenia pierwszeństwa.

2. Ograniczenia pierwszeństwa

Ograniczenia pierwszeństwa są komponentami pakietu, które kierują zadaniami do wykonania w określonej kolejności. Definiuje także przepływ pracy całego pakietu SSIS. Kontroluje wykonanie dwóch połączonych zadań, wykonując zadania docelowe na podstawie wyniku wcześniejszego zadania — reguł biznesowych zdefiniowanych za pomocą specjalnych wyrażeń.

3. Zadanie

„Zadanie” to indywidualna jednostka pracy. Jest to taki sam sposób, jak metoda/funkcja używana w języku programowania. Jednak w SSIS nie używasz metod kodowania. Zamiast tego użyjesz techniki „przeciągnij i upuść” do zaprojektowania powierzchni i ich skonfigurowania.

4. Pojemniki

Kontener to jednostki służące do grupowania zadań w jednostki pracy. Oprócz zapewnienia spójności wizualnej, umożliwia także deklarowanie zmiennych i procedur obsługi zdarzeń, które powinny znajdować się w zakresie tego konkretnego kontenera.

Cztery typy kontenerów w SSIS to:

  • Kontener sekwencji
  • Kontener pętli For
  • Kontener pętli Foreach

Kontener sekwencji: umożliwia organizowanie zadań pomocniczych poprzez ich grupowanie oraz umożliwia wprowadzanie transakcji lub przypisywanie logowań do kontenera.

Dla pojemnika z pętlą:Zapewnia tę samą funkcjonalność co kontener sekwencji, z tą różnicą, że umożliwia także wielokrotne uruchamianie zadań. Jednakże opiera się na warunku oceny, takim jak pętla od 1 do 100.

Dla każdego kontenera pętli: Umożliwia także zapętlanie. Ale różnica polega na tym, że zamiast używać wyrażenia warunkowego, wykonuje się pętlę na zestawie obiektów, lubi pliki w folderze.

5. Przepływ danych

Głównym zastosowaniem narzędzia SSIS jest wyodrębnienie danych do pamięci serwera, przekształcenie ich i zapisanie w innym miejscu docelowym. Jeśli Control Flow jest mózgiem, Data Flow jest sercem SSIS

6. Pakiety SSIS

Innym kluczowym elementem SSIS jest pojęcie pakietu. Jest to zbiór zadań, które są wykonywane w uporządkowany sposób. Tutaj ograniczenia prezydenta pomagają zarządzać kolejnością, w jakiej zadanie będzie wykonywane.

Pakiet może pomóc w zapisaniu plików w formacie SQL Server, w msdb lub bazie danych katalogu pakietów. Można go zapisać jako plik .dtsx, który jest plikiem o strukturze bardzo podobnej do plików .rdl dostępnych w usługach Reporting Services.

Pakiety SSIS

7. Parametry

Parametry zachowują się podobnie jak zmienne, ale z kilkoma głównymi wyjątkami. Można go łatwo ustawić poza opakowaniem. Można go wyznaczyć jako wartości, które należy przekazać, aby pakiet się uruchomił.

Typy zadań SSIS

W narzędziu SSIS możesz dodać zadanie sterujące przepływem. Istnieją różne rodzaje zadań, które wykonują różne rodzaje prac.

Poniżej wymieniono niektóre ważne zadania SSIS:

Nazwa zadania Descriptjony
Wykonaj zadanie SQL Jak sama nazwa wskazuje, wykona instrukcję SQL w relacyjnej bazie danych.
Zadanie przepływu danych To zadanie może odczytywać dane z jednego lub większej liczby źródeł. Przekształć dane, gdy znajdują się w pamięci, i zapisz je w jednym lub większej liczbie miejsc docelowych.
Zadanie przetwarzania usług analitycznych Użyj tego zadania, aby przetworzyć obiekty modelu tabelarycznego lub kostkę SSAS.
Wykonaj zadanie pakietu Użyj może użyć tego zadania SSIS do wykonania innych pakietów z tego samego projektu.
Wykonaj zadanie procesowe Za pomocą tego zadania możesz określić parametry wiersza poleceń.
Zadanie systemu plików Wykonuje manipulacje w systemie plików. Podobnie jak przenoszenie, zmiana nazwy, usuwanie plików i tworzenie katalogów.
Zadania FTP Umożliwia wykonywanie podstawowych funkcji FTP.
Zadanie skryptowe To jest puste zadanie. Możesz napisać kod NET, który wykona dowolne zadanie; chcesz wystąpić.
Wyślij Mail Zadanie Możesz wysłać wiadomość e-mail do użytkowników, aby powiadomić ich, że paczka została ukończona lub wystąpił błąd.
Zadanie wstawiania zbiorczego Użycie może załadować dane do tabeli za pomocą polecenia wstawiania zbiorczego.
Zadanie skryptowe Uruchamia zestaw VB.NET lub kodowania w języku C# w środowisku Visual Studio.
Zadanie usługi internetowej Wykonuje metodę w usłudze internetowej.
Zadanie obserwatora zdarzeń WMI To zadanie umożliwia pakietowi SSIS oczekiwanie na określone zdarzenia WMI i odpowiadanie na nie.
Zadanie XML To zadanie pomaga scalić, podzielić lub sformatować dowolny plik XML.

Inne ważne narzędzia ETL

  • SAP Usługi danych
  • Zarządzanie danymi SAS
  • Oracle Konstruktor Magazynu (OWB)
  • Informatyka Power Center
  • IBM Serwer informacyjny Infosfery
  • Repertuar Elixir dla Data ETL
  • Przepływ danych Sargenta

Zalety i wady korzystania z SSIS

Narzędzie SSIS oferuje następujące korzyści:

  • Szeroka dokumentacja i wsparcie
  • Łatwość i szybkość wdrożenia
  • Ścisła integracja z SQL Server i studio wizualne
  • Standaryzowana integracja danych
  • Oferuje możliwości oparte na komunikatach w czasie rzeczywistym
  • Wsparcie modelu dystrybucji
  • Pomaga usunąć sieć jako wąskie gardło przy wstawianiu danych przez SSIS do SQL
  • SISS pozwala na użycie miejsca docelowego SQL Server zamiast OLE DB w celu szybszego ładowania danych

Wady SSIS

Kilka wad korzystania z narzędzi SSIS jest następujących:

  • Czasami powodują problemy w środowiskach innych niż Windows
  • Niejasna wizja i strategia
  • SSIS nie obsługuje alternatywnych stylów integracji danych
  • Problematyczna integracja z innymi produktami

Przykład najlepszych praktyk SSIS

  • SSIS to potok w pamięci. Dlatego ważne jest, aby upewnić się, że wszystkie transformacje zachodzą w pamięci
  • Spróbuj zminimalizować liczbę rejestrowanych operacji
  • Planuj wydajność, analizując wykorzystanie zasobów
  • Zoptymalizuj transformację wyszukiwania SQL, źródło danych i miejsce docelowe
  • Zaplanuj i rozprowadź go prawidłowo

Podsumowanie

  • Pełną formą SSIS są usługi integracji SQL Server
  • Narzędzie SSIS pomaga łączyć dane z różnych magazynów danych
  • Ważne wersje usługi SQL Server Integration Service to 2005, 2008, 2012, 2014 i 216
  • Środowiska studyjne, odpowiednie funkcje integracji danych i efektywna szybkość wdrażania to tylko niektóre ważne cechy SSIS
  • Przepływ sterowania, przepływ danych, obsługa zdarzeń, eksplorator pakietów i parametry to podstawowe komponenty architektury SSIS
  • Wykonaj zadanie SQL, zadanie przepływu danych, zadanie przetwarzania usług analitycznych, wykonaj zadanie pakietu, wykonaj zadanie procesu, zadanie systemu plików, zadania FTP, wyślij Mail Zadanie, Zadania usługi sieciowej to niektóre ważne
  • Szeroka dokumentacja i wsparcie
  • Największą wadą SSIS jest brak obsługi alternatywnych stylów integracji danych
  • SAP Usługi danych, Zarządzanie danymi SAS, Oracle Konstruktor Magazynów (OWB), PowerCenter Informatica, IBM Serwer informacyjny Infosfery
  • SSIS to potok w pamięci. Dlatego ważne jest, aby upewnić się, że wszystkie transformacje zachodzą w pamięci