早期AMI版本的 Amazon 的 Pig 应用程序细节 EMR - Amazon EMR
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

早期AMI版本的 Amazon 的 Pig 应用程序细节 EMR

支持的 Pig 版本

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

使用安装 Pig 时,API将使用默认版本,除非您在调用期间--pig-versions将 Pig 加载到集群的步骤中指定为参数RunJobFlow

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

发布说明

文档

3.1.0 和更高版本

--ami-version 3.1

--ami-version 3.2

--ami-version 3.3

添加对以下各项的支持:

  • UDFs无需JVM实现即可进行直播

  • ASSERT和 IN 运算符

  • CASE 表达式

  • AvroStorage 作为 Pig 的内置函数。

  • ParquetLoader 并 ParquetStorer 作为内置函数

  • BigInteger 和 BigDecimal 类型

0.11.1.1

发布说明

文档

2.2 和更高版本

--pig-versions 0.11.1.1

--ami-version 2.2

PigStorage 如果输入位于 Amazon S3 中,则可以提高LOAD命令的性能。

0.11.1

发布说明

文档

2.2 和更高版本

--pig-versions 0.11.1

--ami-version 2.2

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

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 更改日志

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 版本详细信息

亚马逊EMR支持某些 Pig 版本,这些版本可能会应用其他亚马逊EMR补丁。您可以配置在 Amazon EMR 集群上运行哪个版本的 Pig。有关此操作的详细信息,请参阅 Apache Pig。以下各节介绍不同的 Pig 版本以及应用于 Amazon 上加载的版本的补丁EMR。

Pig 修补

本节介绍应用于 Amazon 上提供的 Pig 版本的自定义补丁EMR。

Pig 0.11.1.1 修补

亚马逊EMR版本的 Pig 0.11.1.1 是一个维护版本, PigStorage 如果输入位于亚马逊 S3 中,则可以提高LOAD命令性能。

Pig 0.11.1 补丁

亚马逊EMR版本的 Pig 0.11.1 包含 Apache 软件基金会提供的所有更新以及 Pig 版本 0.9.2.2 中的累积亚马逊EMR补丁。但是,Pig 0.11.1 中没有新的亚马逊EMR专用补丁。

Pig 0.9.2 补丁

Apache Pig 0.9.2 是 Pig 的维护版。亚马逊EMR团队已对亚马逊EMR版本的 Pig 0.9.2 应用了以下补丁。

修补 描述
PIG-1429

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

状态:Committed (已提交)

已在以下 Apache Pig 版本中修复:0.10

PIG-1824

支持 Jython UDF 中的导入模块。欲了解更多信息,请访问 https://issues.apache。 org/jira/browse/PIG-1824

状态:Committed (已提交)

已在以下 Apache Pig 版本中修复:0.10

PIG-2010

在分布式缓存JARs上注册的捆绑包。欲了解更多信息,请访问 https://issues.apache。 org/jira/browse/PIG-2010

状态:Committed (已提交)

已在以下 Apache Pig 版本中修复:0.11

PIG-2456

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

状态:Committed (已提交)

已在以下 Apache Pig 版本中修复:0.11

PIG-2623

Support 支持使用 Amazon S3 路径进行注册UDFs。欲了解更多信息,请访问 https://issues.apache。 org/jira/browse/PIG-2623

状态:Committed (已提交)

已在以下 Apache Pig 版本中修复:0.10、0.11

Pig 0.9.1 补丁

亚马逊EMR团队已对亚马逊EMR版本的 Pig 0.9.1 应用了以下补丁。

修补 描述
dfs 中的 Support JAR 文件和 Pig 脚本

添加对运行脚本和注册JAR存储在 HDFS Amazon S3 或其他分布式文件系统中的文件的支持。欲了解更多信息,请访问 https://issues.apache。 org/jira/browse/PIG-1505

状态:Committed (已提交)

已在以下 Apache Pig 版本中修复:0.8.0

支持 Pig 中的多个文件系统

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

状态:Not Committed (未提交)

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

添加 Piggybank 日期时间和字符串 UDFs

添加日期时间和字符串UDFs以支持自定义 Pig 脚本。欲了解更多信息,请访问 https://issues.apache。 org/jira/browse/PIG-1565

状态:Not Committed (未提交)

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

交互式的和批处理的 Pig 集群

Amazon EMR 允许您以两种模式运行 Pig 脚本:

  • 交互式

  • 批处理

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

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