在 Azure 数据工厂或 Synapse Analytics 中使用 Hadoop Pig 活动转换数据

适用于: Azure 数据工厂 Azure Synapse Analytics

数据工厂管道中的 HDInsight Pig 活动会在自己的按需 HDInsight 群集上执行 Pig 查询。 本文基于数据转换活动一文,它概述了数据转换和受支持的转换活动。

要了解详细信息,请在阅读本文之前,先通读 Azure 数据工厂Synapse Analytics 的简介,并学习教程:转换数据

使用 UI 将 HDInsight Pig 活动添加到管道

要将 HDInsight Pig 活动用于管道,请完成以下步骤:

  1. 在管道“活动”窗格中搜索 Pig,然后将 Pig 活动拖到管道画布上。

  2. 在画布上选择新的 Pig 活动(如果尚未选择)。

  3. 选择“HDI 群集”选项卡以选择或创建新的链接到 HDInsight 群集的服务,该群集将用于执行 MapReduce 活动。

    显示 Pig 活动的 UI。

  4. 选择“脚本”选项卡,选择或创建到 Azure 存储帐户新脚本链接服务,该帐户将托管脚本。 指定要在其中执行的类名,以及存储位置内的文件路径。 还可以配置高级详细信息,包括调试配置以及要传递给脚本的实参和形参。

    显示 Pig 活动的“脚本”选项卡的 UI。

语法

json
{
    "name": "Pig Activity",
    "description": "description",
    "type": "HDInsightPig",
    "linkedServiceName": {
        "referenceName": "MyHDInsightLinkedService",
        "type": "LinkedServiceReference"
    },
    "typeProperties": {
        "scriptLinkedService": {
            "referenceName": "MyAzureStorageLinkedService",
            "type": "LinkedServiceReference"
        },
        "scriptPath": "MyAzureStorage\\PigScripts\\MyPigScript.pig",
        "getDebugInfo": "Failure",
        "arguments": [
            "SampleHadoopJobArgument1"
        ],
        "defines": {
            "param1": "param1Value"
        }
    }   
}

语法详细信息

属性 描述 必需
name 活动名称
description 描述活动用途的文本
type 对于 Hive 活动,活动类型是 HDinsightPig
linkedServiceName 引用注册为链接服务的 HDInsight 群集。 若要了解此链接服务,请参阅计算链接服务一文。
scriptLinkedService 对 Azure 存储链接服务的引用,该服务用于存储要执行的 Pig 脚本。 此处仅支持 Azure Blob 存储ADLS Gen2 链接服务 。 如果未指定此链接服务,则使用 HDInsight 链接服务中定义的 Azure 存储链接服务。
scriptPath 提供由 scriptLinkedService 引用的 Azure 存储中存储的脚本文件的路径。 文件名称需区分大小写。
getDebugInfo 指定何时将日志文件复制到 HDInsight 群集使用的(或者)scriptLinkedService 指定的 Azure 存储。 允许的值:None、Always 或 Failure。 默认值:无。
参数 指定 Hadoop 作业的参数数组。 参数以命令行参数的形式传递到每个任务。
定义 在 Pig 脚本中指定参数作为键/值对,以供引用。

参阅以下文章了解如何以其他方式转换数据: