次の方法で共有


Azure Data Factory および Synapse パイプラインでサポートされるコンピューティング環境

適用対象: Azure Data Factory Azure Synapse Analytics

Tip

Data Factory in Microsoft Fabric は、よりシンプルなアーキテクチャ、組み込みの AI、および新機能を備えた次世代のAzure Data Factoryです。 データ統合を初めて使用する場合は、Fabric Data Factory から始めます。 既存の ADF ワークロードをFabricにアップグレードして、データ サイエンス、リアルタイム分析、レポートの新機能にアクセスできます。

Important

Azure Machine Learning Studio (クラシック) のサポートは、2024 年 8 月 31 日に終了します。 その日付までに Azure Machine Learning に移行することをお勧めします。

2021 年 12 月 1 日の時点で、新しい Machine Learning Studio (クラシック) リソース (ワークスペースと Web サービス プラン) を作成することはできません。 2024 年 8 月 31 日まで、既存の Machine Learning Studio (クラシック) 実験と Web サービスを引き続き使用できます。 詳細については、次を参照してください。

Machine Learning Studio (クラシック) ドキュメントは廃止され、今後更新されない可能性があります。

この記事では、データの処理または変換に利用できるさまざまなコンピューティング環境について説明します。 これらのコンピューティング環境をリンクするリンク サービスの構成時にサポートされる、さまざまな構成 (オンデマンドと Bring Your Own の比較) に関する詳細も説明します。

次の表は、サポートされているコンピューティング環境と、その環境で実行できるアクティビティの一覧です。

コンピューティング環境 Activities
オンデマンド HDInsight クラスター または 独自の HDInsight クラスター HivePigSparkMapReduceHadoop ストリーミング
Azure Batch Custom
ML スタジオ (クラシック) ML Studio (クラシック) のアクティビティ: Batch Execution と更新リソース
Azure Machine Learning Azure Machine Learning パイプラインの実行
Azure Data Lake Analytics Data Lake Analytics U-SQL
Azure SQLAzure Synapse AnalyticsSQL Server ストアド プロシージャ
Azure Databricks Notebook, Jar, Python
Azure Synapse Analytics (Artifacts) Synapse Notebook アクティビティSynapse Spark ジョブ定義
Azure 関数 Azure 関数アクティビティ

HDInsight コンピューティング環境

オンデマンド環境とBYOC (Bring your own compute) 環境での構成でサポートされているストレージにリンクされたサービスの種類の詳細については、以下の表を参照してください。

コンピューティングのリンクされたサービス プロパティ名 Description Blob ADLS Gen2 Azure SQL DB ADLS Gen 1
On-demand linkedServiceName Azure Storageデータの格納と処理にオンデマンド クラスターによって使用されるリンクされたサービスです。 Yes Yes No No
additionalLinkedServiceNames HDInsight のリンクされたサービスの追加のstorage アカウントを指定して、サービスがユーザーに代わって登録できるようにします。 Yes No No No
hcatalogLinkedServiceName Azure SQL リンク サービスで、HCatalog データベースを指すものの名前。 オンデマンド HDInsight クラスターは、Azure SQL データベースをメタストアとして使用して作成されます。 No No Yes No
BYOC linkedServiceName Azure Storage のリンクされたサービスの参照。 Yes Yes No No
additionalLinkedServiceNames HDInsight のリンクされたサービスの追加のstorage アカウントを指定して、サービスがユーザーに代わって登録できるようにします。 No No No No
hcatalogLinkedServiceName HCatalog データベースを指すAzure SQLリンクされたサービスへの参照。 No No No No

Azure HDInsight のオンデマンド リンク サービス

この種類の構成では、コンピューティング環境はサービスによって完全に管理されます。 データを処理するためのジョブが送信される前にサービスにより自動的に作成され、ジョブの完了時に削除されます。 オンデマンドのコンピューティング環境のために「リンクされたサービス」を作成し、構成し、ジョブ実行、クラスター管理、ブートストラップ アクションの詳細設定を制御できます。

Note

オンデマンド構成は現在、Azure HDInsight クラスターでのみサポートされています。 Azure Databricksでは、ジョブ クラスターを使用したオンデマンド ジョブもサポートされます。 詳細については、「Azure databricks のリンクされたサービスを参照してください。

サービスにより、データを処理するためのオンデマンド HDInsight クラスターが自動的に作成されます。 クラスターは、クラスターに関連付けられている storage アカウント (JSON の linkedServiceName プロパティ) と同じリージョンに作成されます。 ストレージ アカウント mustは、汎用の標準Azure Storage アカウントです。

オンデマンド HDInsight のリンクされたサービスに関する次の 重要な 点に注意してください。

  • オンデマンド HDInsight クラスターは、Azure サブスクリプションの下に作成されます。 クラスターが稼働しているときに、Azure ポータルにクラスターを表示できます。
  • オンデマンド HDInsight クラスターで実行されるジョブのログは、HDInsight クラスターに関連付けられているstorage アカウントにコピーされます。 リンクされたサービス定義で定義されている ClusterUserName、clusterPassword、clusterSshUserName、clusterSshPassword は、クラスターのライフサイクル中に詳細なトラブルシューティングのためにクラスターにログインするときに使用されます。
  • HDInsight クラスターが稼動し、ジョブを実行している時間に対してのみ課金されます。
  • Script アクションは、Azure HDInsightオンデマンドのリンクされたサービスと共に使用できます。

Important

Azure HDInsight クラスターをオンデマンドでプロビジョニングするには、通常20 分 以上かかります。

サービス プリンシパル キーの使用例

次の JSON は、Linux ベースのオンデマンド HDInsight のリンクされたサービスを定義します。 サービスは、必要なアクティビティを処理する Linux ベース の HDInsight クラスターを自動的に作成します。

