Apache-pig-running-scripts
提供:Dev Guides
Apache Pig-スクリプトの実行
この章では、Apache Pigスクリプトをバッチモードで実行する方法について説明します。
Pigスクリプトのコメント
ファイルにスクリプトを記述しているときに、以下に示すようにコメントを含めることができます。
複数行コメント
複数行コメントは「/」で始まり、「/」で終わります。
単一行コメント
単一行コメントは「-」で始まります。
バッチモードでPigスクリプトを実行する
Apache Pigステートメントをバッチモードで実行しながら、以下の手順に従います。
ステップ1
必要なすべてのPig Latinステートメントを単一のファイルに書き込みます。 すべてのPig Latinステートメントとコマンドを単一のファイルに記述し、*。pig *ファイルとして保存できます。
ステップ2
Apache Pigスクリプトを実行します。 以下に示すように、シェル(Linux)からPigスクリプトを実行できます。
Local mode | MapReduce mode |
---|---|
$ pig -x local *Sample_script.pig * | $ pig -x mapreduce* Sample_script.pig* |
以下に示すように、execコマンドを使用してGruntシェルからも実行できます。
HDFSからPigスクリプトを実行する
HDFSにあるPigスクリプトを実行することもできます。 /pig_data/ という名前のHDFSディレクトリに Sample_script.pig という名前のPigスクリプトがあるとします。 以下に示すように実行できます。
例
次の内容のファイル student_details.txt がHDFSにあると仮定します。
同じHDFSディレクトリに sample_script.pig という名前のサンプルスクリプトもあります。 このファイルには、以下に示すように、 student 関係で操作と変換を実行するステートメントが含まれています。
- スクリプトの最初のステートメントは、 student_details.txt という名前のファイルのデータを student という名前の関係としてロードします。
- スクリプトの2番目のステートメントは、関係のタプルを年齢に基づいて降順に並べ、 student_order として保存します。
- スクリプトの3番目のステートメントは、 student_order の最初の4つのタプルを student_limit として保存します。
- 最後に、4番目のステートメントはリレーション student_limit の内容をダンプします。
次に示すように、 sample_script.pig を実行します。
Apache Pigが実行され、次の内容の出力が提供されます。