Integration Services タスク

適用対象:SQL Server Azure Data Factory の SSIS Integration Runtime

タスクとは、パッケージ制御フローで実行される作業の単位を定義する、制御フローの要素のことです。 SQL Server Integration Services パッケージは、1 つ以上のタスクで構成されます。 パッケージに複数のタスクが含まれる場合、それらのタスクは優先順位制約によって順序が決定され、制御フロー内で連結されます。

また、COM をサポートする Visual Basic などのプログラミング言語や、C# などの .NET プログラミング言語を使用して、カスタム タスクを記述することもできます。

SSIS デザイナーは、パッケージを操作するための SQL Server Integration Services のグラフィック ツールであり、パッケージ制御フローを作成するためのデザイン画面、およびタスクを構成するためのカスタム エディターが用意されています。 また、SQL Server Integration Services オブジェクト モデルをプログラムし、プログラムによってパッケージを作成することもできます。

タスクの種類

Integration Services には、次の種類のタスクが含まれます。

[データ フロー タスク]
データ フローを実行して、データの抽出、列レベルの変換の適用、およびデータの読み込みを行うタスクです。

データ準備タスク
ファイルやディレクトリのコピー、ファイルやデータのダウンロード、Web メソッドの実行、XML ドキュメントへの操作の適用、および最適化のためのデータのプロファイルを行うタスクです。

ワークフロー タスク
別のプロセスと通信して、パッケージの実行、プログラムまたはバッチ ファイルの実行、パッケージ間のメッセージの送受信、電子メール メッセージの送信、Windows Management Instrumentation (WMI) データの読み取り、および WMI イベントの監視を行うタスクです。

SQL Server のタスク
SQL Server のオブジェクトとデータにアクセスし、コピー、挿入、削除、および変更を行うタスクです。

スクリプト タスク
スクリプトを使用して、パッケージ機能を拡張するタスクです。

Analysis Services のタスク
Analysis Services オブジェクトを作成、変更、削除、および処理するタスクです。

メンテナンス タスク
SQL Server データベースのバックアップと圧縮、インデックスの再構築と再編成、 SQL Server エージェント ジョブの実行などの管理機能を実行するタスクです。

カスタム タスク
COM をサポートする Visual Basic などのプログラミング言語や、C# などの .NET プログラミング言語を使用して、カスタム タスクを記述することもできます。 SSIS デザイナーでカスタム タスクにアクセスする場合、タスク用のユーザー インターフェイスを作成して登録できます。 詳細については、「 カスタム タスクの開発」を参照してください。

タスクの構成

Integration Services パッケージには、1 つのタスクを含めることができます。たとえば、パッケージの実行時にデータベース テーブルのレコードを削除する、SQL 実行タスクを含めます。 ただし、通常のパッケージには複数のタスクが含まれており、各タスクはパッケージ制御フローのコンテキスト内で実行されるように設定されます。 イベント ハンドラーは、ランタイム イベントに応答して実行されるワークフローであり、ここにも複数のタスクを含めることができます。

SSIS デザイナーを使用してパッケージにタスクを追加する方法の詳細については、「 制御フローのタスクまたはコンテナーを追加または削除する」を参照してください。

プログラムによってパッケージにタスクを追加する方法の詳細については、「 プログラムによるタスクの追加」を参照してください。

各タスクは、 SSIS デザイナーで用意されている、各タスク用のカスタム ダイアログ ボックスを使用して、個別に構成できます。または、 SQL Server Data Tools (SSDT)に含まれる [プロパティ] ウィンドウから構成できます。 パッケージには、6 つの SQL 実行タスクなど、同じ種類の複数のタスクを含めることができ、各タスクは個別に構成できます。 詳細については、「 タスクまたはコンテナーのプロパティを設定する」を参照してください。

タスクの連結とグループ

タスクに複数のタスクが含まれる場合、それらのタスクは優先順位制約によって順序が決定され、制御フロー内で連結されます。 詳細については、「 優先順位制約」を参照してください。

タスクをグループ化して 1 つの作業単位として実行したり、ループ内で繰り返すことができます。 詳細については、「 Foreach ループ コンテナー」、「 For ループ コンテナー」、および「 シーケンス コンテナー」を参照してください。

制御フローのタスクまたはコンテナーを追加または削除する