{
  "name": "HDInsightOnDemandLinkedService",
  "properties": {
    "type": "HDInsightOnDemand",
    "typeProperties": {
      "clusterType": "hadoop",
      "clusterSize": 1,
      "timeToLive": "00:15:00",
      "hostSubscriptionId": "<subscription ID>",
      "servicePrincipalId": "<service principal ID>",
      "servicePrincipalKey": {
        "value": "<service principal key>",
        "type": "SecureString"
      },
      "tenant": "<tenant id>",
      "clusterResourceGroup": "<resource group name>",
      "clusterResourceGroupAuthType": "ServicePrincipalKey",
      "version": "3.6",
      "osType": "Linux",
      "linkedServiceName": {
        "referenceName": "AzureStorageLinkedService",
        "type": "LinkedServiceReference"
      }
    },
    "connectVia": {
      "referenceName": "<name of Integration Runtime>",
      "type": "IntegrationRuntimeReference"
    }
  }
}

システム割り当てマネージド ID の使用例

次の JSON は、Linux ベースのオンデマンド HDInsight のリンクされたサービスを定義します。 サービスは、必要なアクティビティを処理する Linux ベース の HDInsight クラスターを自動的に作成します。

{
  "name": "HDInsightOnDemandLinkedService",
  "properties": {
    "type": "HDInsightOnDemand",
    "typeProperties": {
      "clusterType": "hadoop",
      "clusterSize": 1,
      "timeToLive": "00:15:00",
      "hostSubscriptionId": "<subscription ID>",
      "clusterResourceGroup": "<resource group name>",
      "clusterResourceGroupAuthType": "SystemAssignedManagedIdentity",
      "version": "3.6",
      "osType": "Linux",
      "linkedServiceName": {
        "referenceName": "AzureStorageLinkedService",
        "type": "LinkedServiceReference"
      }
    },
    "connectVia": {
      "referenceName": "<name of Integration Runtime>",
      "type": "IntegrationRuntimeReference"
    }
  }
}

ユーザー割り当てマネージド ID の使用例

次の JSON は、Linux ベースのオンデマンド HDInsight のリンクされたサービスを定義します。 サービスは、必要なアクティビティを処理する Linux ベース の HDInsight クラスターを自動的に作成します。

{
  "name": "HDInsightOnDemandLinkedService",
  "properties": {
    "type": "HDInsightOnDemand",
    "typeProperties": {
      "clusterType": "hadoop",
      "clusterSize": 1,
      "timeToLive": "00:15:00",
      "hostSubscriptionId": "<subscription ID>",
      "clusterResourceGroup": "<resource group name>",
      "clusterResourceGroupAuthType": "UserAssignedManagedIdentity",
      "credential": {
            "referenceName": "CredentialName",
            "type": "CredentialReference"
       },
      "version": "3.6",
      "osType": "Linux",
      "linkedServiceName": {
        "referenceName": "AzureStorageLinkedService",
        "type": "LinkedServiceReference"
      }
    },
    "connectVia": {
      "referenceName": "<name of Integration Runtime>",
      "type": "IntegrationRuntimeReference"
    }
  }
}

Important

HDInsight クラスターは、JSON (linkedServiceName) で指定したblob storageに既定のコンテナーを作成します。 クラスターを削除しても、HDInsight はこのコンテナーを削除しません。 この動作は仕様です。 オンデマンド HDInsight のリンクされたサービスでは、既存のライブ クラスター (timeToLive) がない限り、スライスを処理する必要があるたびに HDInsight クラスターが作成され、処理が完了すると削除されます。

より多くのアクティビティが実行されると、Azure BLOB ストレージに多数のコンテナーが表示されます。 ジョブのトラブルシューティングのために必要ない場合、これらを削除してストレージ コストを削減できます。 これらのコンテナーの名前は、adf**yourfactoryorworkspacename**-**linkedservicename**-datetimestamp 形式になります。 Microsoft Azure Storage Explorer などのツールを使用して、Azure BLOB ストレージ内のコンテナーを削除します。

プロパティ

Property Description Required
type プロパティは HDInsightOnDemand に設定する必要があります。 Yes
clusterSize クラスター内の worker/データ ノードの数です。 このプロパティで指定した worker ノード数と共に 2 つのヘッド ノードを使用して HDInsight クラスターが作成されます。 ノードのサイズは Standard_D3 (4 コア) であるため、4 worker ノード クラスターのコアは 24 個になります (worker ノード用に 4*4 = 16 個のコアと、ヘッド ノード用に 2*4 = 8 個のコア)。 詳細については、Hadoop、Spark、Kafka などの HDInsight クラスターのセットアップに関する記事を参照してください。 Yes
linkedServiceName Azure Storageデータの格納と処理にオンデマンド クラスターによって使用されるリンクされたサービスです。 HDInsight クラスターは、このAzure Storage アカウントと同じリージョンに作成されます。 Azure HDInsightでは、サポートされている各Azureリージョンで使用できるコアの合計数に制限があります。 そのAzureリージョンに、必要な clusterSize を満たすのに十分なコア クォータがあることを確認します。 詳細については、Hadoop、Spark、Kafka などの HDInsight クラスターのセットアップに関する記事を参照してください

現時点では、Azure Data Lake Storage (Gen 2) をストレージとして使用するオンデマンド HDInsight クラスターを作成することはできません。 HDInsight 処理の結果データを Azure Data Lake Storage (Gen 2) に格納する場合は、コピー アクティビティを使用して、Azure Blob Storageから Azure Data Lake Storage (Gen 2) にデータをコピーします。

