Ładowanie danych do dedykowanej puli SQL w usłudze Azure Synapse Analytics przy użyciu usług SQL Server Integration Services (SSIS)
Dotyczy: Azure Synapse Analytics
Utwórz pakiet usług SQL Server Integration Services (SSIS), aby załadować dane do dedykowanej puli SQL w usłudze Azure Synapse Analytics. Opcjonalnie można zmienić strukturę, przekształcić i oczyścić dane, gdy przechodzą przez przepływ danych SSIS.
W tym artykule przedstawiono sposób wykonywania następujących czynności:
- Utwórz nowy projekt usług Integration Services w programie Visual Studio.
- Zaprojektuj pakiet usług SSIS, który ładuje dane ze źródła do miejsca docelowego.
- Uruchom pakiet usług SSIS, aby załadować dane.
Podstawowe pojęcia
Pakiet jest podstawową jednostką pracy w usłudze SSIS. Powiązane pakiety są grupowane w projektach. Projekty i pakiety projektowe są tworzone w programie Visual Studio przy użyciu narzędzi SQL Server Data Tools. Proces projektowania to proces wizualny, w którym można przeciągać i upuszczać składniki z przybornika do powierzchni projektowej, łączyć je i ustawiać ich właściwości. Po zakończeniu pakietu można go uruchomić i opcjonalnie wdrożyć go w programie SQL Server lub usłudze SQL Database w celu kompleksowego zarządzania, monitorowania i zabezpieczeń.
Szczegółowe wprowadzenie do usług SSIS wykracza poza zakres tego artykułu. Aby dowiedzieć się więcej, zobacz następujące artykuły:
Opcje ładowania danych do usługi Azure Synapse Analytics za pomocą usługi SSIS
SQL Server Integration Services (SSIS) to elastyczny zestaw narzędzi, które udostępniają różne opcje nawiązywania połączenia z usługą Azure Synapse Analytics i ładowania ich do usługi Azure Synapse Analytics.
Preferowaną metodą, która zapewnia najlepszą wydajność, jest utworzenie pakietu korzystającego z zadania przekazywania usługi Azure SQL DW w celu załadowania danych. To zadanie hermetyzuje zarówno informacje źródłowe, jak i docelowe. Przyjęto założenie, że dane źródłowe są przechowywane lokalnie w rozdzielanych plikach tekstowych.
Alternatywnie można utworzyć pakiet, który używa zadania przepływu danych zawierającego źródło i miejsce docelowe. Takie podejście obsługuje szeroką gamę źródeł danych, w tym programu SQL Server i usługi Azure Synapse Analytics.
Warunki wstępne
Do wykonania kroków tego samouczka potrzebne są następujące elementy:
usługi SQL Server Integration Services (SSIS). Usługa SSIS jest składnikiem programu SQL Server i wymaga licencjonowanej wersji lub wersji deweloperskiej lub ewaluacyjnej programu SQL Server. Aby uzyskać wersję ewaluacyjną programu SQL Server, zobacz
Evaluate SQL Server (Ocena programu SQL Server).Visual Studio (opcjonalnie). Aby uzyskać bezpłatną wersję Visual Studio Community Edition, zobacz Visual Studio Community. Jeśli nie chcesz instalować programu Visual Studio, możesz zainstalować tylko narzędzia SQL Server Data Tools (SSDT). Program SSDT instaluje wersję programu Visual Studio z ograniczoną funkcjonalnością.
Narzędzi SQL Server Data Tools for Visual Studio (SSDT). Aby pobrać SQL Server Data Tools (SSDT) dla Visual Studio, zobacz Pobieranie SQL Server Data Tools (SSDT).
baza danych i uprawnienia usługi Azure Synapse Analytics. Ten samouczek łączy się z dedykowaną pulą SQL usługi Azure Synapse Analytics i ładuje do tej puli dane. Musisz mieć uprawnienia do nawiązywania połączenia, tworzenia tabeli i ładowania danych.
Tworzenie nowego projektu usług Integration Services
Uruchom program Visual Studio.
Na menu Plik wybierz pozycję Nowy | Projekt.
Przejdź do zainstalowanych | Szablony | Business Intelligence | Integration Services typy projektów.
Wybierz Integration Services Project. Podaj wartości Name i Location, a następnie wybierz OK.
Zostanie otwarty program Visual Studio i zostanie utworzony nowy projekt usług Integration Services (SSIS). Następnie program Visual Studio otwiera projektanta dla jedynego nowego pakietu SSIS (Package.dtsx) w projekcie. Zobaczysz następujące obszary ekranu:
Po lewej stronie Przybornik komponentów SSIS.
W środku powierzchnia projektowa z wieloma kartami. Zazwyczaj używasz co najmniej kart przepływu sterowania oraz kart przepływu danych.
Po prawej stronie okienka Eksplorator rozwiązań i Właściwości .
Opcja 1 — użyj zadania przesyłania SQL DW
Pierwszym podejściem jest pakiet, który używa zadania SQL DW Upload. To zadanie hermetyzuje zarówno informacje źródłowe, jak i docelowe. Przyjęto założenie, że dane źródłowe są przechowywane w rozdzielanych plikach tekstowych lokalnie lub w usłudze Azure Blob Storage.
Wymagania wstępne dotyczące opcji 1
Aby kontynuować samouczek z tą opcją, potrzebne są następujące elementy:
Microsoft SQL Server Integration Services Feature Pack for Azure. Zadanie przesyłania SQL DW jest składnikiem pakietu Feature Pack.
Konto usługi Azure Blob Storage. Zadanie przesyłania SQL DW ładuje dane z Azure Blob Storage do Azure Synapse Analytics. Możesz załadować pliki, które znajdują się już w usłudze Blob Storage, lub załadować pliki z komputera. Jeśli wybierzesz pliki na swoim komputerze, zadanie przesyłania SQL DW najpierw przesyła je do usługi Microsoft Blob Storage w celu etapowania, a następnie ładuje je do dedykowanej puli SQL.
Dodawanie i konfigurowanie zadania przesyłania danych SQL DW
Przeciągnij zadanie przekazywania usługi SQL DW z przybornika do środka powierzchni projektowej (na karcie przepływ sterowania
). Kliknij dwukrotnie zadanie, aby otworzyć Edytor zadań przekazywania SQL DW .
Skonfiguruj zadanie za pomocą wskazówek w artykule Azure SQL DW Upload Task. Ponieważ to zadanie obejmuje zarówno informacje źródłowe, jak i docelowe, a także mapowania między tabelami źródłowymi i docelowymi, edytor zadań ma kilka stron ustawień.
Ręczne tworzenie podobnego rozwiązania
Aby uzyskać większą kontrolę, możesz ręcznie utworzyć pakiet, który emuluje pracę wykonywaną przez zadanie przesyłania SQL DW.
Użyj zadania przekazywania obiektów blob platformy Azure, aby przygotować dane w usłudze Azure Blob Storage. Aby pobrać zadanie przekazywania obiektów Blob na platformę Azure, pobierz pakiet funkcji Microsoft SQL Server Integration Services dla usługi Azure.
Następnie użyj zadania SSIS Wykonaj SQL, aby uruchomić skrypt PolyBase, który ładuje dane do dedykowanej puli SQL. Aby zobaczyć przykład ładowania danych z usługi Azure Blob Storage do dedykowanej puli SQL (ale z pominięciem SSIS), zobacz Samouczek: ładowanie danych do usługi Azure Synapse Analytics.
Opcja 2 — używanie źródła i miejsca docelowego
Drugie podejście to typowy pakiet, który używa zadania przepływu danych zawierającego źródło i miejsce docelowe. Takie podejście obsługuje szeroką gamę źródeł danych, w tym programu SQL Server i usługi Azure Synapse Analytics.
Ten samouczek używa programu SQL Server jako źródła danych. Program SQL Server działa lokalnie lub na maszynie wirtualnej platformy Azure.
Aby nawiązać połączenie z programem SQL Server i dedykowaną pulą SQL, możesz użyć menedżera połączeń ADO.NET oraz źródła i miejsca docelowego lub menedżera połączeń OLE DB oraz źródła i miejsca docelowego. W tym samouczku korzysta się z ADO.NET, ponieważ ma najmniej opcji konfiguracji. Baza danych OLE DB może zapewnić nieco lepszą wydajność niż ADO.NET.
Jako skrót możesz użyć Kreatora importu i eksportu programu SQL Server, aby utworzyć pakiet podstawowy. Następnie zapisz pakiet i otwórz go w programie Visual Studio lub SSDT, aby wyświetlić i dostosować go. Aby uzyskać więcej informacji, zapoznaj się z częścią Importowanie i eksportowanie danych za pomocą Kreatora importu i eksportu programu SQL Server.
Wymagania wstępne dotyczące opcji 2
Aby kontynuować samouczek z tą opcją, potrzebne są następujące elementy:
przykładowe dane. W tym samouczku użyto przykładowych danych przechowywanych w programie SQL Server w przykładowej bazie danych AdventureWorks jako danych źródłowych do załadowania do dedykowanej puli SQL. Aby uzyskać przykładową bazę danych AdventureWorks, zobacz AdventureWorks Sample Databases.
reguła zapory. Zanim będziesz mógł przekazać dane do dedykowanej puli SQL, musisz utworzyć regułę zapory na tej dedykowanej puli SQL, używając adresu IP swojego lokalnego komputera.
Tworzenie podstawowego przepływu danych
Przeciągnij zadanie przepływu danych z przybornika do środka powierzchni projektowej (na karcie przepływ sterowania
). Dwukrotnie kliknij Zadanie Przepływu Danych, aby przełączyć się na kartę Przepływ danych.
Z listy Inne źródła w Przyborniku przeciągnij element ADO.NET Source do powierzchni projektowej. Gdy źródłowy adapter jest nadal wybrany, zmień jego nazwę na źródło SQL Server w okienku Właściwości .
Z listy Inne destynacje w przyborniku przeciągnij ADO.NET Destination na obszar roboczy projektu, pod źródłem ADO.NET. Przy nadal wybranym adapterze docelowym, zmień jego nazwę na SQL DW destination w okienku właściwości .
Skonfiguruj adapter źródła
Kliknij dwukrotnie adapter źródła, aby otworzyć Edytor Źródła ADO.NET.
Na karcie Menedżer połączeń Edytora źródeł ADO.NETwybierz przycisk Nowy obok listy menedżer połączeń ADO.NET, aby otworzyć okno dialogowe Konfigurowanie menedżera połączeń ADO.NET ADO.NET i utwórz ustawienia połączenia dla bazy danych programu SQL Server, z której ten samouczek ładuje dane.
W oknie dialogowym Konfigurowanie Menedżera połączeń ADO.NET wybierz przycisk Nowy, aby otworzyć okno dialogowe menedżera połączeń i utworzyć nowe połączenie danych.
W oknie dialogowym Menedżera połączeń
wykonaj następujące czynności. W przypadkudostawcy
wybierz dostawcę danych SqlClient. W polu nazwa serwera wprowadź nazwę programu SQL Server.
W sekcji Zaloguj się do serwera wybierz lub wprowadź informacje dotyczące uwierzytelniania.
W sekcji Połącz z bazą danych wybierz przykładową bazę danych AdventureWorks.
Wybierz pozycję Testuj połączenie.
W oknie dialogowym, które raportuje wyniki testu połączenia, wybierz pozycję OK, aby powrócić do okna dialogowego menedżera połączeń .
W oknie dialogowym Menedżera połączeń
wybierz pozycję OK , aby powrócić do okna dialogowegoKonfigurowanie menedżera połączeń ADO.NET .
W oknie dialogowym Konfigurowanie menedżera połączeń ADO.NET ADO.NET wybierz przycisk OK, aby powrócić do edytora źródeł ADO.NET.
W edytorze źródła ADO.NET, na liście Nazwa tabeli lub widoku, wybierz tabelę Sales.SalesOrderDetail.
Wybierz pozycję Preview, aby w oknie dialogowym Podgląd wyników zapytania wyświetlić pierwsze 200 wierszy danych w tabeli źródłowej.
W oknie dialogowym Podgląd wyników zapytania wybierz Zamknij, aby powrócić do Edytora źródła ADO.NET.
W edytorze źródeł ADO.NETwybierz pozycję OK, aby zakończyć konfigurowanie źródła danych.
Łączenie karty źródłowej z kartą docelową
Wybierz adapter źródłowy na powierzchni projektowej.
Wybierz niebieską strzałkę, która rozciąga się od karty źródłowej i przeciągnij ją do edytora docelowego, aż zostanie wyświetlona.
W typowym pakiecie usług SSIS używasz kilku innych składników z przybornika usług SSIS między źródłem a miejscem docelowym, aby zmienić strukturę, przekształcić i oczyścić dane podczas przechodzenia przez przepływ danych usług SSIS. Aby ten przykład był jak najprostszy, łączymy źródło bezpośrednio z miejscem docelowym.
Skonfiguruj adapter docelowy
Kliknij dwukrotnie adapter docelowy, aby otworzyć edytor ADO.NET Destination .
Na karcie Menedżer połączeń edytora ADO.NET Destination Editorwybierz przycisk Nowy obok listy Menedżera połączeń , aby otworzyć okno dialogowe Konfigurowanie Menedżera połączeń ADO.NET i utworzyć ustawienia połączenia dla bazy danych Azure Synapse Analytics, do której ten samouczek ładuje dane.
W oknie dialogowym Konfigurowanie Menedżera połączeń ADO.NET wybierz przycisk Nowy, aby otworzyć okno dialogowe menedżera połączeń i utworzyć nowe połączenie danych.
W oknie dialogowym Menedżera połączeń
wykonaj następujące czynności. W przypadkudostawcy
wybierz dostawcę danych SqlClient. W polu nazwa serwera wprowadź nazwę dedykowanej puli SQL.
W sekcji Zaloguj się do serwera wybierz Uwierzytelnianie serwera SQL i wprowadź informacje o uwierzytelnianiu.
W sekcji Połącz z bazą danych wybierz istniejącą dedykowaną bazę danych puli SQL.
Wybierz Testuj połączenie.
W oknie dialogowym, które raportuje wyniki testu połączenia, wybierz pozycję OK, aby powrócić do okna dialogowego menedżera połączeń .
W oknie dialogowym Menedżera połączeń
wybierz pozycję OK , aby powrócić do okna dialogowegoKonfigurowanie menedżera połączeń ADO.NET .
W oknie dialogowym Konfigurowanie menedżera połączeń ADO.NET wybierz pozycję OK, aby powrócić do edytora docelowego ADO.NET.
W edytorze docelowym ADO.NETwybierz Nowy obok listy Użyj tabeli lub widoku, aby otworzyć okno dialogowe Tworzenie tabeli i utworzyć nową tabelę docelową z listą kolumn zgodną z tabelą źródłową.
W oknie dialogowym tworzenie tabeli wykonaj następujące czynności.
Zmień nazwę tabeli docelowej na SalesOrderDetail.
Usuń kolumnę rowguid. Typ danych uniqueidentifier nie jest obsługiwany w dedykowanej puli SQL.
Zmień typ danych kolumny LineTotal na pieniądze. Typ danych dziesiętny nie jest obsługiwany w dedykowanej puli SQL. Aby uzyskać informacje o obsługiwanych typach danych, zobacz CREATE TABLE (Azure Synapse Analytics, Parallel Data Warehouse).
Wybierz pozycję OK, aby utworzyć tabelę i wrócić do edytora docelowego ADO.NET.
W edytorze docelowym ADO.NETwybierz kartę Mapowania, aby zobaczyć, jak kolumny w źródle są mapowane na kolumny w miejscu docelowym.
Wybierz pozycję OK, aby zakończyć konfigurowanie miejsca docelowego.
Uruchamianie pakietu w celu załadowania danych
Uruchom pakiet, wybierając przycisk Start na pasku narzędzi lub wybierając jedną z opcji Uruchom w menu Debugowanie.
W poniższych akapitach opisano, co zobaczysz, jeśli pakiet został utworzony przy użyciu drugiej opcji opisanej w tym artykule, czyli z przepływem danych zawierającym źródło i miejsce docelowe.
Gdy pakiet zacznie działać, zobaczysz żółte koła obracające się, oznaczające aktywność i liczbę przetworzonych do tej pory wierszy.
Po zakończeniu działania pakietu zobaczysz zielone znaczniki wyboru wskazujące powodzenie i łączną liczbę wierszy danych załadowanych ze źródła do miejsca docelowego.
Gratulacje, pomyślnie użyto usług SQL Server Integration Services do załadowania danych do usługi Azure Synapse Analytics.