Integration Services プログラミングの概要

SQL Server Integration Services のアーキテクチャでは、データの移動と変換がパッケージの制御フローと管理から分離されています。 このアーキテクチャを定義し、Integration Services のプログラムでの自動化および拡張を可能にする、次の 2 種類のエンジンがあります。 1 つはランタイム エンジンで、制御フローとパッケージ管理のインフラストラクチャを実装します。開発者は、このインフラストラクチャによって、実行フローを制御し、ログ記録、イベント ハンドラー、および変数用のオプションを設定できます。 もう 1 つはデータ フロー エンジンで、特殊でパフォーマンスの高いエンジンであり、データの抽出、変換、および読み込みを専門に行います。 Integration Services のプログラムの際には、これら 2 つのエンジンに対してプログラムを実行します。

次の図は、Integration Services のアーキテクチャを示しています。

Integration Services のアーキテクチャ

Integration Services ランタイム エンジン

Integration Services ランタイム エンジンは、実行順序、ログ記録、変数、およびイベント処理を可能にするインフラストラクチャを実装することによって、パッケージの管理と実行を制御します。 Integration Services ランタイム エンジンをプログラミングすることにより、開発者はパッケージの作成、構成、および実行を自動化し、カスタム タスクやその他の拡張機能を作成できます。

詳細については、「スクリプト タスクによるパッケージの拡張」、「カスタム タスクの開発」、および「プログラムによるパッケージの作成」を参照してください。

Integration Services データ フロー エンジン

データ フロー エンジンは、データ フロー タスクを管理します。データ フロー タスクは特殊でパフォーマンスの高いタスクで、さまざまなソースからのデータの移動および変換を専門に行います。 他のタスクと異なり、データ フロー タスクには、変換元、変換、変換先のいずれかになるデータ フロー コンポーネントと呼ばれるオブジェクトが追加で含まれています。 これらのコンポーネントはタスクの主要な稼働部分で、 データの移動および変換を定義します。 データ フロー エンジンをプログラムすることにより、開発者はデータ フロー タスク内のコンポーネントの作成および構成を自動化し、カスタム コンポーネントを作成できます。

詳細については、「スクリプト コンポーネントによるデータ フローの拡張」、「カスタム データ フロー コンポーネントの開発」、および「プログラムによるパッケージの作成」を参照してください。

サポートされる言語

Integration Services では、Microsoft .NET Framework が完全にサポートされています。 開発者は、.NET 準拠の言語から選択して Integration Services をプログラムできます。 ランタイム エンジンもデータ フロー エンジンも、ネイティブ コードで記述されますが、完全マネージ オブジェクト モデルを介して使用できます。

Integration Services パッケージ、カスタム タスク、およびコンポーネントは、Microsoft Visual Studio または別のコード エディターやテキスト エディターでプログラミングできます。 Visual Studio には、コーディング、デバッグ、およびテストの反復的なサイクルを簡略化および高速化する多数のツールや機能が開発者向けに用意されています。 また、Visual Studio を使用すると、配置も容易になります。 ただし、Integration Services コード プロジェクトのコンパイルと構築に Visual Studio は必要ありません。 .NET Framework SDK には、Visual Basic コンパイラと Visual C# コンパイラ、および関連ツールが含まれています。

重要な注意事項重要

既定では、.NET Framework は SQL Server と共にインストールされますが、.NET Framework SDK はインストールされません。 SDK がコンピューターにインストールされておらず、SDK ドキュメントがオンライン ブック コレクションにも含まれていない場合、このセクションの SDK コンテンツへのリンクは機能しません。 .NET Framework SDK をインストールしたら、「SQL Server の製品ドキュメントの追加または削除」の手順に従って、SDK ドキュメントをオンライン ブック コレクションと目次に追加できます。

Integration Services スクリプト タスクおよびスクリプト コンポーネントでは、Microsoft Visual Studio Tools for Applications (VSTA) を埋め込みスクリプト環境として使用します。 VSTA による Microsoft Visual Basic および Microsoft Visual C# のサポート

注意

Integration Services アプリケーション プログラミング インターフェイスは、VBScript などの COM ベースのスクリプト言語と互換性がありません。

アセンブリの場所

SQL Server 2012 では、Integration Services アセンブリが .NET 4 にアップグレードされました。 <drive>:\Windows\Microsoft.NET\assembly に、.NET 4 用の別のグローバル アセンブリ キャッシュが用意されています。 すべての Integration Services アセンブリは、通常、このパスの GAC_MSIL フォルダーにあります。

以前のバージョンの SQL Server と同様に、Integration Services のコア機能拡張 .dll ファイルは <drive>:\Program Files\Microsoft SQL Server\100\SDK\Assemblies にあります。

通常使用されるアセンブリ

次の表は、.NET Framework を使用する Integration Services をプログラムするときに頻繁に使用されるアセンブリの一覧です。

アセンブリ

説明

Microsoft.SqlServer.ManagedDTS.dll

マネージ ランタイム エンジンが含まれています。

Microsoft.SqlServer.RuntimeWrapper.dll

ネイティブ ランタイム エンジン用のプライマリ相互運用機能アセンブリ (PIA)、つまりラッパーが含まれています。

Microsoft.SqlServer.PipelineHost.dll

マネージ データ フロー エンジンが含まれています。

Microsoft.SqlServer.PipelineWrapper.dll

ネイティブ データ フロー エンジン用のプライマリ相互運用機能アセンブリ (PIA)、つまりラッパーが含まれています。

Integration Services のアイコン (小) 最新の Integration Services の入手

マイクロソフトが提供する最新のダウンロード、アーティクル、サンプル、ビデオ、およびコミュニティで選択されたソリューションについては、MSDN の Integration Services のページを参照してください。


これらの更新が自動で通知されるようにするには、ページの RSS フィードを定期受信します。