Yes
clusterResourceGroup HDInsight クラスターは、このリソース グループに作成されます。 Yes
clusterResourceGroupAuthType HDInsight オンデマンド クラスター リソース グループ認証の種類を指定します。 サポートされている認証の種類は、"ServicePrincipalKey"、"SystemAssignedManagedIdentity"、"UserAssignedManagedIdentity" です。 マネージド ID 認証を使用するために必要です。 フィールドが存在しない場合、既定では ServicePrincipalKey になります
資格情報 リソース グループへのアクセス権を持つマネージド ID オブジェクトを含む資格情報参照を指定します。 "UserAssignedManagedIdentity" 認証にのみ必要です。
timetolive オンデマンド HDInsight クラスターに許可されるアイドル時間です。 他のアクティブなジョブがクラスターにない場合、アクティビティ実行の完了後にオンデマンド HDInsight クラスターが起動状態を維持する時間を指定します。 最小許容値は 5 分 (00:05:00) です。

たとえば、アクティビティ実行に 6 分かかるときに timetolive が 5 分に設定されている場合、アクティビティ実行の 6 分間の処理の後、クラスターが起動状態を 5 分間維持します。 別のアクティビティ実行が 6 分の時間枠で実行される場合、それは同じクラスターで処理されます。

オンデマンド HDInsight クラスターの作成はコストが高い (時間がかかる可能性がある) 操作であるためため、オンデマンド HDInsight クラスターを再利用し、サービスのパフォーマンスを向上させるために、必要に応じてこの設定を使用します。

timetolive 値を 0 に設定した場合、アクティビティ実行の完了直後にクラスターが削除されます。 ただし、高い値を設定した場合、クラスターは、何らかのトラブルシューティングの目的でログオンできるようにアイドル状態を維持できますが、その結果コストが高くなる可能性があります。 そのため、ニーズに合わせて適切な値を設定することが重要です。

timetolive プロパティ値が適切に設定されている場合、複数のpipelinesがオンデマンド HDInsight クラスターのインスタンスを共有できます。
Yes
clusterType 作成する HDInsight クラスターの種類。 許可される値は "hadoop" および "spark" です。 指定しない場合は、既定値の hadoop が使用されます。 エンタープライズ セキュリティ パッケージ対応クラスターをオンデマンドで作成することはできません。代わりに、既存のクラスターを使用して独自のコンピューティングを使用 No
バージョン HDInsight クラスターのバージョン。 指定しない場合、現在の HDInsight 定義の既定バージョンを使用します。 No
hostSubscriptionId HDInsight クラスターの作成に使用するAzure サブスクリプション ID。 指定しない場合は、Azureログイン コンテキストのサブスクリプション ID が使用されます。 No
clusterNamePrefix HDI クラスター名のプレフィックス (クラスター名の末尾にタイムスタンプが自動的に追加されます) No
sparkVersion クラスターの種類が "Spark" の場合の Spark のバージョンです No
additionalLinkedServiceNames HDInsight のリンクされたサービスの追加のstorage アカウントを指定して、サービスがユーザーに代わって登録できるようにします。 これらのstorage アカウントは、linkedServiceName で指定されたstorage アカウントと同じリージョンに作成される HDInsight クラスターと同じリージョンに存在する必要があります。 No
osType オペレーティング システムの種類。 使用できる値は、Linux とWindowsです (HDInsight 3.3 のみ)。 既定値は Linux です。 No
hcatalogLinkedServiceName HCatalog データベースを指す Azure SQL のリンクされたサービスの名前。 オンデマンド HDInsight クラスターは、Azure SQL Databaseをメタストアとして使用して作成されます。 No
connectVia この HDInsight にリンクされたサービスに対してアクティビティを送信するために使用される Integration Runtime。 オンデマンド HDInsight のリンクされたサービスでは、Azure Integration Runtimeのみがサポートされます。 指定しない場合は、既定のAzure Integration Runtimeが使用されます。 No
clusterUserName クラスターにアクセスするためのユーザー名。 No
clusterPassword クラスターをaccessするためのセキュリティで保護された文字列の種類のパスワード。 No
clusterSshUserName クラスターのノードにリモートで接続する SSH のユーザー名 (Linux の場合)。 No
clusterSshPassword クラスターのノードにリモートで接続する SSH のセキュリティで保護された文字列の種類のパスワード (Linux の場合)。 No
scriptActions オンデマンド クラスター作成中に HDInsight クラスターのカスタマイズのスクリプトを指定します。
現在、UI 作成ツールは 1 つのスクリプト操作のみの指定をサポートしていますが、JSON でこの制限に対応できます (JSON で複数のスクリプト操作を指定できます)。
No

Important

HDInsight は、デプロイできる Hadoop クラスター バージョンを複数サポートしています。 各バージョンを選択すると、特定のバージョンの Hortonworks Data Platform (HDP) ディストリビューションと、そのディストリビューションに含まれるコンポーネントが作成されます。 HDInsight のサポートされるバージョンの一覧を常に更新して、最新の Hadoop エコシステム コンポーネントと修正プログラムを提供しています。 HDInsight のサポートされているバージョンを確実に使用するために、HDInsight のサポートされているバージョンと OS の種類に関する最新情報を常に参照してください。

Important

現在、HDInsight のリンクされたサービスでは、HBase、Interactive Query (Hive LLAP)、Storm はサポートされていません。

  • additionalLinkedServiceNames JSON の例
"additionalLinkedServiceNames": [{
    "referenceName": "MyStorageLinkedService2",
    "type": "LinkedServiceReference"          
}]

Authentication

サービス プリンシパルの認証

