pierwszy pakiet ssis

Mój pierwszy pakiet SSIS

SSIS, czyli SQL Server Integration Services jest przeznaczony do zadań migracji danych czyli ETL (Extrct, Transform, Load).

W tym ćwiczeniu stworzymy proste rozwiązanie, pobierające kursy walut z pliku zapisanego na dysku komputera. Jak źródło danych posłuży nam plik z kursami walut zapisany w formacie txt, gdzie tabulacja pełni rolę separatora kolumn. Pierwszy wiersz zawiera nazwy kolumn. Dane do ćwiczenia można pobrać ze strony: http://www.nbp.pl/kursy/kursya.html a następnie zapisać w pliku txt.

Tworzenie nowego projektu

Zaczynamy od uruchomienia SQL Server Data Tools, który jest częścią Visual Studio. W tym celu należy kliknąć na ikonę programu:

Po uruchomieniu programu zaczynamy nowy projekt wybierając z menu: File>>New>>Project … . Następnie wybieramy w sekcji Business Inteligence projekt typu Integration Services Project.

Zwróć uwagę na lokalizację projektu.

Control Flow

Po utworzeniu projektu pierwszym elementem jaki widzisz jest okno Control Flow czyli okno sterowania pakietem oraz „mózg” całego pakietu.

Przenieś na obszar Control Flow element z SSIS Toolbox o nazwie Data Flow Task.

Po przeniesieniu zobaczysz krzyżyk w czerwonym kółku wskazujący na to, że jest jakiś błąd – w tym przypadku brak definicji.

Kliknij dwukrotnie w lewą część ikony. System przeniesie cię do obszaru Data Flow.

Data Flow

Data Flow odpowiada za przepływ danych. Tutaj zatem musisz zdefiniować wszystkie elementy przepływu danych. Będą to: źródło danych, konwersja danych oraz destynacja (tabela docelowa).

Flat File Source

W celu dodania źródła danych wybierz element Flat File Source z SSIS Toolbox w części Other Sources.

W obszarze Data Flow zobaczysz ikonę zadania z informacją o błędach.

Kliknij dwukrotnie na to zadania w celu zdefiniowania wszystkich jego elementów.

W nowym oknie wybierz przycisk New … po prawej stronie i dodaj nazwę dla tego źródła oraz wybierz plik z kursami walut, który wcześniej utworzyłeś. System sam rozpozna jakie są separatory kolumn oraz kwalifikatory tekstu.

Następnie kliknij na Columns po lewej stronie okna. Zobaczysz zawartość pliku.

Teraz kliknij Advanced aby zmienić definicje poszczególnych kolumn. Istotnym elementem jest zmiana typu danych kursu waluty z tekstowego na walutowy.

Teraz należy zdefiniować tabele docelową, którą trzeba utworzyć w bazie danych MS SQL.

OLE DB Destination

W sekcji Other Destinations w SSIS Toolbox wybierz OLE DB Destination i przenieś w obszar Data Flow oraz połącz źródło z celem przeciągając zieloną strzałkę.

 

Ikonka OLE DB Destination zawiera czerwone ostrzeżenie o błędach, gdyż nie ma jeszcze definicji. Kliknij dwukrotnie na tej ikonie, aby zdefiniować wszystkie potrzebne elementy. Jako pierwsze należy zdefiniować połączenie do bazy danych. W tym celu w sekcji Connection Manager nowego okna kliknij New….

Teraz wybierz serwer oraz autentykację.

Możesz przeprowadzić test połączenia. Po kliknięciu OK musisz zdefiniować tabelę. Nie utworzyłeś jeszcze żadnej tabeli dlatego też wybierz przycisk New .. i nadaj nazwę nowej tabeli.

Teraz kliknij Mappings po lewej stronie okna.

Kliknij OK.

Execute Package

A teraz ustaw się na stworzonym pakiecie po prawej stronie w sekcji Solution Explorer i kliknij prawym przyciskiem myszy i wybierz Execute Package.

Kliknij lewym przyciskiem myszy w celu wykonania pakietu.

Po kliknięciu na link program zakończy wykonywanie zadania.

Sprawdzenie poprawności działania pakietu SSIS

A teraz przejdź do swojej bazy i sprawdź czy pojawiła się tabela z danymi.

W moim przypadku jest to skrypt:

USE nauka;
GO

SELECT *
FROM mojeKursy

Oraz wynik:

Odpowiedz

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>