Integration Services タスク
タスクとは、パッケージ制御フローで実行される作業の単位を定義する、制御フローの要素のことです。 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 データ ツール (SSDT) に含まれる [プロパティ] ウィンドウから構成できます。 パッケージには、6 つの SQL 実行タスクなど、同じ種類の複数のタスクを含めることができ、各タスクは個別に構成できます。 詳細については、「タスクまたはコンテナーのプロパティを設定する」を参照してください。
タスクの連結とグループ
タスクに複数のタスクが含まれる場合、それらのタスクは優先順位制約によって順序が決定され、制御フロー内で連結されます。 詳細については、「優先順位制約」を参照してください。
タスクをグループ化して 1 つの作業単位として実行したり、ループ内で繰り返すことができます。 詳細については、「Foreach ループ コンテナー」、「For ループ コンテナー」、および「シーケンス コンテナー」を参照してください。
関連タスク
関連コンテンツ
|