オンデマンドの HDInsight リンク サービスでは、ユーザーに代わって HDInsight クラスターを作成するためにサービス プリンシパル認証が必要になります。 サービス プリンシパル認証を使用するには、Microsoft Entra IDにアプリケーション エンティティを登録し、サブスクリプションまたは HDInsight クラスターが作成されるリソース グループの Contributor ロールを付与します。 詳細な手順については、「リソースにアクセスできるMicrosoft Entra アプリケーションとサービス プリンシパルを作成するポータルを使用するを参照してください。 次の値を記録しておきます。リンクされたサービスを定義するときに使います。

  • アプリケーション識別子
  • アプリケーション キー
  • テナント ID

次のプロパティを指定して、サービス プリンシパル認証を使います。

Property Description Required
servicePrincipalId アプリケーションのクライアント ID を取得します。 Yes
servicePrincipalKey アプリケーションのキーを取得します。 Yes
tenant アプリケーションが存在するテナントの情報 (ドメイン名またはテナント ID) を指定します。 Azure ポータルの右上隅にマウス ポインターを置くと取得できます。 Yes

マネージド ID 認証

Azure HDInsightオンデマンドのリンクされたサービスにマネージド ID 認証を使用する場合は、マネージド ID オブジェクトにリソース グループへの共同作成者ロール アクセス権があることを確認します。

ADLS Gen2 プライマリ storage アカウントでは、既存のキーベースの認証に加えて、ユーザー割り当てマネージド ID (UAMI) ベースの認証がサポートされるようになりました。 UAMI には、プライマリ ストレージ アカウントのストレージ BLOB データ所有者の権限が必要です。

制限事項:

  • ADLS Gen2 プライマリ storage アカウントと UAMI は、オンデマンド HDInsight クラスターの作成に使用されるリソース グループと同じリソース グループに存在する必要があります。
  • Data Factory の UAMI の資格情報オブジェクト名は、UAMI 名と完全に一致している必要があります。

詳細については、「Create Azure HDInsight - Azure Data Lake Storage Gen2 - portal および Azure HDInsight

詳細プロパティ

次のプロパティを指定し、オンデマンド HDInsight クラスターを詳細に設定することもできます。

Property Description Required
coreConfiguration 作成する HDInsight クラスターに core 構成パラメーター (core-site.xml と同じ) を指定します。 No
hBaseConfiguration HDInsight クラスターに HBase 構成パラメーター (hbase-site.xml) を指定します。 No
hdfsConfiguration HDInsight クラスターに HDFS 構成パラメーター (hdfs-site.xml) を指定します。 No
hiveConfiguration HDInsight クラスターに hive 構成パラメーター (hive-site.xml) を指定します。 No
mapReduceConfiguration HDInsight クラスターに MapReduce 構成パラメーター (mapred-site.xml) を指定します。 No
oozieConfiguration HDInsight クラスターに Oozie 構成パラメーター (oozie-site.xml) を指定します。 No
stormConfiguration HDInsight クラスターに Storm 構成パラメーター (storm-site.xml) を指定します。 No
yarnConfiguration HDInsight クラスターに Yarn 構成パラメーター (yarn-site.xml) を指定します。 No
  • 例 - 詳細なプロパティを使用したオンデマンド HDInsight クラスターの構成
{
    "name": " HDInsightOnDemandLinkedService",
    "properties": {
      "type": "HDInsightOnDemand",
      "typeProperties": {
          "clusterSize": 16,
          "timeToLive": "01:30:00",
          "hostSubscriptionId": "<subscription ID>",
          "servicePrincipalId": "<service principal ID>",
          "servicePrincipalKey": {
            "value": "<service principal key>",
            "type": "SecureString"
          },
          "tenant": "<tenant id>",
          "clusterResourceGroup": "<resource group name>",
          "version": "3.6",
          "osType": "Linux",
          "linkedServiceName": {
              "referenceName": "AzureStorageLinkedService",
              "type": "LinkedServiceReference"
            },
            "coreConfiguration": {
                "templeton.mapper.memory.mb": "5000"
            },
            "hiveConfiguration": {
                "templeton.mapper.memory.mb": "5000"
            },
            "mapReduceConfiguration": {
                "mapreduce.reduce.java.opts": "-Xmx4000m",
                "mapreduce.map.java.opts": "-Xmx4000m",
                "mapreduce.map.memory.mb": "5000",
                "mapreduce.reduce.memory.mb": "5000",
                "mapreduce.job.reduce.slowstart.completedmaps": "0.8"
            },
            "yarnConfiguration": {
                "yarn.app.mapreduce.am.resource.mb": "5000",
                "mapreduce.map.memory.mb": "5000"
            },
            "additionalLinkedServiceNames": [{
                "referenceName": "MyStorageLinkedService2",
                "type": "LinkedServiceReference"          
            }]
        }
    },
      "connectVia": {
      "referenceName": "<name of Integration Runtime>",
      "type": "IntegrationRuntimeReference"
    }
}

ノードのサイズ

次のプロパティを使用して、ヘッド ノード、データ ノード、Zookeeper ノードのサイズを指定できます。

Property Description Required
headNodeSize ヘッド ノードのサイズを指定します。 既定値は Standard_D3 です。 詳細については、「ノードのサイズの指定」をご覧ください。 No
dataNodeSize データ ノードのサイズを指定します。 既定値は Standard_D3 です。 No
zookeeperNodeSize Zookeeper ノードのサイズを指定します。 既定値は Standard_D3 です。 No
  • ノード サイズの指定 前のセクションで説明したプロパティに指定する必要がある文字列値についてはsizes of Virtual Machinesの記事を参照してください。 値は、この記事に記載されているコマンドレットと API に準拠する必要があります。 この記事に示すように、Large (既定値) サイズのデータ ノードのメモリ容量は 7 GB ですが、シナリオによってはこれでは不十分な場合があります。

