SSIS カタログ

SSISDB カタログは、Integration Services サーバーに配置した Integration Services (SSIS) プロジェクトを操作するための中核となります。 たとえば、プロジェクト パラメーターとパッケージ パラメーターの設定、パッケージに合わせたランタイム値を指定するための環境の構成、パッケージの実行およびトラブルシューティング、Integration Services サーバー操作の管理を行います。

SSISDB カタログに格納されているオブジェクトには、プロジェクト、パッケージ、パラメーター、環境、および操作履歴があります。

SSISDB カタログに格納されているオブジェクト、設定、および業務データを検査するには、SSISDB データベースのビューに対してクエリを実行します。 オブジェクトを管理するには、SSISDB データベースのストアド プロシージャを呼び出すか、SSISDB カタログの UI を使用します。 多くの場合、UI でもストアド プロシージャの呼び出しでも同じタスクを実行できます。

SSISDB データベースを保守するには、ユーザー データベースの管理に標準的なエンタープライズ ポリシーを適用することをお勧めします。 メンテナンス プランの作成については、「メンテナンス プラン」を参照してください。

SSISDB カタログおよび SSISDB データベースは、Windows PowerShell をサポートしています。 Windows PowerShell による SQL Server の使用の詳細については、「SQL Server PowerShell」を参照してください。 Windows PowerShell を使用してプロジェクトの配置などのタスクを実行する方法の例については、blogs.msdn.com のブログ エントリ「SQL Server 2012 での SSIS と PowerShell」を参照してください。

操作データの表示に関する詳細については、「パッケージの実行およびその他の操作の監視」を参照してください。

SQL Server Management Studio の SSISDB カタログにアクセスするには、SQL Server データベース エンジンに接続し、オブジェクト エクスプローラーで [Integration Services カタログ] ノードを展開します。 SQL Server Management Studio で SSISDB データベースにアクセスするには、オブジェクト エクスプローラーで [データベース] ノードを展開します。

注意

SSISDB データベースの名前は変更できません。

注意

SSISDB データベースがアタッチされている SQL Server インスタンスが停止したか、応答しない場合、ISServerExec.exe プロセスは終了します。 メッセージが Windows イベント ログに書き込まれます。

クラスター フェールオーバーの一環として SQL Server リソースがフェールオーバーした場合、実行中のパッケージは再開されません。 チェックポイントを使用してパッケージを再開できます。 詳細については、「チェックポイントを使用してパッケージを再開する」を参照してください。

カタログ オブジェクト識別子

カタログに新しいオブジェクトを作成するときは、オブジェクトに名前を割り当てる必要があります。 オブジェクト名が識別子となります。 SQL Server では、識別子に使用できる文字のルールが定義されています。 次のオブジェクトの名前は、識別子のルールに従っている必要があります。

  • フォルダー

  • プロジェクト

  • 環境

  • パラメーター

  • 環境変数

フォルダー、プロジェクト、環境

