適用対象:
Azure Data Factory
Azure Synapse Analytics
ヒント
Data Factory in Microsoft Fabric は、よりシンプルなアーキテクチャ、組み込みの AI、および新機能を備えた次世代のAzure Data Factoryです。 データ統合を初めて使用する場合は、Fabric Data Factory から始めます。 既存の ADF ワークロードをFabricにアップグレードして、データ サイエンス、リアルタイム分析、レポートの新機能にアクセスできます。
統合ランタイム(IR)は、Azure Data FactoryおよびAzure Synapseパイプラインで使用される計算インフラであり、異なるネットワーク環境間で以下のデータ統合機能を提供します。
- データ フロー: マネージド Azure コンピューティング環境でデータ フローを実行します。
- データ移動: パブリックまたはプライベート ネットワーク内のデータ ストア間でデータをコピーします (オンプレミスと仮想プライベートネットワークの両方)。 このサービスは、組み込みコネクタ、形式の変換、列のマッピング、パフォーマンスとスケーラビリティに優れたデータ転送に関するサポートを提供します。
- アクティビティのディスパッチ: Azure Databricks、Azure HDInsight、ML スタジオ (クラシック)、Azure SQL Database、SQL Server などのさまざまなコンピューティング サービスで実行される変換アクティビティをディスパッチして監視します。
- SSIS パッケージの実行:マネージド Azure コンピューティング環境で SQL Server Integration Services (SSIS) パッケージをネイティブに実行します。
Data Factory と Synapse のパイプラインでは、実行されるアクションをアクティビティで定義します。 リンクされたサービスは、ターゲットのデータ ストアやコンピューティング サービスを定義します。 統合ランタイムは、アクティビティとリンクされたサービスとを橋渡しします。 リンクされたサービスまたはアクティビティは、アクティビティが直接実行されたり、ディスパッチされたりするコンピューティング環境を参照し、提供します。 この関連付けにより、アクティビティをターゲット データ ストアまたはコンピューティング サービスに最も近いリージョンで実行してパフォーマンスを最大化しながら、セキュリティとコンプライアンスの要件を柔軟に満たすことができます。
統合ランタイムは、Azure Data Factory と Azure Synapse の UI で、管理ハブから直接、およびそれらを参照するすべてのアクティビティ、データセット、データ フローから使用して作成できます。
統合ランタイムの種類
Data Factoryは3種類の統合ランタイム(IR)を提供しており、ご自身のデータ統合能力やネットワーク環境の要件に最適なタイプを選ぶべきです。 IR の 3 種類は次のとおりです。
- Azure
- セルフホステッド
- Azure-SSIS
注意
Synapse パイプラインは、現在 Azure またはセルフホステッド統合ランタイムのみに対応しています。
次の表で、各種の統合ランタイムの機能とネットワークのサポートについて説明します。
| IR の種類 | パブリック ネットワークのサポート | Private Link のサポート |
|---|---|---|
| Azure | Data Flow データの移動 アクティビティの割り当て |
Data Flow データの移動 アクティビティの割り当て |
| セルフホステッド | データの移動 アクティビティの割り当て |
データの移動 アクティビティの割り当て |
| Azure-SSIS | SSIS パッケージ実行 | SSIS パッケージ実行 |
注意
Azure IR の送信制御は、サービスによって異なります。 Synapseでは、Azure IRを使うと管理された仮想ネットワークからのアウトバウンドトラフィックを制限するワークスペースがあります。 Data Factoryでは、Azure IRを使うとすべてのポートが送信用に開放されます。 Azure-SSIS IR は仮想ネットワークと統合して送信方向の通信制御を提供できます。
Azure 統合ランタイム
Azure Integration Runtime では以下が可能です。
- Azure でデータ フローを実行する
- クラウドのデータ ストア間でコピー アクティビティを実行する
- パブリック ネットワークで次の変換アクティビティをディスパッチする:
- .NET カスタム アクティビティ
- Azure Functions アクティビティ
- Databricks Notebook/Jar/Python アクティビティ
- GetMetadata アクティビティ (メタデータ取得アクティビティ)
- HDInsight Hive アクティビティ
- HDInsight Pig アクティビティ
- HDInsight MapReduce アクティビティ
- HDInsight Spark アクティビティ
- HDInsight Streaming アクティビティ
- Lookup アクティビティ
- Machine Learning Studio (クラシック) の Batch Execution アクティビティ
- Machine Learning Studio (クラシック) のリソースの更新アクティビティ
- ストアドプロシージャアクティビティ
- バリデーション活動
- Web アクティビティ
Azure IR のネットワーク環境
Azure統合ランタイムは、公開可能なエンドポイントを持つデータストアやコンピュートサービスへの接続をサポートします。 マネージドVirtual Networkを有効にすると、Azure統合ランタイムはプライベートネットワーク環境でPrivate Linkを利用してデータストアに接続することをサポートします。 Synapse では、ワークスペースには、IR マネージド仮想ネットワークからの送信トラフィックを制限するオプションがあります。 Data Factory では、すべてのポートが送信方向の通信用に開かれています。 Azure-SSIS IR は仮想ネットワークと統合して送信方向の通信制御を提供できます。
Azure IR のコンピューティング リソースとスケーリング
Azure 統合ランタイムは、Azure 内のフル マネージドのサーバーレス コンピューティングを提供します。 インフラストラクチャのプロビジョニング、ソフトウェアのインストール、ファイルの部分置換、容量のスケーリングについて心配する必要はありません。 さらに、使った分だけ支払うことができます。
Azure 統合ランタイムは、ネイティブのコンピューティングを備えており、セキュリティで保護された、信頼性とパフォーマンスの高い方法で、クラウドのデータ ストア間でデータを移動します。 コピー活動で使用するデータ統合ユニット数を設定でき、Azure IRの計算サイズはそれに応じて弾力的に拡大されます。Azure統合ランタイムのサイズを明示的に調整する必要はありません。
アクティビティディスパッチは、アクティビティをターゲットの計算サービスにルーティングするための軽量な操作なので、このシナリオでは計算サイズを拡大する必要はありません。
Azure IR の作成と構成に関する詳細については、「Azure 統合ランタイムを作成して構成する方法」を参照してください。
注意
Azure Integration Runtimeは、データフローを実行するための基盤となる計算インフラを定義するData Flowランタイムに関連するプロパティを持っています。
セルフホステッド統合ランタイム
セルフホステッド IR により、次のことが可能になります。
- プライベートネットワーク内のクラウドデータストアとデータストア間でコピー活動を実行。
- オンプレミスまたは Azure Virtual Network 内のコンピューティング リソースに対して次の変換アクティビティをディスパッチする:
- Azure Functions アクティビティ
- カスタム アクティビティ (Azure Batch で実行)
- GetMetadata アクティビティ (メタデータ取得アクティビティ)
- HDInsight Hive アクティビティ (BYOC - クラスターを持参)
- HDInsight Pig アクティビティ (BYOC)
- HDInsight MapReduce アクティビティ (BYOC)
- HDInsight Spark アクティビティ (BYOC)
- HDInsight Streaming アクティビティ (BYOC)
- Lookup アクティビティ
- Machine Learning Studio (クラシック) の Batch Execution アクティビティ
- Machine Learning Studio (クラシック) のリソースの更新アクティビティ
- Machine Learning の Execute Pipeline アクティビティ
- ストアドプロシージャアクティビティ
- バリデーション活動
- Web アクティビティ
注意
SAP HANAやMySQLなど、自作ドライバが必要なデータストアをサポートするためにセルフホスト型統合ランタイムを活用しましょう。 詳細は 「サポートされているデータストア」をご覧ください。
注意
Javaランタイム環境(JRE)はセルフホスト型IRの依存関係です。 JRE が同じホストにインストールされていることを確認してください。
セルフホステッド IR のネットワーク環境
パブリック クラウド環境からの直接の通信経路がないプライベート ネットワーク環境で、安全にデータ統合を実行しようとしている場合は、ファイアウォール内のオンプレミス環境か仮想プライベート ネットワーク内にセルフホステッド IR をインストールできます。 セルフホステッド統合ランタイムは、インターネットへの送信 HTTP ベースの接続のみを行います。
セルフホステッド IR のコンピューティング リソースとスケーリング
セルフホステッド IR は、オンプレミスのマシンか、プライベート ネットワーク内の仮想マシンにインストールします。 現在、セルフホステッド IR は、Windows オペレーティングシステムでのみサポートされています。 高可用性とスケーラビリティを実現するには、アクティブ/アクティブ モードで論理インスタンスをオンプレミスの複数のマシンに関連付けて、セルフホステッド IR をスケールアウトできます。 詳細については、セルフホステッド IR を作成および構成する方法に関する記事をご覧ください。
Azure-SSIS 統合ランタイム
既存の SSIS ワークロードをリフトアンドシフトするには、Azure-SSIS IR を作成して SSIS パッケージをネイティブに実行できます。
Azure-SSIS IR のネットワーク環境
Azure-SSIS IR は、パブリック ネットワークかプライベート ネットワーク内でプロビジョニングできます。 オンプレミスのデータ アクセスは、オンプレミスのネットワークに接続している仮想ネットワークと Azure-SSIS IR を結合することでサポートされます。
Azure-SSIS IR のコンピューティング リソースとスケーリング
Azure-SSIS IR は、SSIS パッケージ実行専用の、Azure VM のフル マネージドのクラスターです。 SSIS プロジェクトまたはパッケージのカタログ (SSISDB) 用に独自の Azure SQL Database または SQL Managed Instance を持ち込むことができます。 ノードのサイズを指定してコンピューティング能力をスケールアップしたり、クラスター内のノードの数を指定してスケール アウトしたりできます。 Azure-SSIS 統合ランタイムのコストは、要件に応じて停止・起動することで管理できます。
詳細については、「Azure-SSIS IR を作成して構成する方法」を参照してください。 作成終は、オンプレミスで SSIS を使用する場合と同様に、SQL Server Data Tools (SSDT) や SQL Server Management Studio (SSMS) などの使い慣れたツールを使用して、既存の SSIS パッケージをほとんど変更せずにデプロイして管理することができます。
Azure-SSIS ランタイムの詳細については、次の記事をご覧ください。
- チュートリアル: SSIS パッケージを Azure にデプロイする: この記事は、Azure-SSIS IR を作成し、Azure SQL Database を使用して SSIS カタログをホストするための詳細な手順を示しています。
- 方法: Azure-SSIS 統合ランタイムを作成する。 この記事では、チュートリアルを基に、SQL Managed Instance の使い方と、IR を仮想ネットワークに参加させる方法が説明されています。
- Azure-SSIS IR を監視する: この記事では、Azure-SSIS IR に関する情報を取得する方法と、返された情報での状態が説明されています。
- Azure-SSIS IR を管理する: この記事では、Azure-SSIS IR を停止、開始、削除する方法が説明されています。 また、IR にノードを追加することで Azure-SSIS IR をスケールアウトする方法も説明されています。
- 仮想ネットワークへの Azure-SSIS IR の参加: この記事では、Azure 仮想ネットワークへの Azure-SSIS IR の参加に関する概念情報が説明されています。 また、Azure Portal を使用して、Azure-SSIS IR が仮想ネットワークに参加できるように構成する手順についても説明されています。
統合ランタイムの場所
ファクトリの場所と IR の場所の関係
Data FactoryやSynapseワークスペースのインスタンスを作成する際には、その場所を指定する必要があります。 このインスタンスのメタデータはここに格納されており、パイプラインのトリガーはここから開始されます。 メタデータは選択したリージョンにのみ格納され、他のリージョンには格納されません。
ただし、パイプラインは、他の Azure リージョン内のデータ ストアやコンピューティング サービスにアクセスし、データ ストア間でデータを移動したり、コンピューティング サービスを使用してデータを処理したりできます。 この動作はグローバルに使用できる IR によって実現し、データのコンプライアンス、効率性、ネットワークのエグレスのコストの削減が保証されます。
IRの位置はバックエンド計算の場所と、データ移動、アクティビティディスパッチ、SSISパッケージ実行が行われる場所を定義します。 IR の場所は、それが属している Data Factory の場所とは別にすることができます。
Azure IR の場所
Azure IR の場所を設定することができます。その場合は、その選択したリージョンでアクティビティの実行やディスパッチが行われます。
既定では、パブリック ネットワーク内の Azure IR が自動解決されます。 このオプションでは、
Copy アクティビティの場合、可能な限りシンク データ ストアの場所が自動的に検出され、同じリージョン (使用可能な場合) または同じ地理的な場所の最も近いリージョンのどちらかにある IR が使用されるようにします。そうしないと、シンク データ ストアのリージョンを検出できない場合、インスタンスのリージョン内の IR が代わりに使用されます。
例えば、東アメリカでData FactoryやSynapseワークスペースが作成されました。
- 米国西部にある Azure BLOB にデータをコピーするときに、その BLOB が米国西部で検出された場合、その Copy アクティビティは米国西部にある IR で実行されます。リージョンの検出に失敗した場合、Copy アクティビティは米国東部にある IR で実行されます。
- リージョンを検出できない Salesforce にデータをコピーする場合、Copy アクティビティは米国東部にある IR で実行されます。
ヒント
厳格なデータコンプライアンス要件があり、特定の地理圏外にデータが出ないようにする必要がある場合は、特定のリージョンにAzure IRを作成し、ConnectViaプロパティを使ってリンクされたサービスをそのIRに向けることができます。 例えば、UK南部のブロブからUK南部のAzure Synapseワークスペースにデータをコピーし、データがUKから出ないようにしたい場合、UK南部にAzure IRを作成し、両方のリンクされたサービスをこのIRにリンクします。
ルックアップ/メタデータ取得/削除のアクティビティ実行(パイプライン活動)、変換活動のディスパッチング(外部活動)、およびオーサリング操作(テスト接続、ブラウズフォルダリストやテーブルリスト、プレビューデータ)には、Data FactoryやSynapseワークスペースと同じ領域内のIRが使用されます。
Data Flowでは、Data FactoryまたはSynapseワークスペース領域のIRが使用されます。
ヒント
ベスト プラクティスは、可能であれば、対応するデータ ストアと同じリージョンでデータ フローを実行することです。 これは、データストアの場所がData FactoryやSynapseのワークスペースと同じであれば、Azure IRのautoresolveを使うか、データストアと同じリージョンに新しいAzure IRインスタンスを作成し、その上でデータフローを実行する方法があります。
Azure IRでAutoresolve付きのManaged Virtual Networkを有効にすると、Data FactoryやSynapseワークスペースリージョンのIRが使われます。
アクティビティの実行中に有効な IR の場所は、Data Factory Studio または Synapse Studio のパイプライン アクティビティ監視ビュー、またはアクティビティ監視ペイロードで監視できます。
セルフホステッド IR の場所
セルフホスト型のIRは論理的にData FactoryやSynapseのワークスペースに登録されており、その機能をサポートするための計算量を提供します。 したがって、セルフホステッド IR に明示的な場所のプロパティはありません。
セルフホステッド IR を使用してデータの移動を実行する場合、この IR はデータをソースから抽出して移動先に書き込みます。
Azure-SSIS IR の場所
注意
Azure-SSIS 統合ランタイムは、現在 Synapse パイプラインではサポートされていません。
抽出、変換、読み込み (ETL) ワークフローで高いパフォーマンスを実現するには、Azure-SSIS IR の正しい場所を選択することが重要です。
- Azure-SSIS IR の場所を Data Factory の場所と同じにする必要はありませんが、SSISDB のホストとなる独自の Azure SQL Database または SQL Managed Instance の場所と同じにする必要があります。 こうすることで、Azure-SSIS 統合ランタイムは異なる場所間で過剰なトラフィックを発生させることなくSSISDBに容易にアクセスできます。
- 既存の SQL Database または SQL Managed Instance がなく、オンプレミスのデータ ソースまたはコピー先がある場合、オンプレミスのネットワークに接続している仮想ネットワークの同じ場所に新しい Azure SQL Database または SQL Managed Instance を作成する必要があります。 これにより、新しい Azure SQL Database または SQL Managed Instance を使用して Azure-SSIS IR を作成し、その仮想ネットワークに参加できます。 すべてが同じ場所にあると、データ移動および関連コストを最小限に抑えつつ、パフォーマンスを最大化できます。
- 既存のAzure SQL DatabaseやSQL Managed Instanceの位置がオンプレミスネットワークに接続された仮想ネットワークの場所と一致しない場合は、まず既存のAzure SQL DatabaseやIRを使って Azure-SSIS IRを作成してくださいSQL Managed Instance同じ場所にある別の仮想ネットワークに参加します。 次に、異なる場所に存在する仮想ネットワーク同士の接続を構成します。
次の図は、Data Factory とその統合ランタイムの場所の設定を示しています。
使用するIRを判別する
1 つのアクティビティが複数の種類の統合ランタイムに関連付けられる場合は、そのどちらかに解決されます。 マネージド仮想ネットワークを使用するAzure Data FactoryやSynapseワークスペースインスタンスでは、セルフホスト型統合ランタイムがAzure統合ランタイムよりも優先されます。 そして、後者はグローバル Azure 統合ランタイムよりも優先されます。
たとえば、ソースからシンクへのデータのコピーには、1 つのコピー アクティビティが使用されます。 グローバル Azure 統合ランタイムは、ソースにリンクされたサービスに関連付けられています。また、Azure Data Factory マネージド仮想ネットワーク内の Azure 統合ランタイムは、シンクのリンクされたサービスに関連付けられています。このため、ソースとシンクの両方のリンクされたサービスによって、Azure Data Factory マネージド仮想ネットワーク内の Azure 統合ランタイムが使用されます。 ただし、セルフホステッド統合ランタイムが、ソースのリンク サービスに関連付けられている場合は、ソースとシンクの両方のリンク サービスによって、セルフホステッド統合ランタイムが使用されます。
Copy アクティビティ
コピー アクティビティは、データ フローの方向を定義するのに、ソースとシンクの両方がリンクされたサービスが必要です。 どの統合ランタイム インスタンスを使用してコピーを実行するかを決めるために、次のロジックが使用されます。
- 2 つのクラウド データ ソース間でのコピー: ソースとシンクの両方のリンク サービスで Azure IR が使用されているとき、指定されている場合はそのリージョンの Azure IR が使用され、自動解決 IR (既定) オプションが選択されている場合は、「統合ランタイムの場所」セクションで説明したとおり、Azure IR の場所が自動的に決定されます。
- クラウド データ ソースとプライベート ネットワーク内のデータ ソースの間でのコピー: ソースかシンクのいずれかのリンクされたサービスがセルフホステッド IR を指している場合、そのセルフホステッド IR 上でコピー アクティビティが実行されます。
- プライベート ネットワーク内の 2 つのデータ ソース間でのコピー: ソースとシンクの両方のリンクされたサービスが同じ統合ランタイム インスタンスを指す必要があり、その IR を使用してコピー アクティビティが実行されます。
Lookup および GetMetadata 処理
Lookup および GetMetadata アクティビティは、データ ストアのリンクされたサービスに関連付けられている統合ランタイム上で実行されます。
外部変換作業
外部計算エンジンを使用する各外部変換活動には、統合ランタイムを指すターゲット計算リンクサービスがあります。 この IR インスタンスによって、手動コーディングされたその外部変換アクティビティのディスパッチ元が判断されます。
Data Flow アクティビティ
Data Flow アクティビティは、それに関連付けられている Azure 統合ランタイムで実行されます。 Azure IRのデータフロープロパティはSparkの計算を決定し、サービスによって完全に管理されます。
CI/CDにおける統合ランタイム
統合ランタイムは頻繁には変更されず、CI/CD のすべてのステージで類似しています。 Data Factory、CI/CD のすべてのステージで同じ名前と種類の統合ランタイムを使用する必要があります。 すべてのステージで統合ランタイムを共有する場合は、共有の統合ランタイムを含めるためだけに専用ファクトリを使用することを検討してください。 それにより、この共有ファクトリは、すべての環境で、リンクされた統合ランタイムの種類として使用できます。
関連するコンテンツ
次の記事をご覧ください。
- Azure Integration Runtime の作成
- Create self-hosted integration runtime (セルフホステッド統合ランタイムの作成)
- Azure-SSIS 統合ランタイムを作成します。 この記事では、チュートリアルを基に、SQL Managed Instance の使い方と、IR を仮想ネットワークに参加させる方法が説明されています。