D4 サイズのヘッド ノードとワーカー ノードを作成する場合は、headNodeSize プロパティと dataNodeSize プロパティの値として Standard_D4 を指定します。

"headNodeSize": "Standard_D4",    
"dataNodeSize": "Standard_D4",

これらのプロパティに間違った値を指定すると、次のエラーが表示される可能性があります : クラスターの作成に失敗しました。 例外: クラスター作成操作を完了できません。 コード '400' で操作が失敗しました。 取り残されたクラスターの状態: 'Error'。 メッセージ: 'PreClusterCreationValidationFailure'。 このエラーが発生した場合は、必ず CMDLET & APIS の名前を 仮想マシンのサイズに関する記事の表から使用していることを確認してください。

Bring Your Own のコンピューティング環境

この種類の構成では、既存のコンピューティング環境をリンク サービスとして登録できます。 このコンピューティング環境はユーザーにより管理され、サービスではこれを使用してアクティビティを実行します。

この種類の構成は次のコンピューティング環境でサポートされています。

  • Azure HDInsight
  • Azure Batch
  • Azure Machine Learning
  • Azure Data Lake Analytics
  • Azure SQL DB、Azure Synapse Analytics、SQL Server

リンクされたサービスAzure HDInsight

Azure HDInsightリンクされたサービスを作成して、独自の HDInsight クラスターをデータ ファクトリまたは Synapse ワークスペースに登録できます。

基本認証の使用例

{
    "name": "HDInsightLinkedService",
    "properties": {
      "type": "HDInsight",
      "typeProperties": {
        "clusterUri": " https://<hdinsightclustername>.azurehdinsight.net/",
        "userName": "username",
        "password": {
            "value": "passwordvalue",
            "type": "SecureString"
          },
        "linkedServiceName": {
              "referenceName": "AzureStorageLinkedService",
              "type": "LinkedServiceReference"
        }
      },
      "connectVia": {
        "referenceName": "<name of Integration Runtime>",
        "type": "IntegrationRuntimeReference"
      }
    }
  }

システム割り当てマネージド ID の使用例

{
    "name": "HDInsightLinkedService",
    "properties": {
      "type": "HDInsight",
      "typeProperties": {
        "clusterUri": " https://<hdinsightclustername>.azurehdinsight.net/",
        "clusterAuthType": "SystemAssignedManagedIdentity",
        "linkedServiceName": {
              "referenceName": "AzureStorageLinkedService",
              "type": "LinkedServiceReference"
        }
      },
      "connectVia": {
        "referenceName": "<name of Integration Runtime>",
        "type": "IntegrationRuntimeReference"
      }
    }
  }

ユーザー割り当てマネージド ID の使用例

{
    "name": "HDInsightLinkedService",
    "properties": {
      "type": "HDInsight",
      "typeProperties": {
        "clusterUri": " https://<hdinsightclustername>.azurehdinsight.net/",
         "clusterAuthType": "UserAssignedManagedIdentity",
         "credential": {
                "referenceName": "CredentialName",
                "type": "CredentialReference"
            },
        "linkedServiceName": {
              "referenceName": "AzureStorageLinkedService",
              "type": "LinkedServiceReference"
        }
      },
      "connectVia": {
        "referenceName": "<name of Integration Runtime>",
        "type": "IntegrationRuntimeReference"
      }
    }
  }

プロパティ

Property Description Required
type プロパティは HDInsight に設定する必要があります。 Yes
clusterUri HDInsight クラスターの URI です。 Yes
ユーザー名 既存の HDInsight クラスターに接続するために使用されるユーザーの名前を指定します。 Yes
パスワード ユーザー アカウントのパスワードを指定します。 Yes
linkedServiceName HDInsight クラスターで使用される Azure Blob ストレージを参照する Azure Storage 接続済みサービスの名前。

現時点では、このプロパティにAzure Data Lake Storage (Gen 2) のリンクされたサービスを指定することはできません。 HDInsight クラスターが Data Lake ストアにアクセスできる場合は、Hive/Pig スクリプトから Azure Data Lake Storage (Gen 2) 内のデータにアクセスできます。

Yes
isEspEnabled HDInsight クラスターが Enterprise セキュリティ パッケージが有効になっている場合は、'true' を指定します。 既定値は 'false' です。 No
connectVia このリンクされたサービスにアクティビティをディスパッチするために使用される予定のインテグレーションランタイム。 Azure Integration Runtimeまたはセルフホステッド Integration Runtimeを使用できます。 指定しない場合は、既定のAzure Integration Runtimeが使用されます。
Enterprise Security Package (ESP) が有効な HDInsight クラスターでは、セルフホステッド統合ランタイムを使用します。このランタイムは、クラスターに対する見通し線を持っているか、ESP HDInsight クラスターと同じVirtual Network内にデプロイする必要があります。
No
clusterAuthType HDInsight クラスター認証の種類を指定します。 サポートされている認証の種類は、"BasicAuth"、"SystemAssignedManagedIdentity"、"UserAssignedManagedIdentity" です。 マネージド ID 認証を使用するために必要です。フィールドが存在しない場合、既定では BasicAuth になります
資格情報 HDInsight クラスターのマネージド ID オブジェクト情報を含む資格情報参照を指定します。 "UserAssignedManagedIdentity" 認証にのみ必要です

Authentication