フォルダー、プロジェクト、または環境の名前を変更するときは、次のルールを考慮します。

  • 無効な文字には、ASCII/Unicode 文字 1 ~ 31、引用符 (")、小なり (<)、大なり (>)、パイプ (|)、バックスペース (\b)、null (\0)、タブ (\t) などがあります。

  • 名前の先頭または末尾にスペースを含めることはできません。

  • 名前を @ で始めることはできませんが、先頭以外では @ を使用できます。

  • 名前の長さは 1 ~ 128 文字にする必要があります。

パラメーター

パラメーターに名前を付けるときは、次のルールを考慮します。

  • 名前の最初の文字は、Unicode Standard 2.0 に定義されている文字か、アンダースコア (_) である必要があります。

  • 2 番目以降の文字では、Unicode Standard 2.0 に定義されている文字または数字と、アンダースコア (_) を使用できます。

環境変数

環境変数に名前を付けるときは、次のルールを考慮します。

  • 無効な文字には、ASCII/Unicode 文字 1 ~ 31、引用符 (")、小なり (<)、大なり (>)、パイプ (|)、バックスペース (\b)、null (\0)、タブ (\t) などがあります。

  • 名前の先頭または末尾にスペースを含めることはできません。

  • 名前を @ で始めることはできませんが、先頭以外では @ を使用できます。

  • 名前の長さは 1 ~ 128 文字にする必要があります。

  • 名前の最初の文字は、Unicode Standard 2.0 に定義されている文字か、アンダースコア (_) である必要があります。

  • 2 番目以降の文字では、Unicode Standard 2.0 に定義されている文字または数字と、アンダースコア (_) を使用できます。

カタログの構成

カタログ プロパティを調整することによって、カタログの動作を微調整します。 カタログ プロパティは、機微なデータを暗号化する方法と、操作およびプロジェクトのバージョン管理データを保持する方法を定義します。 カタログ プロパティを設定するには、[カタログのプロパティ] ダイアログ ボックスを使用するか、catalog.configure_catalog (SSISDB データベース) ストアド プロシージャを呼び出します。 プロパティを表示するには、ダイアログ ボックスまたはクエリ catalog.catalog_properties (SSISDB データベース) を使用します。 ダイアログ ボックスには、オブジェクト エクスプローラーで SSISDB を右クリックしてアクセスできます。

操作とプロジェクト バージョンのクリーンアップ

カタログの多くの操作の状態データは、内部データベース テーブルに格納されます。 たとえば、カタログではパッケージの実行とプロジェクトの配置の状態が追跡されます。 操作データのサイズを維持するには、SQL Server Management Studio の SSIS サーバー メンテナンス ジョブを使用して古いデータを削除します。 この SQL Server エージェント ジョブは、Integration Services のインストール時に作成されます。

同じ名前の Integration Services プロジェクトをカタログの同じフォルダーに配置することで、このプロジェクトを更新または再配置できます。 既定では、プロジェクトを再配置するたびに、SSISDB カタログには以前のバージョンのプロジェクトが保持されます。 操作データのサイズを維持するには、SSIS サーバー メンテナンス ジョブを使用して古いバージョンのプロジェクトを削除します。

次の SSISDB カタログ プロパティで、この SQL Server エージェント ジョブの動作を定義します。 プロパティの表示と変更は、[カタログのプロパティ] ダイアログ ボックスのほか、catalog.catalog_properties (SSISDB データベース) および catalog.configure_catalog (SSISDB データベース) を使って行うことができます。

  • ログを定期的に消去する
    このプロパティが True に設定されている場合は、操作のクリーンアップのジョブ ステップが実行されます。

  • [保有期間 (日)]
    操作データの最大保有期間を日数で定義します。 この期間を経過したデータは削除されます。

    最小値は 1 日です。 最大値は SQL Server の int データ型の最大値によってのみ制限されます。 このデータ型の詳細については、「int、bigint、smallint、および tinyint (Transact-SQL)」を参照してください。

  • 古いバージョンを定期的に削除する
    このプロパティが True に設定されている場合は、プロジェクト バージョンのクリーンアップのジョブ ステップが実行されます。

  • プロジェクトごとのバージョンの最大数
    カタログに格納されるプロジェクトのバージョンの数を定義します。 この数を超える古いバージョンのプロジェクトは削除されます。

暗号化アルゴリズム

[暗号化アルゴリズム] プロパティでは、機密性の高いパラメーター値を暗号化するために使用される暗号化の種類を指定します。 次の暗号化の種類から選択できます。

  • AES_256 (既定値)

  • AES_192

  • AES_128

  • DESX

  • TRIPLE_DES_3KEY

  • TRIPLE_DES

  • DES

Integration Services プロジェクトを Integration Services サーバーに配置する場合、カタログは自動的にパッケージのデータと機微な値を暗号化します。 また、ユーザーがデータを取得するときには、自動的に暗号化を解除します。 SSISDB カタログは、ServerStorage 保護レベルを使用します。 詳細については、「パッケージ内の機微なデータへのアクセス制御」を参照してください。

暗号化アルゴリズムの変更は、時間のかかる操作です。 最初に、サーバーで以前に指定したアルゴリズムを使用して、すべての構成値の暗号化を解除する必要があります。 次に、新しいアルゴリズムを使用して、その値を再暗号化する必要があります。 この間、サーバーで他の Integration Services 操作を実行できません。 そのため、Integration Services 操作を途切れることなく続行できるように、Management Studio では、暗号化アルゴリズムが読み取り専用の値になっています。

[暗号化アルゴリズム] プロパティの設定を変更するには、SSISDB データベースをシングル ユーザー モードに設定し、catalog.configure_catalog ストアド プロシージャを呼び出します。 property_name 引数の ENCRYPTION_ALGORITHM を使用します。 サポートされているプロパティ値については、「catalog.catalog_properties (SSISDB データベース)」を参照してください。 ストアド プロシージャの詳細については、「catalog.configure_catalog (SSISDB データベース)」を参照してください。

シングル ユーザー モードの詳細については、「データベースをシングル ユーザー モードに設定する」を参照してください。 SQL Server の暗号化と暗号化アルゴリズムの詳細については、「SQL Server の暗号化」のトピックを参照してください。

暗号化にはデータベース マスター キーが使用されます。 このキーは、カタログの作成時に作成されます。 詳細については、「SSIS カタログの作成」を参照してください。

次の表では、[カタログのプロパティ] ダイアログ ボックスに示されるプロパティ名と、データベース ビュー内の対応するプロパティについて説明します。

プロパティ名 ([カタログのプロパティ] ダイアログ ボックス)

プロパティ名 (データベース ビュー)

暗号化アルゴリズムの名前

ENCRYPTION_ALGORITHM

ログを定期的に消去する

OPERATION_CLEANUP_ENABLED

保有期間 (日)

RETENTION_WINDOW

古いバージョンを定期的に削除する

VERSION_CLEANUP_ENABLED

プロジェクトごとのバージョンの最大数

MAX_PROJECT_VERSIONS

サーバー全体の既定のログ記録レベル

SERVER_LOGGING_LEVEL

権限

プロジェクト、環境、およびパッケージは、セキュリティ保護可能なオブジェクトであるフォルダーに格納されます。 MANAGE_OBJECT_PERMISSIONS 権限などのフォルダーに対する権限を許可することができます。 MANAGE_OBJECT_PERMISSIONS を許可すると、ユーザーに ssis_admin ロールのメンバーシップを許可しなくても、フォルダー内容の管理をユーザーに委任できます。 プロジェクト、環境、および操作に権限を付与することもできます。 操作には、Integration Services の初期化、プロジェクトの配置、実行の作成および開始、プロジェクトおよびパッケージの検証、SSISDB カタログの構成などがあります。

データベース ロールの詳細については、「データベース レベルのロール」を参照してください。

SSISDB カタログでは、DDL トリガーの ddl_cleanup_object_permissions を使用して、SSIS のセキュリティ保護可能なリソースの権限情報の整合性を保ちます。 このトリガーは、データベース ユーザー、データベース ロール、データベース アプリケーション ロールなどのデータベース プリンシパルが SSISDB データベースから削除されたときに起動します。

このプリンシパルによって他のプリンシパルに権限が許可または拒否されている場合は、プリンシパルを削除する前に、権限の許可者が付与した権限を取り消してください。 取り消していない場合は、プリンシパルの削除が試行されるとエラー メッセージが返されます。 トリガーでは、データベース プリンシパルが権限付与対象ユーザーであるすべての権限レコードが削除されます。

トリガーは無効にしないことをお勧めします。これは、データベース プリンシパルが SSISDB データベースから削除された後に孤立した権限レコードが存在しないようにするためです。

権限の管理

権限は、SQL Server Management Studio の UI、ストアド プロシージャ、Microsoft.SqlServer.Management.IntegrationServicesnamespace 名前空間を使って管理できます。

SQL Server Management Studio の UI を使って権限を管理するには、次のダイアログ ボックスを使用します。

Transact-SQL を使用して権限を管理するには、catalog.grant_permission (SSISDB データベース)catalog.deny_permission (SSISDB データベース)catalog.revoke_permission (SSISDB データベース) を呼び出します。 すべてのオブジェクトの現在のプリンシパルに対する有効な権限を表示するには、catalog.effective_object_permissions (SSISDB データベース) に対してクエリを実行します。 このトピックでは、さまざまな種類の権限について説明します。 ユーザーに明示的に割り当てられた権限を表示するには、catalog.explicit_object_permissions (SSISDB データベース) に対してクエリを実行します。

フォルダー

フォルダーには、SSISDB カタログ内の 1 つ以上のプロジェクトおよび環境が含まれます。 catalog.folders (SSISDB データベース) ビューを使用して、カタログのフォルダーに関する情報にアクセスできます。 次のストアド プロシージャを使用して、フォルダーを管理することができます。

プロジェクトとパッケージ

各プロジェクトには、複数のパッケージを含めることができます。 プロジェクトとパッケージの両方に、パラメーターおよび環境への参照を含めることができます。 [構成] ダイアログ ボックスを使用して、パラメーターおよび環境への参照にアクセスできます。

次のストアド プロシージャを呼び出して、他のプロジェクト タスクを実行することができます。

次のビューには、パッケージ、プロジェクト、およびプロジェクトのバージョンに関する詳細が表示されます。

パラメーター

パラメーターを使用して、パッケージの実行時にパッケージ プロパティに値を割り当てます。 パッケージ パラメーターまたはプロジェクト パラメーターの値を設定および消去するには、catalog.set_object_parameter_value (SSISDB データベース) および catalog.clear_object_parameter_value (SSISDB データベース) を呼び出します。 実行のインスタンスにパラメーターの値を設定するには、catalog.set_execution_parameter_value (SSISDB データベース) を呼び出します。 catalog.get_parameter_values (SSISDB データベース) を呼び出して、既定のパラメーター値を取得することができます。

次のビューには、すべてのパッケージとプロジェクトのパラメーター、および実行のインスタンスに使用されるパラメーター値が表示されます。

サーバー環境、サーバー変数、およびサーバー環境参照

サーバー環境にはサーバー変数が含まれます。 変数値は、Integration Services サーバーでパッケージを実行または検証するときに使用できます。

次のストアド プロシージャを使用すると、環境と変数の他の多くの管理タスクを実行することができます。

catalog.set_environment_variable_protection (SSISDB データベース) ストアド プロシージャを呼び出して、変数のセンシティビティ ビットを設定することができます。

サーバー変数の値を使用するには、プロジェクトとサーバー環境間の参照を指定します。 次のストアド プロシージャを使用して、参照を作成したり削除したりすることができます。 環境をプロジェクトと同じフォルダーに配置できるか、または別のフォルダーに配置できるかを示すこともできます。

環境と変数の詳細については、次のビューに対してクエリを実行します。

実行と検証

実行はパッケージ実行のインスタンスです。 catalog.create_execution (SSISDB データベース)catalog.start_execution (SSISDB データベース) を呼び出して、実行を作成および開始します。 実行またはパッケージとプロジェクトの検証を停止するには、catalog.stop_operation (SSISDB データベース) を呼び出します。

実行中のパッケージを一時停止してダンプ ファイルを作成するには、catalog.create_execution_dump ストアド プロシージャを呼び出します。 ダンプ ファイルは、実行に関する問題のトラブルシューティングに役立つ、パッケージの実行に関する情報を提供します。 ダンプ ファイルの生成および構成の詳細については、「パッケージ実行用のダンプ ファイルを生成する」を参照してください。

実行、検証、操作中にログに記録されたメッセージ、およびエラーに関するコンテキスト情報の詳細については、次のビューに対してクエリを実行します。

catalog.validate_project (SSISDB データベース) ストアド プロシージャと catalog.validate_package (SSISDB データベース) ストアド プロシージャを呼び出して、プロジェクトとパッケージを検証することができます。 catalog.validations (SSISDB データベース) ビューには、検証で考慮されるサーバー環境参照、検証が依存関係の検証であるか完全検証であるか、32 ビット ランタイムと 64 ビット ランタイムのどちらをパッケージの実行に使用するかなどの、検証に関する詳細が表示されます。

関連タスク

関連コンテンツ

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

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


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