从 Java 应用程序中执行 Pig

Posted

技术标签:

【中文标题】从 Java 应用程序中执行 Pig【英文标题】:Execute Pig from within Java Application 【发布时间】:2012-02-21 10:51:31 【问题描述】:

是否可以在 Java 应用程序中运行 Apache Pig 作业,而无需派生外部进程?

Pig 和 Hadoop 似乎都是用 Java 编写的,但并不真正提供 Java API。与其依赖 shell 脚本,我更愿意在 Java Spring 应用程序中使用这些工具。

【问题讨论】:

【参考方案1】:

好像有Java API for Pig。

根据这个API,有一个PigRunner class。

这样,您可以通过创建专用的 Spring bean 轻松地将其添加到您的 Spring 应用程序中。

【讨论】:

【参考方案2】:

从我所看到的文档和示例方面来看,PigServer 类对您来说是明智的。他们在这里有使用它的例子:http://pig.apache.org/docs/r0.8.1/setup.html#Sample+Code

【讨论】:

【参考方案3】:

参见Spring Hadoop 项目及其Pig support。

【讨论】:

以上是关于从 Java 应用程序中执行 Pig的主要内容,如果未能解决你的问题,请参考以下文章

是否可以在 pig java udf 中使用 pig 内置函数

在 Java 中执行 PigServer 时出错

如何验证pig中的数据类型?

显示结果中的 Pig Udf

Pig:完成 UDF 后执行任务

Java & Pig - 是不是可以将 pig 脚本的输出转换为 Java 变量?