ADLS Gen2 のAzure Storageリンクされたサービスでは、既存の認証方法に加えて、システム割り当てマネージド ID とユーザー割り当てマネージド ID がサポートされるようになりました。 このサポートは、Azure Integration Runtime (Azure IR) を使用する場合に既定で使用でき、バージョン 5.55.9306.2 以降のセルフホステッド Integration Runtime (SHIR) でサポートされます。 Azure Blob Storageの場合、Azure Storageリンクされたサービスは引き続きアカウント キー認証のみをサポートします。 クラスター マネージド ID 認証は、Azure IR を使用するときに既定で使用できるようになりました。バージョン 5.58 以降の SHIR でサポートされています。 クラスターを作成する場合、クラスターごとに使用できる認証方法は 1 つだけです。 マネージド ID を使用したクラスターの作成と管理の詳細については、「認証を使用して Entra IDクラスター Azure HDInsight作成および管理する

Important

HDInsight は、デプロイできる Hadoop クラスター バージョンを複数サポートしています。 各バージョンを選択すると、特定のバージョンの Hortonworks Data Platform (HDP) ディストリビューションと、そのディストリビューションに含まれるコンポーネントが作成されます。 HDInsight のサポートされるバージョンの一覧を常に更新して、最新の Hadoop エコシステム コンポーネントと修正プログラムを提供しています。 HDInsight のサポートされているバージョンを確実に使用するために、HDInsight のサポートされているバージョンと OS の種類に関する最新情報を常に参照してください。

Important

現在、HDInsight のリンクされたサービスでは、HBase、Interactive Query (Hive LLAP)、Storm はサポートされていません。

リンクされたサービスAzure Batch

Note

Azure Az PowerShell モジュールを使用してAzureを操作することをお勧めします。 作業を開始するには、「Install Azure PowerShellを参照してください。 Az PowerShell モジュールに移行する方法については、「AzRM から Azを参照してください。

Azure Batch にリンクされたサービスを作成し、仮想マシン (VM) の Batch プールをデータ ワークスペースまたは Synapse ワークスペースに登録できます。 Azure Batchを使用してカスタム アクティビティを実行できます。

Azure Batch サービスを初めて使用する場合は、次の記事を参照してください。

Important

新しいAzure Batch プールを作成するときは、'CloudServiceConfiguration' ではなく、'VirtualMachineConfiguration' を使用する必要があります。

Example

{
    "name": "AzureBatchLinkedService",
    "properties": {
      "type": "AzureBatch",
      "typeProperties": {
        "accountName": "batchaccount",
        "accessKey": {
          "type": "SecureString",
          "value": "access key"
        },
        "batchUri": "https://batchaccount.region.batch.azure.com",
        "poolName": "poolname",
        "linkedServiceName": {
          "referenceName": "StorageLinkedService",
          "type": "LinkedServiceReference"
        }
      },
      "connectVia": {
        "referenceName": "<name of Integration Runtime>",
        "type": "IntegrationRuntimeReference"
      }
    }
  }

プロパティ

Property Description Required
type プロパティは AzureBatch に設定する必要があります。 Yes
accountName Azure Batch アカウントの名前。 Yes
accessKey Azure Batch アカウントのアクセス キー。 Yes
batchUri https://batchaccountname.region.batch.azure.com の形式でAzure Batch アカウントへの URL。 Yes
poolName 仮想マシンのプール名。 Yes
linkedServiceName この Azure Batch の「リンクされたサービス」に関連付けられている Azure Storage の「リンクされたサービス」の名前です。 この「リンクされたサービス」はアクティビティの実行に必要なファイルのステージングに利用されます。 Yes
connectVia このリンクされたサービスにアクティビティを送信するために使用する統合ランタイム。 Azure Integration Runtimeまたはセルフホステッド Integration Runtimeを使用できます。 指定しない場合は、既定のAzure Integration Runtimeが使用されます。 No

Machine Learning Studio (クラシック) のリンクされたサービス

Important

Azure Machine Learning Studio (クラシック) のサポートは、2024 年 8 月 31 日に終了します。 その日付までに Azure Machine Learning に移行することをお勧めします。

2021 年 12 月 1 日の時点で、新しい Machine Learning Studio (クラシック) リソース (ワークスペースと Web サービス プラン) を作成することはできません。 2024 年 8 月 31 日まで、既存の Machine Learning Studio (クラシック) 実験と Web サービスを引き続き使用できます。 詳細については、次を参照してください。

Machine Learning Studio (クラシック) ドキュメントは廃止され、今後更新されない可能性があります。

Machine Learning Studio (クラシック) のリンクされたサービスを作成して、Machine Learning Studio (クラシック) バッチ スコアリング エンドポイントをデータ ファクトリまたは Synapse ワークスペースに登録します。

Example

{
    "name": "AzureMLLinkedService",
    "properties": {
      "type": "AzureML",
      "typeProperties": {
        "mlEndpoint": "https://[batch scoring endpoint]/jobs",
        "apiKey": {
            "type": "SecureString",
            "value": "access key"
        }
     },
     "connectVia": {
        "referenceName": "<name of Integration Runtime>",
        "type": "IntegrationRuntimeReference"
      }
    }
}

プロパティ

Property Description Required
タイプ type プロパティは 、AzureML に設定する必要があります。 Yes
mlEndpoint バッチ スコアリング URL です。 Yes
apiKey 公開されたワークスペース モデルの API です。 Yes
updateResourceEndpoint トレーニング済みモデル ファイルを使用した予測 Web サービスの更新に使用される ML Studio (クラシック) Web サービス エンドポイントの更新リソース URL です No
servicePrincipalId アプリケーションのクライアント ID を取得します。 UpdateResourceEndpoint が指定されている場合は必須です
servicePrincipalKey アプリケーションのキーを取得します。 UpdateResourceEndpoint が指定されている場合は必須です
テナント アプリケーションが存在するテナントの情報 (ドメイン名またはテナント ID) を指定します。 Azure ポータルの右上隅にマウス ポインターを置くと取得できます。 UpdateResourceEndpoint が指定されている場合は必須です
connectVia このリンクされたサービスにアクティビティを送信するために使用するインテグレーションランタイム。 Azure Integration Runtimeまたはセルフホステッド Integration Runtimeを使用できます。 指定しない場合は、既定のAzure Integration Runtimeが使用されます。 No

