Amazon EMR
Amazon EMR リリースガイド

以前の Amazon EMR の AMI バージョンの Pig アプリケーションの仕様。

サポートされている Pig のバージョン

クラスターに追加できる Pig のバージョンは、使用している Amazon EMR AMI のバージョンと Hadoop のバージョンによって決まります。次の表に、各バージョンの Pig と互換性のある AMI のバージョンおよび Hadoop のバージョンを示します。パフォーマンスの向上と新機能のメリットを受けられるように、最新バージョンの Pig を使用することをお勧めします。

Pig のインストールに API を使用する場合は、RunJobFlow の呼び出し時に Pig をクラスターにロードするステップに対する引数として --pig-versions を指定しなければ、デフォルトのバージョンが使用されます。

Pig のバージョン AMI のバージョン 設定パラメータ Pig のバージョンの詳細
0.12.0

リリースノート

ドキュメント

3.1.0 以降

--ami-version 3.1

--ami-version 3.2

--ami-version 3.3

以下のサポートが追加されています。

  • JVM 実装を使用しない UDF のストリーミング

  • ASSERT 演算子と IN 演算子

  • CASE 式

  • Pig 組み込み関数としての AvroStorage

  • 組み込み関数としての ParquetLoader と ParquetStorer

  • BigInteger 型と BigDecimal 型

0.11.1.1

リリースノート

ドキュメント

2.2 以降

--pig-versions 0.11.1.1

--ami-version 2.2

Amazon S3 に入力が存在する場合、PigStorage で LOAD コマンドのパフォーマンスを向上させます。

0.11.1

リリースノート

ドキュメント

2.2 以降

--pig-versions 0.11.1

--ami-version 2.2

JDK 7、Hadoop 2、Groovy User Defined Functions、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 のバージョンの詳細

Amazon EMR では、追加の Amazon EMR パッチが適用される場合がある特定の Pig リリースをサポートします。Amazon EMR クラスターで実行する Pig のバージョンを設定することができます。これを行う方法については、「Apache Pig」を参照してください。以下のセクションでは、Pig の各バージョン、および Amazon EMR にロードされたバージョンに適用されるパッチについて説明します。

Pig 向けパッチ

このセクションでは、Amazon EMR で使用可能な Pig バージョンに適用されるカスタムパッチについて説明します。

Pig 0.11.1.1 向けパッチ

Amazon EMR バージョンの Pig 0.11.1.1 はメンテナンスリリースで、Amazon S3 に入力が存在する場合、PigStorage で LOAD コマンドのパフォーマンスを向上させます。

Pig 0.11.1 向けパッチ

Amazon EMR バージョンの Pig 0.11.1 には、Apache Software Foundation が提供するすべての更新と Pig バージョン 0.9.2.2 からの累積 Amazon EMR パッチが含まれます。ただし、Pig 0.11.1 には Amazon EMR 固有の新しいパッチはありません。

Pig 0.9.2 向けパッチ

Apache Pig 0.9.2 は、Pig のメンテナンスリリースです。Amazon EMR チームは今までに、Amazon EMR バージョンの Pig 0.9.2 に以下のパッチを適用しています。

パッチ 説明
PIG-1429

Pig に Boolean データタイプを第 1 クラスデータタイプとして追加。詳細については、https://issues.apache.org/jira/browse/PIG-1429 を参照してください。

ステータス: コミット済み

Fixed in Apache Pig Version: 0.10

PIG-1824

Jython UDF でインポートモジュールをサポート。詳細については、https://issues.apache.org/jira/browse/PIG-1824 を参照してください。

ステータス: コミット済み

Fixed in Apache Pig Version: 0.10

PIG-2010

登録済みの JAR を分散キャッシュにバンドル。詳細については、https://issues.apache.org/jira/browse/PIG-2010 を参照してください。

ステータス: コミット済み

Fixed in Apache Pig Version: 0.11

PIG-2456

ユーザーがデフォルトの Pig ステートメントを指定できる ~/.pigbootup ファイルを追加。詳細については、https://issues.apache.org/jira/browse/PIG-2456 を参照してください。

ステータス: コミット済み

Fixed in Apache Pig Version: 0.11

PIG-2623

Amazon S3 パスを使用した UDF の登録をサポート。詳細については、https://issues.apache.org/jira/browse/PIG-2623 を参照してください。

ステータス: コミット済み

修正対象の Apache Pig のバージョン: 0.10、0.11

Pig 0.9.1 向けパッチ

Amazon EMR チームは今までに、Amazon EMR バージョンの Pig 0.9.1 に以下のパッチを適用しています。

パッチ 説明
dfs での JAR ファイルと Pig スクリプトのサポート

HDFS、Amazon S3 などの分散ファイルシステムに格納されているスクリプトの実行および JAR ファイルの登録をサポートする機能追加。詳細については、https://issues.apache.org/jira/browse/PIG-1505 を参照してください。

ステータス: コミット済み

Fixed in Apache Pig Version: 0.8.0

Pig における複数のファイルシステムのサポート

あるファイルシステムから読み取ったデータを別のファイルシステムに書き込む Pig スクリプトに対するサポートを追加。詳細については、https://issues.apache.org/jira/browse/PIG-1564 を参照してください。

ステータス: 未コミット

修正対象の Apache Pig バージョン: n/a

Piggybank の datetime および string UDF の追加

カスタムの Pig スクリプトをサポートするために datetime および string UDF を追加。詳細については、https://issues.apache.org/jira/browse/PIG-1565 を参照してください。

ステータス: 未コミット

修正対象の Apache Pig バージョン: n/a

インタラクティブおよびバッチ Pig クラスター

Amazon EMR では、Pig のスクリプトを次の 2 つのモードで実行できます。

  • インタラクティブ

  • バッチ

コンソールまたは AWS CLI を使用して長時間稼働クラスターを起動する場合、Hadoop ユーザーとして ssh を使用してマスターノードに接続し、Grunt シェルを使用して Pig スクリプトをインタラクティブに開発したり実行したりすることができます。Pig をインタラクティブに使用すると、バッチモードよりも簡単に Pig スクリプトを変更できます。インタラクティブモードで Pig スクリプトの変更が完了したら、そのスクリプトを Amazon S3 にアップロードし、バッチモードを使用してスクリプトを本稼働環境で実行できます。また、実行中のクラスターで Pig コマンドをインタラクティブに送信し、必要に応じてデータの分析や変換を行うことができます。

バッチモードでは、Pig スクリプトを Amazon S3 にアップロードし、クラスターにステップとして作業を送信します。Pig ステップは、長時間稼働クラスターまたは一時的なクラスターに送信できます。