Samouczek SSIS dla początkujących: Archistruktura, pakiety i komponenty
⚡ Inteligentne podsumowanie
Usługi integracji SQL Server (SSIS) są składnikiem Microsoft SQL Server wykorzystywane do tworzenia rozwiązań integracji danych i przepływu pracy, wykonując np.tracprzetwarzanie, transformacja i ładowanie (ETL) w celu przenoszenia i oczyszczania danych pomiędzy różnymi źródłami i miejscami docelowymi.

Co to jest SSIS?
Usługi integracji SQL Server (SSIS) są składnikiem Microsoft SQL Server Oprogramowanie bazodanowe, które może być używane do wykonywania szerokiego zakresu zadań migracji danych. SSIS to szybkie i elastyczne magazyn danych narzędzie używane do danych, np.traccja, ładowanie i transformacja, taka jak czyszczenie, agregowanie i scalanie danych.
Ułatwia przenoszenie danych z jednej bazy danych do innej. SSIS może np.tracdane z szerokiej gamy źródeł, takich jak bazy danych SQL Server, pliki Excel, Oracle i baz danych DB2 i innych.
SSIS zawiera również narzędzia graficzne i kreatory służące do wykonywania funkcji przepływu pracy, takich jak wysyłanie wiadomości e-mail, operacje FTP oraz konfigurowanie źródeł i miejsc docelowych danych.
Dlaczego używamy SSIS?
Oto najważniejsze powody korzystania z narzędzia SSIS:
- SSIS pomaga scalać dane z różnych magazynów danych.
- Automatyzuje funkcje administracyjne i ładowanie danych.
- Zapełnia hurtownie danych i magazyny danych.
- Pomaga oczyścić i ujednolicić dane.
- Wbudowuje BI w proces transformacji danych.
- SSIS zawiera graficzny interfejs użytkownika, który umożliwia użytkownikom łatwą transformację danych bez konieczności pisania dużych programów.
- Może załadować miliony wierszy z jednego źródła danych do drugiego w zaledwie kilka minut.
- Identyfikuje, rejestruje i przetwarza zmiany danych.
- Koordynuje konserwację, przetwarzanie i analizę danych.
- Dzięki SSIS nie ma potrzeby zatrudniania doświadczonych programistów.
- SSIS oferuje niezawodną obsługę błędów i zdarzeń.
Historia SSIS
Przed wprowadzeniem SSIS używano usługi SQL Server Data Transformation Services (DTS), która była częścią SQL Server 7 i 2000. Poniższa tabela tracOto jak każda wersja programu SQL Server kształtowała narzędzie:
| Wersja | Szczegół |
| SQL Server 2005 | Microsoft Zespół zdecydował się na modernizację DTS. Jednak zamiast aktualizować DTS, postanowili nazwać produkt Integration Services (SSIS). |
| SQL Server 2008 | W SSIS wprowadzono wiele ulepszeń wydajności. Wprowadzono także nowe źródła. |
| SQL Server 2012 | Było to największe wydanie SSIS. Wraz z tą wersją wprowadzono model wdrażania projektów. 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. Dodano jednak nowe źródła i transformacje, które można było pobrać osobno za pośrednictwem CodePlex lub pakiet funkcji SQL Server. |
| SQL Server 2016 | Dodano przyrostowe wdrażanie pakietów, dzięki czemu pojedyncze pakiety można było przesyłać do istniejącego projektu. Katalog SSISDB zyskał obsługę grupy dostępności Always On, niestandardowe poziomy rejestrowania i nazwy kolumn błędów. Dodatkowe źródła danych w chmurze i Big Data pojawiły się za pośrednictwem Azure Pakiet funkcji. |
| SQL Server 2017 | Wprowadzono funkcję Scale Out, która rozkłada wykonywanie pakietów na wiele maszyn roboczych zarządzanych z jednego serwera głównego. SSIS po raz pierwszy mógł również działać w systemie Linux, a pakiety mogły być wdrażane w bazie danych SSISDB. Azure Baza danych SQL i wykonywana na Azure- Środowisko wykonawcze integracji SSIS w Azure Fabryka danych. |
| SQL Server 2019 | Ciche wydanie skupiające się na obsłudze plików w chmurze. Funkcje Flexible File Task i Flexible File Source/Destination ułatwiły pracę z plikami w chmurze. Azure pamięci masowej, w tym formaty Avro, ORC i Parquet (wymagają one Java (czas wykonania). |
| SQL Server 2022 | W zasadzie brak nowych funkcji SSIS. Silnik został zachowany bez zmian, MicrosoftInwestycje w integrację danych przesunęły się w kierunku Azure Data Factory i później Microsoft Tkanina. |
| SQL Server 2025 | Wydano w Microsoft Zapal się w listopadzie 2025 r. Głównym dodatkiem jest menedżer połączeń ADO.NET zbudowany na nowoczesnym MicrosoftDostawca .Data.SqlClient, wprowadzający TLS 1.3 i Microsoft Uwierzytelnianie Entra ID. Ta wersja usuwa lub wycofuje również wiele funkcji: komponenty Attunity CDC, zadania Hadoop, magazyn pakietów SSIS, starszą usługę Integration Services Service oraz 32-bitowy tryb wykonywania. |
Najważniejsze funkcje SSIS
Oto kilka ważnych funkcji SSIS:
- Środowiska studyjne
- Odpowiednie funkcje integracji danych
- Efektywna szybkość wdrożenia
- Ścisła integracja z innymi Microsoft Rodzina SQL
- Transformacja zapytań Data Mining
- Wyszukiwanie rozmyte i grupowanieping przemiany
- Termin Extractransformacje wyszukiwania terminów i encji
- Komponenty łączności danych o większej prędkości, takie jak łączność z SAP or Oracle
SSIS Architektura
Poniższy diagram pokazuje, jak główne komponenty SSIS są ze sobą powiązane, od przepływu sterowania po parametry:
Poniżej przedstawiono komponenty architektury SSIS:
- Przepływ sterowania (przechowuje kontenery i zadania)
- Przepływ danych (źródło, cel, transformacje)
- Obsługa zdarzeń (wysyłanie wiadomości, e-maili)
- Eksplorator pakietów (oferuje pojedynczy widok wszystkich elementów pakietu)
- Parametry (interakcja użytkownika)
Przyjrzyjmy się bliżej każdemu elementowi:
1. Kontroluj przepływ
Przepływ sterowania (Control Flow) to mózg pakietu SSIS. Pomaga on ustalić kolejność wykonywania wszystkich jego komponentów. Komponenty zawierają kontenery i zadania, którymi zarządzają ograniczenia priorytetowe.
2. Ograniczenia pierwszeństwa
Ograniczenia pierwszeństwa to komponenty pakietu, które nakazują wykonywanie zadań w predefiniowanej kolejności. Definiują one również przepływ pracy całego pakietu SSIS. Ograniczenie pierwszeństwa kontroluje wykonywanie dwóch powiązanych zadań poprzez wykonanie zadania docelowego na podstawie wyniku zadania wcześniejszego — reguł biznesowych definiowanych za pomocą wyrażeń specjalnych.
3. Zadanie
„Zadanie” to pojedyncza jednostka pracy. Jest tym samym, co metoda lub funkcja używana w języku programowania. Jednak w SSIS nie używa się metod kodowania. Zamiast tego, do ich konfiguracji używa się techniki „przeciągnij i upuść” na powierzchni projektu.
4. Pojemniki
Kontener jest jednostką grupyping Łączy zadania w jednostki pracy. Oprócz zapewnienia spójności wizualnej, pozwala również deklarować zmienne i procedury obsługi zdarzeń, które powinny znajdować się w zakresie danego kontenera.
W SSIS istnieją trzy typy kontenerów:
- Kontener sekwencji
- Pojemnik pętli For
- Kontener pętli Foreach
Kontener sekwencji: umożliwia organizowanie zadań podrzędnych według grupping je i umożliwia stosowanie transakcji lub przypisywanie rejestrowania do kontenera.
Kontener pętli For: Zapewnia tę samą funkcjonalność co kontener sekwencji, z tą różnicą, że pozwala również na wielokrotne uruchamianie zadań. Opiera się jednak na warunku oceny, takim jak loo.ping od 1 do 100.
Kontener pętli Foreach: pozwala również na toaletępingRóżnica polega na tym, że zamiast używać wyrażenia warunkowego, looping wykonuje się na zestawie obiektów, np. plikach w folderze.
5. Przepływ danych
Głównym zastosowaniem narzędzia SSIS jest np.tracPrzenosi dane do pamięci serwera, przetwarza je i zapisuje w innym miejscu docelowym. Jeśli Control Flow jest mózgiem, to Data Flow jest sercem SSIS.
6. Pakiety SSIS
Kolejnym kluczowym elementem SSIS jest pojęcie pakietu. Jest to zbiór zadań wykonywanych w uporządkowany sposób. W tym przypadku ograniczenia pierwszeństwa pomagają zarządzać kolejnością wykonywania zadań.
Pakiet może zapisywać pliki na serwerze SQL Server, w bazie danych msdb lub katalogu pakietów. Można go zapisać jako plik .dtsx, który jest plikiem strukturalnym bardzo podobnym do plików .rdl. Usługi raportowaniaPoniższa ilustracja przedstawia pakiet SSIS zapisany jako plik .dtsx:
7. Parametry
Parametry zachowują się podobnie jak zmienne, ale z kilkoma głównymi wyjątkami. Parametr można łatwo ustawić poza pakietem. Można go oznaczyć jako wartość, która musi zostać przekazana, aby pakiet się uruchomił.
Typy zadań SSIS
W narzędziu SSIS można dodać zadanie do przepływu sterowania. Istnieją różne typy zadań, które wykonują różne rodzaje pracy. Poniżej wymieniono kilka ważnych zadań SSIS:
| Nazwa zadania | OPIS |
| Wykonaj zadanie SQL | Jak sama nazwa wskazuje, wykonuje polecenie SQL na relacyjnej bazie danych. |
| Zadanie przepływu danych | Zadanie to może odczytywać dane z jednego lub większej liczby źródeł, przekształcać dane znajdujące się w pamięci i zapisywać je w jednym lub większej liczbie miejsc docelowych. |
| Zadanie przetwarzania usług analitycznych | Użyj tego zadania, aby przetworzyć obiekty modelu tabelarycznego lub kostki SSAS. |
| Wykonaj zadanie pakietu | Za pomocą tego zadania SSIS można wykonywać inne pakiety w ramach tego samego projektu. |
| Wykonaj zadanie procesowe | Za pomocą tego zadania możesz określić parametry wiersza poleceń. |
| Zadanie systemu plików | Wykonuje operacje na systemie plików, takie jak przenoszenie, zmiana nazw i usuwanie plików oraz tworzenie katalogów. |
| Zadanie FTP | Umożliwia wykonywanie podstawowych funkcji FTP. |
| Zadanie skryptowe | To jest puste zadanie. Możesz napisać kod .NET, który wykona dowolne zadanie. |
| Wyślij Mail Zadanie | Możesz wysłać wiadomość e-mail, aby powiadomić użytkowników, że Twoja paczka została ukończona lub że wystąpił błąd. |
| Zadanie wstawiania zbiorczego | Dane do tabeli można załadować za pomocą polecenia bulk insert. |
| Zadanie skryptowe | Uruchamia zestaw VB.NET lub kod C# wewnątrz visual Studio środowisko. |
| 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 pomoże Ci scalić, podzielić lub zmienić format dowolnego pliku XML. |
Inne ważne narzędzia ETL
SSIS jest jednym z wielu byłychtracPlatformy t-transform-load. Inne ważne narzędzia ETL obejmują:
- SAP Usługi danych
- Zarządzanie danymi SAS
- Oracle Konstruktor Magazynu (OWB)
- Informatyka Power Center
- IBM Serwer informacyjny InfoSphere
- Repertuar Elixir dla Data ETL
- Przepływ danych Sagent
Zalety 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 Visual Studio
- Standaryzowana integracja danych
- Oferuje możliwości oparte na komunikatach w czasie rzeczywistym
- Wsparcie dla modelu dystrybucji
- Pomaga wyeliminować sieć jako wąskie gardło utrudniające wprowadzanie danych przez SSIS do serwera SQL Server
- Umożliwia korzystanie z docelowego serwera SQL Server zamiast bazy danych OLE w celu szybszego ładowania danych
Wady SSIS
Oto kilka wad korzystania z narzędzia SSIS:
- Czasami stwarza problemy wWindows środowisk.
- Niejasna wizja i strategia.
- SSIS nie obsługuje alternatywnych stylów integracji danych.
- Problematyczna integracja z niektórymi innymi produktami.
Przykład najlepszych praktyk SSIS
Stosowanie kilku najlepszych praktyk sprawia, że pakiety SSIS są szybkie i łatwe w utrzymaniu:
- SSIS to potok danych działający w pamięci, dlatego ważne jest, aby upewnić się, że wszystkie transformacje odbywają się w pamięci.
- Staraj się minimalizować rejestrowane operacje.
- Zaplanuj wydajność, uwzględniając wykorzystanie zasobów.
- Zoptymalizuj transformację wyszukiwania SQL, źródło danych i miejsce docelowe.
- Zaplanuj i rozdysponuj poprawnie.