リンクされたサービスAzure Machine Learning

Azure Machine Learningリンクされたサービスを作成して、Azure Machine Learning ワークスペースをデータ ファクトリまたは Synapse ワークスペースに接続します。

Note

現在、Azure Machine Learningのリンクされたサービスでは、サービス プリンシパル認証のみがサポートされています。

Example

{
    "name": "AzureMLServiceLinkedService",
    "properties": {
        "type": "AzureMLService",
        "typeProperties": {
            "subscriptionId": "subscriptionId",
            "resourceGroupName": "resourceGroupName",
            "mlWorkspaceName": "mlWorkspaceName",
            "servicePrincipalId": "service principal id",
            "servicePrincipalKey": {
                "value": "service principal key",
                "type": "SecureString"
            },
            "tenant": "tenant ID"
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime?",
            "type": "IntegrationRuntimeReference"
        }
    }
}

プロパティ

Property Description Required
タイプ type プロパティは 、AzureMLService に設定する必要があります。 Yes
subscriptionId Azure サブスクリプション ID Yes
resourceGroupName name Yes
mlWorkspaceName Azure Machine Learning のワークスペース名 Yes
servicePrincipalId アプリケーションのクライアント ID を取得します。 Yes
servicePrincipalKey アプリケーションのキーを取得します。 Yes
テナント アプリケーションが存在するテナントの情報 (ドメイン名またはテナント ID) を指定します。 Azure ポータルの右上隅にマウス ポインターを置くと取得できます。 UpdateResourceEndpoint が指定されている場合は必須です
connectVia このリンクされたサービスにアクティビティを送信するために使用するIntegration Runtime。 Azure Integration Runtimeまたはセルフホステッド Integration Runtimeを使用できます。 指定しない場合は、既定のAzure Integration Runtimeが使用されます。 No

リンクされたサービスAzure Data Lake Analytics

Azure Data Lake Analyticsリンクされたサービスを作成して、Azure Data Lake Analyticsコンピューティング サービスをデータ ファクトリまたは Synapse ワークスペースにリンクします。 パイプラインの Data Lake Analytics U-SQL アクティビティは、このリンクされたサービスを参照します。

Example

{
    "name": "AzureDataLakeAnalyticsLinkedService",
    "properties": {
        "type": "AzureDataLakeAnalytics",
        "typeProperties": {
            "accountName": "adftestaccount",
            "dataLakeAnalyticsUri": "azuredatalakeanalytics URI",
            "servicePrincipalId": "service principal id",
            "servicePrincipalKey": {
                "value": "service principal key",
                "type": "SecureString"
            },
            "tenant": "tenant ID",
            "subscriptionId": "<optional, subscription ID of ADLA>",
            "resourceGroupName": "<optional, resource group name of ADLA>"
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }
    }
}

プロパティ

Property Description Required
type プロパティは 、AzureDataLakeAnalytics に設定する必要があります。 Yes
accountName Azure Data Lake Analyticsアカウント名。 Yes
dataLakeAnalyticsUri Azure Data Lake AnalyticsのURI。 No
subscriptionId Azure サブスクリプション ID No
resourceGroupName Azure リソース グループ名 No
servicePrincipalId アプリケーションのクライアント ID を取得します。 Yes
servicePrincipalKey アプリケーションのキーを取得します。 Yes
テナント アプリケーションが存在するテナントの情報 (ドメイン名またはテナント ID) を指定します。 Azure ポータルの右上隅にマウス ポインターを置くと取得できます。 Yes
connectVia このリンクされたサービスにアクティビティをディスパッチするために使用するインテグレーション ランタイム。 Azure Integration Runtimeまたはセルフホステッド Integration Runtimeを使用できます。 指定しない場合は、既定のAzure Integration Runtimeが使用されます。 No

リンクされたサービスAzure Databricks

Azure Databricksリンクされたサービスを作成して、Databricks ワークロード (ノートブック、jar、python) の実行に使用する Databricks ワークスペースを登録できます。

Important

Databricks のリンクされたサービスでは、 インスタンス プール とシステム割り当てマネージド ID 認証がサポートされます。

例 - Databricks で新しいジョブ クラスターの使用

{
    "name": "AzureDatabricks_LS",
    "properties": {
        "type": "AzureDatabricks",
        "typeProperties": {
            "domain": "https://eastus.azuredatabricks.net",
            "newClusterNodeType": "Standard_D3_v2",
            "newClusterNumOfWorker": "1:10",
            "newClusterVersion": "4.0.x-scala2.11",
            "accessToken": {
                "type": "SecureString",
                "value": "YourAccessToken"
            }
        }
    }
}

例 - Databricks で対話型の既存クラスターの使用

