1

我想使用 Data Factory V2 执行具有依赖项(egg 或 zip 文件)的 PySpark 作业。

当以 spark-submit 方法的形式直接在头节点集群 (HD Insight) 上运行命令时,它如下所示(并且有效):

火花提交--py-files 0.3-py3.6.egg main.py 1

在数据工厂(V2)中,我尝试定义以下内容:

{
    "name": "dimension",
    "properties": {
        "activities": [{
                "name": "Spark1",
                "type": "HDInsightSpark",
                "policy": {
                    "timeout": "7.00:00:00",
                    "retry": 0,
                    "retryIntervalInSeconds": 30,
                    "secureOutput": false
                },
                "typeProperties": {
                    "rootPath": "adfspark",
                    "entryFilePath": "main.py",
                    "getDebugInfo": "Always",
                    "sparkConfig": {
                        "spark.submit.pyFiles": "0.3-py3.6.egg"
                    },
                    "sparkJobLinkedService": {
                        "referenceName": "AzureStorageLinkedService",
                        "type": "LinkedServiceReference"
                    }
                },
                "linkedServiceName": {
                    "referenceName": "hdinsightlinkedService",
                    "type": "LinkedServiceReference"
                }
            }
        ]
    }
}

所有这一切都是在“adfspark”是容器并且依赖项位于“pyFiles”文件夹中的情况下,就像 Azure 文档中建议的那样: https ://docs.microsoft.com/en-us/azure/data-factory /tutorial-transform-data-spark-powershell

尽管分布式执行是这里的真正目标,但仅在头节点上运行作业就足够了

4

0 回答 0