DTSX ファイル形式とは?
.dtsx ファイルは、Microsoft SQL Server Integration Services (SSIS) で使用される XML ベースの ETL (抽出、変換、ロード) パッケージ定義です。SQL Server 2005 で導入された .dtsx は、SQL Server 2000 のバイナリ形式の Data Transformation Services パッケージを置き換えました。
このファイルはプレーンな UTF-8 XML ドキュメントであり、ルート要素は www.microsoft.com/SqlServer/Dts 名前空間で宣言された <DTS:Executable> です。これには、以下を含む SSIS ETL ワークフローの完全な定義がエンコードされています。
- 制御フローのタスク、コンテナ、および優先順位制約
- データフローパイプライン (ソース、変換、変換先)
- 接続マネージャー、変数、およびイベントハンドラー
- パッケージ構成と保護設定
パッケージは、SQL Server Data Tools (SSDT) 拡張機能を備えた Visual Studio で作成され、プロジェクトファイル (.dtproj) やオプションの 構成ファイル (.dtsConfig) と共に管理されます。プロジェクトがプロジェクトデプロイメントモデル用にビルドされると、すべてのパッケージは .ispac アーカイブ にまとめられます。実行時には、コマンドラインツールの DTExec.exe または SQL Server インスタンス上でホストされる SSIS カタログ (SSISDB) によって実行されます。
パスワードなどの機密性の高い接続プロパティは、ProtectionLevel 属性によって保護されます。これは、ユーザーキーまたはパスワードを使用した複数の暗号化モードをサポートしています。パッケージには、ロード時に検証される XML デジタル署名を含めることもできます。
.dtsx はプレーンな XML であるため、任意のテキストエディタで開いて内容を確認できますが、XML 構造が複雑であるため、複雑なパッケージの手動編集は推奨されません。
セキュリティと安全性
リスク: MEDIUM.dtsx は XML ですが、接続文字列や (ProtectionLevel に応じて) 暗号化された資格情報を埋め込むことができ、SQL、スクリプト、ファイル操作を実行するように構成できます。信頼できないソースからのパッケージは、実行時に強力なアクションを実行する可能性があります。不明なパッケージを実行する前に XML を確認し、信頼できないものは決して実行しないでください。EncryptSensitiveWithUserKey で作成されたパッケージは、元の作成者のマシン/アカウントでのみ機密値を復号できます。
形式の詳細
概要www.microsoft.com/SqlServer/Dts 名前空間の <DTS:Executable> です。«<?xml» の前に UTF-8 BOM (EF BB BF) が付く場合があります。
DTSX ファイルを開くプログラム
DTExec /FILE package.dtsx を実行するか、SSIS カタログにデプロイして SSMS から実行します。 技術的詳細
詳細仕様| ファイルエンコーディング | UTF-8 XML テキスト |
| マジックバイト | オフセット 0 に 3C 3F 78 6D 6C («<?xml»)。オプションで UTF-8 BOM (EF BB BF) が先行する場合がある |
| ルート XML 要素 | 名前空間 www.microsoft.com/SqlServer/Dts 内の <DTS:Executable> |
| MIME タイプ | application/xml (または text/xml) |
| 内部バージョン属性 | PackageFormatVersion 属性がパッケージのターゲットとする SQL Server リリースをエンコード (例: SQL Server 2019 の場合は値 8) |
| 暗号化 | ProtectionLevel 属性が EncryptSensitiveWithUserKey、EncryptSensitiveWithPassword、EncryptAllWithUserKey、EncryptAllWithPassword、または DontSaveSensitive をサポート |
| デジタル署名 | オプションの XML デジタル署名。CheckSignatureOnLoad プロパティにより実行時の署名検証を強制 |
| パッケージコンポーネント | 制御フロー (タスク、コンテナ、優先順位制約)、データフローパイプライン、接続マネージャー、変数、パラメータ、およびイベントハンドラーを単一の XML ドキュメントにエンコード |
| 一般的なファイルサイズ | 単純なパッケージでは数 KB、多くのコンポーネントを持つ複雑なマルチタスクパッケージでは数 MB |
| デプロイメント成果物 | プロジェクトデプロイメントモデルでは、パッケージはコンパイルされ .ispac アーカイブにまとめられる |
| 実行環境 | DTExec.exe コマンドラインユーティリティ、SQL Server エージェントジョブステップ、またはクラウド内の Azure-SSIS Integration Runtime |
| 作成環境 | SSDT (SQL Server Data Tools) SSIS Projects 拡張機能を備えた Visual Studio |
| カタログストレージ | デプロイされたパッケージは、SQL Server 上の SSISDB データベース (SSIS カタログ) に保存され、そこから実行される |
| 関連する付属ファイル | 外部構成用の .dtsConfig、共有接続マネージャー用の .conmgr、Visual Studio プロジェクト定義用の .dtproj |
| プラットフォーム | Windows (SSIS ランタイム)。Azure Data Factory 内の Azure-SSIS Integration Runtime を介して Azure に拡張 |
| リリース日 | 2005 (SQL Server 2005 introduced SSIS, replacing SQL Server 2000 DTS) |
| 最新バージョン | SSIS package format tracks SQL Server releases (2005-2022 and Azure-SSIS) |
| 仕様書 | learn.microsoft.com |
DTSX の変換
コミュニティ Q&A
ユーザーからの質問まだ質問はありません。DTSX ファイルについて最初の質問をしてみましょう。
よくある質問
DTSX ファイルを開くプログラムは何ですか?
Visual Studio なしで DTSX を開くことはできますか?
DTSX パッケージを実行するにはどうすればよいですか?
DTExec /FILE package.dtsx を使用するか、SQL Server エージェントジョブ経由で実行するか、SSIS カタログ (SSISDB) にデプロイして SSMS から実行します。