{
    "name": " AzureDataBricksLinkedService",
    "properties": {
      "type": " AzureDatabricks",
      "typeProperties": {
        "domain": "https://westeurope.azuredatabricks.net",
        "accessToken": {
            "type": "SecureString", 
            "value": "YourAccessToken"
          },
        "existingClusterId": "{clusterId}"
        }
}

プロパティ

Property Description Required
name リンクされたサービスの名前 Yes
type プロパティは、Azure Databricks に設定する必要があります。 Yes
ドメイン それに応じて、Databricks ワークスペースのリージョンに基づいてAzureリージョンを指定します。 例: https://eastus.azuredatabricks.net Yes
accessToken サービスがAzure Databricksに対して認証するには、アクセス トークンが必要です。 Accessトークンは、databricks ワークスペースから生成する必要があります。 access トークンを取得するための詳細な手順については、ここを参照してください。 No
MSI サービスのマネージド ID (システム割り当て) を使用して、Azure Databricksに対する認証を行います。 'MSI' 認証を使用する場合、Access トークンは必要ありません。 マネージド ID 認証の詳細については、こちら No
existingClusterId このすべてのジョブを実行する既存のクラスターのクラスター ID。 これは作成済みの対話型クラスターでなければなりません。 応答が停止した場合は、クラスターの手動再起動が必要になることがあります。 Databricks では、信頼性を高めるために新しいクラスターでジョブを実行することをお勧めします。 対話型クラスターのクラスター ID は Databricks ワークスペース -> クラスター -> 対話型クラスター名 -> 構成 -> タグで見つけることができます。 [詳細] No
instancePoolId Databricks ワークスペース内の既存のプールのインスタンス プール ID。 No
newClusterVersion クラスターの Spark バージョン。 Databricks にジョブ クラスターを作成します。 No
newClusterNumOfWorker このクラスターに属する worker ノードの数。 1 つのクラスターには 1 つの Spark ドライバーと num_workers Executor、全体では num_workers + 1 Spark ノードになります。 文字列は Int32 で設定されます。たとえば、"1" は、numOfWorker が 1 であること、"1:10" は、最小が 1 で最大が 10 の自動スケーリングを意味します。 No
newClusterNodeType このフィールドは、単一の値を通じて使用されるリソースをこのクラスターのそれぞれの Spark ノードにエンコードします。 たとえば、Spark ノードはメモリまたはコンピューティング集約型ワークロード用にプロビジョニングされ、最適化されます。 このフィールドは、新しいクラスターに必須です。 No
newClusterSparkConf 省略可能なユーザー指定の Spark 構成キーと値のペアのセット。 ユーザーは、余分な JVM オプションの文字列をドライバーと Executor にそれぞれ spark.driver.extraJavaOptions および spark.executor.extraJavaOptions を介して渡すこともできます。 No
newClusterInitScripts 新しいクラスター用のユーザーが定義した省略可能な初期化スクリプトのセット。 init スクリプトは、ワークスペース ファイル (推奨) または DBFS パス (レガシ) を使用して指定できます。 No

リンクされたサービスAzure SQL Database

Azure SQLリンクされたサービスを作成し、 ストアド プロシージャ アクティビティ と共に使用して、パイプラインからストアド プロシージャを呼び出します。 このリンクされたサービスの詳細については、Azure SQL コネクタに関する記事を参照してください。

Azure Synapse Analytics のリンク サービス

Azure Synapse Analyticsリンクされたサービスを作成し、 ストアド プロシージャ アクティビティと共に使用して、パイプラインからストアド プロシージャを呼び出します。 このリンクされたサービスの詳細については、Azure Synapse Analytics コネクタに関する記事を参照してください。

SQL Server のリンク サービス

SQL Serverリンクされたサービスを作成し、 ストアド プロシージャ アクティビティと共に使用して、パイプラインからストアド プロシージャを呼び出します。 このリンクされたサービスの詳細については、SQL Server コネクタに関する記事を参照してください。

Azure Synapse Analytics (アーティファクト) のリンク サービス

Azure Synapse Analytics (Artifacts) のリンクされたサービスを作成し、Synapse Notebook Activity および Synapse Spark ジョブ定義アクティビティで使用します。

Example

{
    "name": "AzureSynapseArtifacts",
    "type": "Microsoft.DataFactory/factories/linkedservice",
    "properties": {
      "properties": {
        "a":{
          "type": "String"
        }
      },
        "annotations": [],
        "type": "AzureSynapseArtifacts",
        "typeProperties": {
            "endpoint": "@{linkedService().a}",
            "authentication": "MSI",
            "workspaceResourceId": ""
        },
        "ConnectVia":{
          "referenceName": "integrationRuntime1",
          "type": "IntegrationRuntimeReference"
        }
    }
}

プロパティ

Property Description Required
name リンクされたサービスの名前 Yes
description リンク サービスの説明 No
annotations リンク サービスの注釈 No
type プロパティは AzureSynapseArtifacts に設定する必要があります Yes
エンドポイント Azure Synapse Analytics URL Yes
認証 既定の設定はシステム割り当てマネージド ID です Yes
workspaceResourceId ワークスペースのリソース ID Yes
connectVia データ ストアに接続するために使用する統合ランタイム。 Azure Integration Runtimeを使用できます。 指定しない場合は、既定のAzure Integration Runtimeが使用されます。 セルフホステッドインテグレーションランタイムは現在サポートされていません。 Yes

Azure関数のリンクされたサービス

Azure関数のリンクされたサービスを作成し、Azure Function アクティビティと共に使用して、パイプラインでAzure Functionsを実行します。 Azure関数の戻り値の型は、有効なJObjectである必要があります。 JArrayないであることに注意してください。ただし、以外の戻り値の型はエラーになり、ユーザーエラーとして「レスポンスコンテンツが有効な JObject ではありません」が発生します。

Property Description Required
type プロパティは次のように設定する必要があります: AzureFunction yes
関数アプリの URL Azure Function App の URL。 形式は https://<accountname>.azurewebsites.net です。 この URL は、Azure ポータルで Function App を表示するときの URL セクションの値です。 yes
関数キー Azure関数のアクセス キー。 それぞれの関数の [管理 ] セクションをクリックし、 関数キー または ホスト キーをコピーします。 詳細については、以下をご覧ください。access キーを使用した作業 yes

サポートされている変換アクティビティの一覧については、「データの 変換」を参照してください。