SQL Server 2005 Integration Services Kószó Károly rendszermérnök Microsoft Magyarország
Tartalom SQL Server Integration Services BI Development Studio Munkafolyam (control flow) és adatfolyam (data flow) A munkafolyam jellemzői Az adatfolyam jellemzői
SQL Server Integration Services Platform Nagy teljesítményű adat-integrációs megoldások építéséhez Extract-transform-load (ETL) csomagok az adatraktárak feltöltéséhez A DTS „utódja”, de új eszköz
BI Development Studio Business Intelligence Development Studio Az üzleti intelligencia projektek fejlesztőeszköze –Analysis Services –Reporting Services –Integration Services Visual Studio felület Project Integration Services projekt típus IS csomagok (package) Adatforrás nézetek (Data Source View) Egyéb fájlok Solution Egyéni beállítások, konfigurációk
A BI Development Studio eszközei Csomagszerkesztő Tulajdonságok (properties) Eszköztár (toolbox) Szerkesztő ablakok Változók Adatkapcsolatok … Tervező felület Control Flow Data Flow Event Handlers Package Explorer
demó BI Development Studio
Az Integration Services felépítése Csomag Konténerek Standard transzformációkTestre szabott transzformációk Adat-cél adapterek Adatforrás adapterek XML csomag XML csomag Parancssor Feladatok IS tervező Varázslók Esemény kezelők
Munkafolyam és adatfolyam Munkafolyam Folyamat központú Feladatokat (task) hajt végre A feladatok eredménye: siker, hiba, kész Változók (beállítás, olvasás, hatókör) Adatfolyam Adat központú Adatsorokat olvas és gyárt Több bemenet és több kimenet Felhasználhatja a változók értékeit
Munkafolyam és adatfolyam elemek Tipikus munkafolyam feladatok File System Task Execute SQL Task Send Mail Task … Data Flow Task Adatfolyam komponensek Adapterek (forrás, cél) –OLEDB, SQL Server, … Transzformációk –Oszlop másolás, konverzió, számított oszlop –Rendezés, aggregálás, illesztés –…
A munkafolyam jellemzői Feladatok (task) Precedenciák (precedence constraint) Konténerek Ciklus szervezés (loop) Események (event)
Munkafolyam: feladatok Adatbázis menedzsment feladatok File System Task File Transfer Protocol Task Execute Process Task Send Mail Task Execute SQL Task WMI Task MSMQ Task Execute Package Task ActiveX script … Data Flow Task
Munkafolyam: feladat Elemi munka egység Egyedileg sikeres, vagy sikertelen Egyedileg engedélyezett (enabled), vagy tiltott (disabled)
Munkafolyam: feltétel (constraint) A feladatokat köti össze Meghatározza a feladatok végrehajtási sorrendjét és feltételeit Sikeres, sikertelen AND/OR feltételek Feltétel kifejezés alapján
Munkafolyam: konténerek For Loop Foreach Loop Sequence Feladatok részhalmaza Logikai és/vagy vizuális csoportosítás Változó hatókör Enable/Disable Elágazás kifejezés alapján
Munkafolyam: ciklus szervezés Két speciális konténer For Loop –Kifejezés alapján Foreach Loop –Enumerátor alapján Változók feltöltése –Az iterációs értékekhez változók kapcsolhatók
Munkafolyam: eseménykezelés Valami történt (hiba) Egy speciális konténer, ami az esemény bekövetkezésekor fut Végrehajtási egységhez és eseményhez kötődik Hasonló a csomaghoz Blokkol
DTS Runtime - munkafolyam WMI források célok OLEDB Connection FTP HTTP FILE ODBC Managers CUSTOM FLATFILE Custom XML SQL Server Flat File FTP File OLEDB Connection FTP HTTP FILE ODBC Managers CUSTOM FLATFILE WEB FTP DB XML Task FILE FTP Task FTP Web Services Task HTTP Data Flow Task ODBC … FILE … Custom Containers WMI Event Task WMI Event Handlers Send Mail Task Variables Log Providers Task Host Custom Task Variables Log Providers XML File
demó Munkafolyam
Az adatfolyam elemei Komponensek Ösvények Gráf Adapterek Forrás, cél Transzformációk
Az adatfolyam jellemzői Komponensek tetszőleges gráfja több bemenet, több kimenet A ki- és bemeneteket ösvények kötik össze Egy speciális feladat (task)
Komponensek és ösvények Komponensek Adatforrás adapterek –OLE DB, síkfájl, XML, … Adat-cél adapterek –OLE DB, síkfájl, SQL Server, OLAP feldolgozás, … Transzformációk –Egysoros (számított oszlop, konverzió, lookup, …) –Halmaz alapú (rendezés, aggregálás, merge join, pivot, …) –Több ki-, vagy bemenet (Union All, Multicast, Conditional Split) Ösvények A gráfban két komponens közötti út Hordozzák az oszlopok meta-adatait
Az adatfolyam XML DB Sources Flat File Dests OLEDB Data Source ODBC CUSTOM Raw Adapters FLATFILE RAW Custom DB Flat File Custom File OLEDB Data Destination ODBC CUSTOM Raw Adapters FLATFILE Számított oszlop Feltételes szétválasztás Aggregálás Fuzzy Lookup Merge Join RAW
demó Munka- és adatfolyam
DTS – Integration Services Adatpumpa Egy input/output Ciklus „kezelés” Ön-módosító csomag Dinamikus tulajdonságok (Lassú) szkriptek Data Flow Task Több input/output For(each) Loop Definiált érvényességi körű változók Konfigurációk; változó alapú tulajdonságok Beépített (gyors) transzformációk
Migráció DTS 2000 runtime Az SQL Server upgrade után a régi csomagok működőképesek maradnak Az SQL2005 UI-ból elérhető a DTS 2000 csomagszerkesztő DTS 2000 package task az IS munkafolyamban Upgrade tanácsadó A DTS 2000 csomagok felülvizsgálata, jelentés a várható problémákról Migrációs varázsló Amit lehet, átalakít Amit nem, becsomagol
Fejlett jellemzők Munkafolyam Konfigurációk Naplózás Belövés (töréspontok, …) Eseménykezelés Adatfolyam Hiba kimenetek
Összegzés, további információ Az Integration Services egy valódi, nagy teljesítményű ETL eszköz Az SQL Server 2005 része A Forrester jelentés: productinfo/foresterreport.asp