Wat is het DTSX-bestandsformaat?
Een .dtsx-bestand is een op XML gebaseerde ETL (Extract, Transform, Load) pakketdefinitie die wordt gebruikt door Microsoft SQL Server Integration Services (SSIS). Geïntroduceerd met SQL Server 2005, verving .dtsx de binaire Data Transformation Services-pakketten van SQL Server 2000.
Het bestand is een plat UTF-8 XML-document waarvan het root-element <DTS:Executable> is, gedeclareerd in de www.microsoft.com/SqlServer/Dts namespace. Het codeert de volledige definitie van een SSIS ETL-workflow, inclusief:
- Control flow-taken, containers en precedence constraints
- Data flow-pipelines (bronnen, transformaties, bestemmingen)
- Connection managers, variabelen en event handlers
- Pakketconfiguratie en beveiligingsinstellingen
Pakketten worden geschreven in Visual Studio met de SQL Server Data Tools (SSDT) extensie, waar ze samenstaan met een projectbestand (.dtproj) en optionele configuratiebestanden (.dtsConfig). Wanneer een project wordt gebouwd voor het project-implementatiemodel, worden alle pakketten gebundeld in een .ispac-archief. Tijdens runtime worden pakketten uitgevoerd door de opdrachtregeltool DTExec.exe of door de SSIS Catalog (SSISDB) gehost op een SQL Server-instantie.
Gevoelige verbindingseigenschappen zoals wachtwoorden worden beschermd door het ProtectionLevel-attribuut, dat verschillende versleutelingsmodi ondersteunt met behulp van een gebruikerssleutel of een wachtwoord. Pakketten kunnen ook een digitale XML-handtekening bevatten die bij het laden wordt geverifieerd.
Omdat .dtsx platte XML is, kan elke teksteditor het openen en inspecteren, hoewel het handmatig bewerken van complexe pakketten niet wordt aanbevolen vanwege de ingewikkelde XML-structuur.
Beveiliging & veiligheid
RISICO: MEDIUMEen .dtsx is XML, maar het kan verbindingsreeksen en (per ProtectionLevel) versleutelde inloggegevens bevatten, en het kan worden geconfigureerd om SQL, scripts en bestandsbewerkingen uit te voeren - een pakket van een onbetrouwbare bron kan krachtige acties uitvoeren wanneer het wordt uitgevoerd. Controleer de XML voordat u een onbekend pakket uitvoert en voer er nooit een uit die u niet vertrouwt. Pakketten die zijn gebouwd met EncryptSensitiveWithUserKey ontsleutelen gevoelige waarden alleen op de machine/het account van de oorspronkelijke auteur.
Formaatdetails
in een notendopProgramma's die DTSX-bestanden openen
Technische details
diepe specificaties| Bestandscodering | UTF-8 XML-tekst |
| Magic bytes | 3C 3F 78 6D 6C („<?xml”) op offset 0; optioneel voorafgegaan door UTF-8 BOM (EF BB BF) |
| Root XML-element | <DTS:Executable> in namespace www.microsoft.com/SqlServer/Dts |
| MIME-type | application/xml (ook text/xml) |
| Intern versie-attribuut | Het PackageFormatVersion-attribuut codeert de SQL Server-release waar het pakket zich op richt (bijv. waarde 8 voor SQL Server 2019) |
| Versleuteling | ProtectionLevel-attribuut ondersteunt EncryptSensitiveWithUserKey, EncryptSensitiveWithPassword, EncryptAllWithUserKey, EncryptAllWithPassword, of DontSaveSensitive |
| Digitale handtekening | Optionele digitale XML-handtekening; CheckSignatureOnLoad-eigenschap dwingt verificatie van de handtekening af tijdens runtime |
| Pakketcomponenten | Codeert control flow (taken, containers, precedence constraints), data flow-pipelines, connection managers, variabelen, parameters en event handlers in een enkel XML-document |
| Typische bestandsgrootte | Enkele KB voor eenvoudige pakketten; verscheidene MB voor complexe pakketten met veel componenten |
| Implementatie-artefact | Pakketten worden gecompileerd en gebundeld in een .ispac-archief voor het project-implementatiemodel |
| Runtime-executor | DTExec.exe opdrachtregelprogramma; SQL Server Agent-taakstappen; of Azure-SSIS Integration Runtime in de cloud |
| Ontwerpomgeving | Visual Studio met SSDT (SQL Server Data Tools) SSIS Projects-extensie |
| Catalogusopslag | Geïmplementeerde pakketten worden opgeslagen en uitgevoerd vanuit de SSISDB-database (SSIS Catalog) op SQL Server |
| Gerelateerde bijbehorende bestanden | .dtsConfig voor externe configuratie; .conmgr for gedeelde connection managers; .dtproj voor de Visual Studio-projectdefinitie |
| Platform | Windows (SSIS-runtime); uitgebreid naar Azure via Azure-SSIS Integration Runtime in Azure Data Factory |
| Uitgebracht | 2005 (SQL Server 2005 introduced SSIS, replacing SQL Server 2000 DTS) |
| Laatste versie | SSIS package format tracks SQL Server releases (2005-2022 and Azure-SSIS) |
| Specificatie | learn.microsoft.com |
DTSX conversies
Community V&A
gevraagd door gebruikersNog geen vragen - wees de eerste om iets te vragen over DTSX-bestanden.