SQL Server Integration Services ワークロードをクラウドにリフト アンド シフトする
適用対象: SQL Server Azure Data Factory の SSIS Integration Runtime
SQL Server Integration Services (SSIS) プロジェクト、パッケージ、ワークロードを Azure クラウドに移動できるようになりました。 SQL Server Management Studio (SSMS) などのよく使われるツールを利用して、SSIS プロジェクトとパッケージを Azure SQL Database の SSIS カタログ (SSISDB) または SQL Managed Instance で配置、実行、管理します。
メリット
オンプレミスの SSIS ワークロードを Azure に移動すると、次の潜在的な利点があります。
- 運用コストを削減し、SSIS をオンプレミスまたは Azure の仮想マシンで実行するのに必要なインフラストラクチャを管理するための作業負荷を軽減します。
- クラスターごとの複数のノードを指定する機能と、Azure および Azure SQL Database の高可用性機能により、高可用性が向上します。
- ノード (スケール アップ) ごとに複数のコアとクラスター (スケール アウト) ごとに複数のノードを指定する機能により、スケーラビリティが向上します。
Azure での SSIS のアーキテクチャ
次の表に、オンプレミスの SSIS と Azure の SSIS の違いを示します。
最も重要な違いは、ランタイムからの記憶域の分離です。 Azure Data Factory では、Azure で SSIS パッケージのランタイム エンジンをホストします。 ランタイム エンジンは、Azure SSIS 統合ランタイム (Azure SSIS IR) と呼ばれます。 詳細については、「Azure SSIS 統合ランタイム」を参照してください。
場所 | ストレージ | ランタイム | スケーラビリティ |
---|---|---|---|
オンプレミス | SQL Server | SQL Server でホストされている SSIS ランタイム | SSIS Scale Out (SQL Server 2017 以降) カスタム ソリューション (SQL Server の以前のバージョン) |
Azure 上 | SQL Database または SQL Managed Instance | Azure SSIS 統合ランタイム、Azure Data Factory のコンポーネント | Azure SSIS 統合ランタイムのスケーリング オプション |
Azure での SSIS のプロビジョニング
プロビジョニング。 Azure で SSIS パッケージをデプロイして実行するには、事前に SSIS カタログ (SSISDB) と Azure SSIS Integration Runtime をプロビジョニングする必要があります。
Azure portal で Azure 上に SSIS をプロビジョニングするには、次の記事に記載されているプロビジョニング手順に従ってください:「Azure Data Factory に Azure-SSIS 統合ランタイムをプロビジョニングする」。
PowerShell を使って Azure 上に SSIS をプロビジョニングするには、次の記事に記載されているプロビジョニング手順に従ってください:「PowerShell を使用して Azure-SSIS 統合ランタイムを Azure Data Factory にプロビジョニングする」。
Azure SSIS IR は 1 回だけプロビジョニングを行う必要があります。 その後は、SQL Server Data Tools (SSDT) や SQL Server Management Studio (SSMS) などの使い慣れたツールを使用して、パッケージの配置、構成、実行、監視、スケジュール、および管理ができます。
Note
Azure-SSIS 統合ランタイムは、すべての Azure リージョンで利用できるわけではありません。 サポートされているリージョンについては、「リージョン別の利用可能な製品 - Microsoft Azure」を参照してください。
スケール アップとスケール アウト。Azure SSIS IR をプロビジョニングする際に、次のオプションの値を指定して、スケール アップとスケール アウトができます。
- ノード サイズ (コアの数を含む) とクラスター内のノードの数。
- SSIS カタログ データベース (SSISDB) をホストする Azure SQL Database の既存のインスタンス、およびデータベース用のサービス層。
- ノードごとの最大並列実行。
パフォーマンスの向上。 詳細については、「Azure-SSIS 統合ランタイムを高パフォーマンス用に構成する」を参照してください。
コストの削減。 コストを削減するには、必要がある場合にのみ Azure-SSIS IR を実行します。 詳しくは、「Azure SSIS 統合ランタイムをスケジュールに従って起動および停止する方法」をご覧ください。
パッケージの設計
SSDT のオンプレミス、または SSDT がインストールされた Visual Studio で、パッケージの設計とビルドを続行します。
データ ソースに接続する
Windows 認証を使用してクラウドからオンプレミスのデータ ソースに接続するには、「Azure の SSIS パッケージで Windows 認証を使用し、データ ソースとファイル共有に接続する」をご覧ください。
ファイルとファイル共有に接続するには、「Azure でデプロイされた SSIS パッケージを使用して、オンプレミスおよび Azure のファイルを開いて保存する」をご覧ください。
使用可能な SSIS コンポーネント
SSISDB をホストする SQL Database のインスタンスをプロビジョニングすると、ほかにも Azure Feature Pack for SSIS と Access の再頒布可能パッケージがインストールされます。 これらのコンポーネントは、組み込みのコンポーネントでサポートされるデータ ソースの他に、さまざまな Azure データ ソース、および Excel ファイルと Access ファイルへの接続を提供します。
追加のコンポーネントもインストールできます。たとえば、既定ではインストールされないドライバーをインストールできます。 詳しくは、「Customize setup for the Azure-SSIS integration runtime」(Azure-SSIS 統合ランタイムの設定をカスタマイズする) をご覧ください。
Enterprise Edition のライセンスがある場合は、追加コンポーネントを使用できます。 詳しくは、「Azure-SSIS Integration Runtime の Enterprise Edition をプロビジョニングする」をご覧ください。
ISV は、ライセンスのあるコンポーネントのインストールを Azure で使用できるように更新する必要があります。 詳しくは、「Azure SSIS 統合ランタイムの有料 (ライセンスあり) カスタム コンポーネントをインストールする」をご覧ください。
パッケージの配置と実行
作業を開始するには、次を参照してください: 「チュートリアル: Azure で SQL Server Integration Services (SSIS) パッケージをデプロイし、実行する」をご覧ください。
前提条件
SSIS パッケージを Azure にデプロイするには、次のいずれかのバージョンの SQL Server Data Tools (SSDT) が必要です。
- Visual Studio 2017 の場合、バージョン 15.3 以降。
- Visual Studio 2015 の場合、バージョン 17.2 以降。
SSISDB に接続する
SSISDB をホストする SQL Database の名前が、SSDT および SSMS からパッケージを配置して実行する際に使用する 4 つの部分から成る名前の最初の部分になります。次のような形式です: <sql_database_name>.database.windows.net
。 Azure で SSIS カタログ データベースに接続する方法について詳しくは、「Azure の SSIS カタログ (SSISDB) に接続する」をご覧ください。
プロジェクトとパッケージをデプロイする
Azure の SSISDB にプロジェクトをデプロイする場合には、パッケージ配置モデルではなく、プロジェクト配置モデルを使用する必要があります。
Azure でプロジェクトをデプロイするには、次の使い慣れたツールやスクリプト作成オプションのいずれかを使用できます。
- SQL Server Management Studio (SSMS)
- Transact-SQL (SSMS、Visual Studio Code、または別のツールから)
- コマンドライン ツール
- PowerShell または C# と SSIS の管理オブジェクト モデル
デプロイ プロセスでは、パッケージが Azure SSIS Integration Runtime で実行できることを確認するための検証が行われます。 詳しくは、「Azure にデプロイされた SQL Server Integration Services (SSIS) パッケージを検証する」をご覧ください。
SSMS と Integration Services デプロイ ウィザードを使用するデプロイの例については、「チュートリアル:Azure で SQL Server Integration Services (SSIS) パッケージをデプロイし、実行する」をご覧ください。
バージョンのサポート
SSIS の任意のバージョンで作成されたパッケージを Azure にデプロイすることができます。 Azure にパッケージをデプロイするときに、検証エラーがなければ、パッケージは最新のパッケージ形式に自動的にアップグレードされます。 つまり、常に SSIS の最新バージョンにアップグレードされます。
パッケージを実行する
Azure にデプロイされた SSIS パッケージを実行するには、さまざまな方法を使用できます。 詳しくは、「Azure でデプロイされている SQL Server Integration Services (SSIS) パッケージを実行する」をご覧ください。
Azure Data Factory パイプラインでパッケージを実行する
Azure Data Factory パイプラインで SSIS パッケージを実行するには、SSIS パッケージの実行アクティビティを使います。 詳細については、Azure Data Factory で SSIS パッケージの実行アクティビティを使用して SSIS パッケージを実行する方法に関するページを参照してください。
SSIS パッケージの実行アクティビティを使って Data Factory パイプラインでパッケージを実行するときは、実行時に値をパッケージに渡すことができます。 1 つまたは複数のランタイム値を渡すには、SSISDB と SQL Server Management Studio (SSMS) で SSIS 実行環境を作成します。 各環境で変数を作成し、プロジェクトまたはパッケージのパラメーターに対応する値を渡します。 それらの環境変数とプロジェクトまたはパッケージのパラメーターが関連付けられるように、SSMS で SSIS パッケージを構成します。 パイプラインでパッケージを実行するときは、SSIS パッケージの実行アクティビティ UI の [設定] タブで異なる環境パスを指定することで環境を切り替えます。 SSIS 環境について詳しくは、「サーバー環境の作成とマップ」をご覧ください。
パッケージの監視
実行中のパッケージを監視するには、SSMS で次のレポート オプションを使います。
- [SSISDB] を右クリックし、 [アクティブな操作] を選択して、 [アクティブな操作] ダイアログ ボックスを開きます。
- オブジェクト エクスプローラーでパッケージを選択し、右クリックして [レポート] を選択し、 [標準レポート] 、 [すべての実行] の順に選択します。
Azure SSIS 統合ランタイムを監視するには、Azure SSIS 統合ランタイムの監視に関するページを参照してください。
パッケージのスケジュール設定
Azure にデプロイされたパッケージの実行をスケジュール設定するには、さまざまなツールを使用できます。 詳しくは、「Azure でデプロイされている SQL Server Integration Services (SSIS) パッケージの実行スケジュールを設定する」をご覧ください。
次のステップ
Azure で SSIS ワークロードの使用を開始するには、次の記事を参照してください。