Pig Application Specifics for Earlier AMI Versions of Amazon EMR - Amazon EMR
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

Pig Application Specifics for Earlier AMI Versions of Amazon EMR

Supported Pig Versions

您可以添加到集群的 Pig 版本取决于您所使用的 Amazon EMR AMI 的版本和 Hadoop 的版本。下表显示的是哪些 AMI 和 Hadoop 版本与哪些 Pig 版本兼容。我们建议使用最新版本的 Pig,以便利用各种性能增强和新的功能。

当您使用 API 安装 Pig 时,除非在调用 RunJobFlow 的过程中指定 --pig-versions 作为将 Pig 加载到集群的步骤的参数,否则将会使用默认版本。

Pig 版本 AMI 版本 配置参数 Pig 版本详细信息
0.12.0

发行说明

文档:

3.1.0 和更高版本

--ami-version 3.1

--ami-version 3.2

--ami-version 3.3

添加对以下各项的支持:

  • Streaming UDFs without JVM implementations

  • ASSERT and IN operators

  • CASE expression

  • AvroStorage as a Pig built-in function.

  • ParquetLoader and ParquetStorer as built-in functions

  • BigInteger and BigDecimal types

0.11.1.1

发行说明

文档:

2.2 和更高版本

--pig-versions 0.11.1.1

--ami-version 2.2

改进了在输入位于 Amazon S3 中的情况下 LOAD 命令针对 PigStorage 的性能。

0.11.1

发行说明

文档:

2.2 和更高版本

--pig-versions 0.11.1

--ami-version 2.2

增加了对 JDK 7、Hadoop 2、Groovy 用户定义的函数、SchemaTuple 优化、新运算符等等的支持。有关更多信息,请参阅 Pig 0.11.1 Change Log

0.9.2.2

发行说明

文档:

2.2 和更高版本

--pig-versions 0.9.2.2

--ami-version 2.2

添加了对于 Hadoop 1.0.3 的支持。

0.9.2.1

发行说明

文档:

2.2 和更高版本

--pig-versions 0.9.2.1

--ami-version 2.2

增加了对 MapR 的支持。

0.9.2

发行说明

文档:

2.2 和更高版本

--pig-versions 0.9.2

--ami-version 2.2

包括多项性能改进和错误修复。有关 Pig 0.9.2 的更改的完整信息,请转到 Pig 0.9.2 Change Log

0.9.1

发行说明

文档:

~ 2.0

--pig-versions 0.9.1

--ami-version 2.0

0.6

发行说明

1.0

--pig-versions 0.6

--ami-version 1.0

0.3

发行说明

1.0

--pig-versions 0.3

--ami-version 1.0

Pig Version Details

Amazon EMR 支持可能应用了其他 Amazon EMR 补丁的某些 Pig 版本。您可以配置要在 Amazon EMR 集群上运行的 Pig 版本。有关此操作的详细信息,请参阅 Apache Pig。以下部分介绍了各种 Pig 版本以及应用到 Amazon EMR 上所加载版本的修补程序。

Pig Patches

本节介绍应用到 Amazon EMR 可用的 Pig 版本的自定义修补程序。

Pig 0.11.1.1 Patches

Amazon EMR 版本的 Pig 0.11.1.1 一个维护版,改进了在输入位于 Amazon S3 中的情况下 LOAD 命令针对 PigStorage 的性能。

Pig 0.11.1 Patches

Amazon EMR 版本的 Pig 0.11.1 包含 Apache 软件基金会提供的所有更新以及从 Pig 0.9.2.2 版本开始累积的 Amazon EMR 补丁。但是,Pig 0.11.1 中没有特定于 Amazon EMR 的新修补程序。

Pig 0.9.2 Patches

Apache Pig 0.9.2 是 Pig 的维护版。Amazon EMR 团队已将以下补丁应用到 Amazon EMR 版本的 Pig 0.9.2。

修补 Description
PIG-1429

将布尔数据类型以第一个类数据类型的形式添加到 Pig。有关更多信息,请转到 https://issues.apache.org/jira/browse/PIG-1429

Status (状态) 已承诺

在ApachePig版本中固定: 0.10 美元

PIG-1824

支持 Jython UDF 中的导入模块。有关更多信息,请转到 https://issues.apache.org/jira/browse/PIG-1824

Status (状态) 已承诺

在ApachePig版本中固定: 0.10 美元

PIG-2010

在分布式缓存上捆绑已注册的 JAR。有关更多信息,请转到 https://issues.apache.org/jira/browse/PIG-2010

Status (状态) 已承诺

在ApachePig版本中固定: 0.11

PIG-2456

添加 ~/.pigbootup 文件,用户可以在其中指定默认的 Pig 语句。有关更多信息,请转到 https://issues.apache.org/jira/browse/PIG-2456

Status (状态) 已承诺

在ApachePig版本中固定: 0.11

PIG-2623

支持使用 Amazon S3 路径注册 UDF。有关更多信息,请转到 https://issues.apache.org/jira/browse/PIG-2623

Status (状态) 已承诺

在ApachePig版本中固定: 0.10、0.11

Pig 0.9.1 Patches

Amazon EMR 团队已将以下补丁应用到 Amazon EMR 版本的 Pig 0.9.1。

修补 Description
支持 dfs 中的 JAR 文件和 Pig 脚本

添加对于 HDFS、Amazon S3 或者其他分布式文件系统中存储的运行脚本和已注册 JAR 文件的支持。有关更多信息,请转到 https://issues.apache.org/jira/browse/PIG-1505

Status (状态) 已承诺

在ApachePig版本中固定: 0.8.0

支持 Pig 中的多个文件系统

添加对于 Pig 脚本的支持,以便从一个文件系统中读取数据,并写入另一个文件系统。有关更多信息,请转到 https://issues.apache.org/jira/browse/PIG-1564

Status (状态) 未提交

已在以下 Apache Pig 版本中修复:不适用

添加 Piggybank 日期/时间和字符串 UDF

添加日期/时间和字符串 UDF,以支持自定义 Pig 脚本。有关更多信息,请转到 https://issues.apache.org/jira/browse/PIG-1565

Status (状态) 未提交

已在以下 Apache Pig 版本中修复:不适用

Interactive and Batch Pig Clusters

Amazon EMR 可让您以两种模式运行 Pig 脚本:

  • Interactive

  • Batch

当您使用控制台或 AWS CLI 启动长时间运行的集群时,您可以使用 ssh 以 Hadoop 用户身份连接到主节点,并使用 Grunt shell 以交互方式开发并运行您的 Pig 脚本。以交互方式使用 Pig,您就可以比批处理方式更轻松地修改 Pig 脚本。以交互模式成功修改 Pig 脚本之后,可以将脚本上传到 Amazon S3,并使用批处理模式在生产环境中运行该脚本。您还可以根据需要,在正在运行的集群中以交互方式提交 Pig 命令来分析和转换数据。

在批处理模式下,需要将 Pig 脚本上传到 Amazon S3,然后作为操作步骤将此工作提交到集群。Pig 步骤可提交到长时间运行的集群或临时集群。