By: Frissítve: Koen Verbeeck | Frissítve: Koen Verbeeck | Frissítve: Koen Verbeeck Az SQL Server Data Tools (SSDT) az Integrációs Szolgáltatások (SSIS) csomagok és projektek létrehozására és karbantartására szolgáló fejlesztőkörnyezet. Korábban nem volt visszafelé kompatibilitás, ami azt jelentette, hogy az SSDT újabb verziójával nem lehetett SSIS csomagokat készíteni az SSDT régebbi verziójához. Az SQL Server 2016-os kiadása óta az SQL Server Data Tools támogatja a visszafelé kompatibilitást az SQL Server 2012-ig. Ez az írás ismerteti az új funkciót.

Megoldás

Bevezetés

Történelmileg az SQL Server minden kiadásához tartozott egy üzletiintelligencia-fejlesztőkörnyezet kísérő kiadása. Ez mindig vagy a Visual Studio-ba telepített sablonkészlet volt, vagy ha a Visual Studio még nem volt jelen, akkor a Visual Studio egy olyan héja, amely csak BI-projektek kezelésére volt alkalmas. Ezzel az eszközzel Integration Services, Analysis Services és Reporting Services projekteket lehetett fejleszteni.Kezdetben az eszköz neve Business Intelligence Development Studio vagy BIDS volt.Az SQL Server 2012-ben átnevezték SQL Server Data Tools-ra. A Microsofnak azonban volt egy másik terméke is SQL Server Data Tools néven; ezzel az eszközzel SQL Server adatbázis-projekteket hozhatott létre és kezelhetett. A BI eszköz az SQL Server telepítő médián volt elérhető, míg az adatbázis-eszköz külön (és ingyenesen)letölthető volt. Mivel ez elég nagy zavart okozott, az SSDT-t átnevezték SQL ServerData Tools for Business Intelligence-re vagy SSDT-BI-re. Az SQL Server 2016 óta a BI-eszközöket összekapcsolták az adatbázis-eszközzel, és a teljes eszközkészlet neve mostantólSQL Server Data Tools vagy SSDT. Áttekintés:

  • SQL Server 2005 – Visual Studio 2005 (BIDS)
  • SQL Server 2008 és 2008R2 – Visual Studio 2008 (BIDS)
  • SQL Server 2012 – Visual Studio 2010 (SSDT, elérhető az SQL Server telepítési médián) vagy Visual Studio 2012 (SSDT-BI, külön letölthető)
  • SQL Server 2014 – Visual Studio 2013 (SSDT-BI, külön letölthető)
  • SQL Server 2016 – Visual Studio 2015 (SSDT, külön letölthető és adatbázis-projekteket is tartalmaz)
  • SQL Server 2017 – Visual Studio 2015 vagy Visual Studio 2017 (SSDT)

A probléma itt az volt, hogy az SSIS nem támogatta a visszafelé kompatibilitást.Ha például az SQL Server 2008-hoz akartunk csomagokat fejleszteni, akkor VisualStudio 2008-ra volt szükségünk. Ha SQL Server 2014-re akartál fejleszteni, akkor Visual Studio2013-ra volt szükséged. A Visual Studio 2013 segítségével nem lehetett SSIS-projekteket fejleszteni az SQL Server2008 vagy az SQL Server 2014 kivételével az SQL Server bármely más verziójához. Ez azt jelentette, hogyha az SSIS több verziójával dolgozott, akkor a Visual Studio számos különböző verziója volt a fejlesztőgépén.

Az SSDT legújabb kiadásai (az SQL Server 2016 óta) megoldják ezeket a problémákat: a visszafelé kompatibilitás bevezetésével az SSDT egyetlen verzióját használhatja az SSIS-projektek fejlesztésére és karbantartására a 2012-től a 2017-ig és későbbiekig. Fontos megjegyezni, hogy az SSAS és az SSRS már jó ideje támogatja a visszafelé kompatibilitást.

SSIS és a visszafelé kompatibilitás

A tipp további része a Visual Studio 2015 SSDT kiadásának használatával készült,az SQL Server 2016-tal együtt. A tippben szereplő összes tanács érvényes a későbbi verziókra is.

Először is telepítenünk kell a Visual Studio 2015SSDT előzetes kiadásának legújabb verzióját. Ha megnyitjuk az SQL Server 2016 telepítőmédiát, találhatunk egy linket a letöltési oldalra. Ez tartalmazza az SQL Server Management Studio (SSMS) letöltési oldalára mutató linket is, mivel ez már szintén külön letölthető.

Új projekt létrehozása

Az új projekt hozzáadásakor láthatjuk, hogy az SSDT-ben már adatbázist és BI-projekteket is létrehozhatunk.

A projekt tulajdonságaiban beállíthatja az SSIS célverzióját, amelyet az SSDT használni fog ehhez a projekthez.

Az alapértelmezett célverzió az SQL Server 2016 (az SSIS későbbi verzióiban ez lesz az SQL Server legújabb verziója). Az SQL Server 2014 és az SQL Server 2012 is támogatott, míg a régebbi verziók (2005 és 2008) nem. Ha az SQL Server 2012-nél régebbi projektjei vannak, először frissítenie kell azokat, mielőtt használhatná a legújabb SSDT-verziót.

A célverzió beállítása után az SSIS eszköztár ennek megfelelően alkalmazkodik. Például az SQL Server 2016-ban új Hadoop feladatok állnak rendelkezésre, és letölthetAzure feladatokat azAzure funkciócsomagból.

Az SQL Server 2014-es verzió beállításakor ezek az új feladatok eltűnnek az SSIS eszköztárból. Ugyanez igaz az SQL Server 2016-ban bevezetett adatfolyam-transzformációkra is.

A projekt verziójának módosításakor figyelmeztetést kap, hogy a meglévő csomagok módosulhatnak:

Ha azonban az SQL Server 2016 funkcióit használja, a célverzió korábbi verzióra történő beállítása után a csomag megnyitásakor hibaüzenetet kap:

A csomag ugyan megnyílik, de a sérelmezett feladatok, transzformációk vagy kapcsolatkezelők eltűnhetnek, vagy nem tudja megnyitni a szerkesztőt. Lehetséges, hogy az SQL Server 2016-ra való visszaváltás nem oldja meg a problémát: az objektum lehet, hogy továbbra is hibás. Ebben az esetben nincs más lehetőség, mint az objektum eltávolításaés újbóli hozzáadása.

A cikk írásakor néhány hiba létezik a célverziók közötti váltáskor. A lista megtalálható az MSDN blog bejegyzésébenWhat’s New for SSIS 2016 RC0? Lehetséges, hogy ezek közül néhányat már kijavítottak, amikor ezt olvassa.

Ha saját egyéni összetevői vannak az SSIS-ben, akkor néhány extra lépést kell tennie, hogy működjenek a célverzió tulajdonsággal. Az SQL Server MVP, Joost vanRossum Joost vanRossum elmagyarázza, hogyan teheti meg ezt az egyéni komponensek célkiszolgáló-verzióinak váltása című blogbejegyzésében.

Létező csomagok hozzáadása a projekthez

Ha egy korábbi verzióból származó meglévő SSIS csomagot ad hozzá a projekthez – például egy 2012-es SSIS csomagot egy 2016-os projekthez -, a csomagot a célverziónak megfelelően frissíti.

Ha a verziók megegyeznek, természetesen nem történik frissítés, a csomag közvetlenül hozzáadódik a projekthez. Lehet magasabb verziójú csomagokat is hozzáadni a projekthez,az SSIS megpróbálja visszaváltani őket.

A tesztelés azonban azt mutatja, hogy nem mindig lehet megbízni ebben az üzenetben. Még sikerüzenet esetén is tönkremehet a csomag, ha csak SQL Server 2016-os komponenseket használ.

Egy meglévő projekt megnyitása

Ha SSDT 2015-tel megnyit egy korábbi SSDT verzióval létrehozott projektet,a frissítési varázsló automatikusan beindul. Ez azt jelenti, hogy az összes csomagot frissíti az SQL Server 2016-ra.

Bár a projektet visszaállíthatja a korábbi verzióra, a frissítési folyamat végigjárása talán nem kívánatos. Alternatívaként szerkesztheti a projektfájlt, és hozzáadhatja a következő sort:

Ezzel az SSDT 2015 kihagyja a frissítési varázslót, és közvetlenül megnyitja a projektet a megfelelő célverzióval. Az SQL Server 2014 esetében az SQLServer2012-t természetesen SQLServer2014-re változtatja. Bár úgy tűnik, hogy ez a megoldás működik,a projektfájl XML-jének kézi szerkesztése nem igazán támogatott. Azt tanácsolom, hogy hozzon létre egy új üres projektet, állítsa be a célverziót, majd kezdje el a csomagok hozzáadását.

Control Flow Parts

A control flow parts bemutatása a tippbenSQL Server Integration Services 2016 Control Flow Templates Introduction (template-ről parts-ra lett átnevezve). Meglepő módon akkor is dolgozhat a vezérlőáramlási részekkel, ha a célverzió nem az SQL Server2016. Ez azért lehetséges, mert ezek egy tervezési idejű funkció, és nem befolyásolják a csomagok tényleges működését. Az itt bemutatott példában egy új projektet hoztam létre SQL Server 2014 célverzióval. Létrehoztam egy egyszerű vezérlésáramlási részt, és hozzáadtam a csomaghoz.

A csomag hibakeresése nem jelent problémát.

A csomagot egy SQL Server 2014 SSIS katalóguson belül is futtathatja:

Következtetés

A Target Server Version tulajdonság visszamenőleges kompatibilitást vezet beaz SSIS projekt SSDT 2015-ben. Ezzel az új képességgel az SSIS egy régi fájdalma végre megoldódott: a Visual Studio csak egyetlen verzióját használhatja a különböző SSIS-projektek kezeléséhez. Javasoljuk, hogy a kiszolgáló verzióját a projekt kezdetén állítsa be, és ne váltogassa túl gyakran, mert ez problémákhoz vezethet.A jó hír, hogy az SSDT 2015 és újabb verzióival a régebbi projektjeiben is használhatja a vezérlésáramlási részeket!

Következő lépések
  • Az SQL Server Data Tools különböző verzióiról bővebben:
    • TheSSDT Evolution
    • SQL 2014 CTP1, hol van a BIDS?
  • A vezérlőáramlási részekkel kapcsolatos további információkért tekintse meg azSQL Server Integration Services 2016 vezérlőáramlási sablonok bevezetése című tippet.
  • Az SQL Server 2016 további tippjeiért használja ezt az áttekintést.

Most Updated:

A szerzőről
Koen Verbeeck BI szakember, aki a Microsoft BI stackre specializálódott, különös szeretettel az SSIS iránt.
Minden tippem megtekintése
Kapcsolódó források

  • Még több üzleti intelligencia tipp…

Vélemény, hozzászólás?

Az e-mail-címet nem tesszük közzé.